【问题标题】:get current URL and previous URL when user pushes button用户按下按钮时获取当前 URL 和上一个 URL
【发布时间】:2011-11-19 22:22:14
【问题描述】:

这里是新手。

谁能给我看一个执行以下操作所需的代码示例:

用户在我的网站上按下了一个按钮(没有信息供他输入,也没有表格,他只是单击一个按钮)。我在另一篇文章中找到了以下代码,但不知道它是否正确(我也遇到了语法错误):

<form action="php_file.php"><input type="submit" value="Click"></form> 

上述代码的作者说“将您的PHP代码插入文件php_file.php并单击按钮,您的文件将被打开。插入标题(“位置:html_file.html”);在你的末尾php-file 以返回页面。”

此按钮的单击需要激发编程以获取当前 URL 和以前的 URL 并将它们插入到我服务器上的 mysql 数据库中。我有“PHP_SELF”和“HTTP_REFERER”,但仍然需要将结果导入mysql。

如果可能的话,我想只使用 html、PHP 和 mysql 来完成这项工作。

感谢大家的帮助!

【问题讨论】:

  • 你可以使用 jQuery 吗?
  • 在 JavaScript 中,window.location.href 是当前 url,document.referrer 是前一个 url。在这里查看我的答案,例如使用推荐人:stackoverflow.com/questions/7465940/…
  • @Justin Satyr,谢谢,但如果可能的话,我想尝试用 html 和 PHP 来做。有什么想法吗?

标签: php mysql html database url


【解决方案1】:

使用 PHP,您可以使用 cookie 会话来管理它,您需要做的第一件事是启动会话,然后定义存储 URL 信息的空间,例如:$_SESSION["url"]

session_start();
$_SESSION["url"]=$_SERVER['REQUEST_URI'];

无论何时你想去那个特定的页面,添加标题:

header('location: ' .$_SESSION["url"]. '');

【讨论】:

    【解决方案2】:

    如果您的第一个文件恰好是 PHP 文件,请在此处编写此 HTML 表单。

    <form action="php_file.php" method="POST">
      <input type="hidden" name="previous" value="<?=urlencode($_SERVER['REQUEST_URI'])?>">
      <input type="submit" value="Click">
    </form>
    

    然后在php_file.php中

    <?
    $current  = $_SERVER['REQUEST_URI'];
    $previous = $_POST['previous'];
    

    虽然这两个变量将只包含部分 url,但没有主机名、模式和可能的端口。通常就足够了,但是如果您需要这些缺少的部分,则必须手动添加它们。

    至于将信息写入数据库和特定的 PHP 语法规则,你必须自己找一个教程,因为这个网站致力于回答问题,而不是在线教育,也不是免费做某人的工作。

    【讨论】:

    • 嗨,弹片上校,谢谢,但我遇到了语法错误,因此没有输出。
    • 我不想变得聪明。我在问您上面共享的代码中的语法错误可能是什么,是否可以修复它们?
    • 没有语法错误。但是有一些 PHP 语法需要遵循和学习
    • 我有一个完整的 PHP 页面,没有语法错误,所以我认为对于一个被承认的新手来说,我现在做得相当不错。我错过了什么?你的有什么不同?为什么你的表单会产生两个语法错误?
    • 它是HTML表单,所以应该先从PHP中转义
    【解决方案3】:

    当前:

    $currentUrl = $_SERVER["PHP_SELF"];
    

    上一个:

     $previousUrl = $_SERVER['HTTP_REFERER'];
    

    请注意,某些用户可能设置了浏览器偏好设置,以防止设置 $_SERVER['HTTP_REFERER'],因此它可能会返回为空。

    【讨论】:

    • 谢谢,我已经看过这些代码行,但我需要知道如何让用户单击按钮以让 PHP 开始运行它们。
    猜你喜欢
    • 2017-06-29
    • 2013-11-17
    • 1970-01-01
    • 2019-08-11
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2013-02-05
    • 1970-01-01
    相关资源
    最近更新 更多