【问题标题】:How to access a website's url programmatically from within the page如何从页面内以编程方式访问网站的 url
【发布时间】:2011-02-23 09:53:15
【问题描述】:

为了工作,我正在开发一个网站,该网站有一项功能,允许用户根据他们想要向谁展示网站来制作网站的自定义实例。因此,如果他们想向他们的潜在雇主展示一些关于他们自己的信息,他们可以向他们发送一个自定义 url,它的末尾有一个 uid,它告诉数据库在网站加载时显示什么以及不显示什么。

现在,我需要能够获取 url 末尾的值,这个唯一的 uid 与他们在 db 中的偏好相对应,可在运行时访问。这意味着当有人输入此自定义 url 时,我需要能够在密码验证发生之前显示正在查看其投资组合的人的姓名...

如果我可以获取 URL,我想我可以通过它解析以找到必要的 UID...但是我如何获取 url?也许我只是在这里遗漏了一些东西,但是如果有人有任何想法或想法,将不胜感激!谢谢

抱歉,为了进一步澄清,我正在使用 PHP 来处理对数据库的调用...

【问题讨论】:

  • 你必须告诉 SO 你正在使用什么技术。阿帕奇/PHP? IIS/asp.net?答案将取决于
  • 您介意详细说明“身份验证前”部分吗?
  • 当然。只有一个密码提示,要求输入与该自定义 URL 关联的密码。登录完成后,所有信息都在那里,但登录之前是我现在正在做的事情。

标签: php html database url web-applications


【解决方案1】:

您知道动态网站技术就是这样做的吗? 它们有很多,从 URL 中获取参数相当容易。

示例:

PHP: http://www.example.com/show.php?uid=123

$_GET['uid'];

JSP: http://www.example.com/show.jsp?uid=123

request.getParameter("uid");

它们太多了,在这里列举它们是没有意义的

【讨论】:

  • 哇,这真的很容易。你能说我是初学者吗?感谢您的帮助!
【解决方案2】:

如果你使用的是服务器端语言,你可以很容易地获取url的任何部分,例如在php中,可以通过$_GET数组和其他数组来获取。如果你想用javascript,你可以这样做:

JS 示例:

var url_array = document.location.href.split('/');
echo url_array[0]; // part one
echo url_array[1]; // part two
echo url_array[2]; // part three

您甚至可以通过以下方式获得主机部分:

alert(document.location.host);

PHP 示例:

www.mysite.com?id=100

echo $_GET['id'];

【讨论】:

    【解决方案3】:

    这取决于您使用的语言,但通常 URL 末尾的 uid 将作为请求参数传递,如下所示:

    www.mysite.com/info?uid=dkafdojoapjdopakd
    

    然后您可以使用请求参数在您的代码中访问它。因此,在 PHP 中,它将是:

    $uid = $_GET['uid'];
    
    // get the appropriate data for this uid, write out the page contents, etc.
    

    【讨论】:

      【解决方案4】:

      首先将每个用户的偏好存储为html样式标签中的一段css

      +-----------+---------------+
      | UID       | style         |
      +-----------+---------------+
      | 0z65dbr   | <style>h1{    |
      |           |  font-family: | 
      |           |  arial,       |
      |           |  sans-serif   |
      |           | }</style>     |
      +-----------+---------------+
      

      然后在 url 中设置 get 变量 'uid' 例如。 www.example.com/page?uid=0z65dbr 您可以使用$_GET['uid']从php中的uid变量中提取值并将此值传递给您的sql查询:

      $sql = "SELECT style FROM styles WHERE UID = '".mysql_real_escape_string($_GET['uid'])."'";
      

      然后在把执行查询的结果放到html的head部分中。

      【讨论】:

        猜你喜欢
        • 2020-11-14
        • 2016-01-28
        • 1970-01-01
        • 2014-07-29
        • 1970-01-01
        • 1970-01-01
        • 2014-08-11
        • 2016-11-09
        • 1970-01-01
        相关资源
        最近更新 更多