【问题标题】:insert click_url, timestamp and username when user clicks a link当用户点击链接时插入 click_url、时间戳和用户名
【发布时间】:2023-04-04 13:01:01
【问题描述】:

我将有一个由图像组成的菜单,这些图像根据用户上次访问后是否添加了新记录而有所不同。

但是我决定放弃这个想法,我现在打算将点击链接上的最后一个时间戳与新记录上的时间戳进行比较。

我试图找到一个解决方案,但我现在卡在这条线上,也许你可以看到它有什么问题(点击是我要存储点击的表格):

$sql = "insert into clicks (username, link_url, click_timestamp) values ($_SESSION[$username], "http://$_SERVER[HTTP_HOST]$_SERVER[REQUEST_URI]", now())";
$result=mysql_query($sql);

那么,有人有什么好主意吗? :)

【问题讨论】:

    标签: php mysql logging hyperlink insert


    【解决方案1】:

    你的 SQL 语法有错误,试试这个:

    $sql = 'INSERT INTO clicks (username, link_url, click_timestamp) VALUES
            ("' . $_SESSION[$username] . '",  
             "http://' . $_SERVER['HTTP_HOST'] . $_SERVER['REQUEST_URI'] . '", 
              NOW()
            )';
    

    【讨论】:

    • 谢谢,除了用户名没有记录外,它可以工作,你知道为什么吗?
    • 好的,现在可以了!这就是它现在的样子: $username = $_SESSION['username']; $sql = 'INSERT INTO clicks (username, link_url, click_timestamp) VALUES ("'. $username .'", "http://' . $_SERVER['HTTP_HOST'] . $_SERVER['REQUEST_URI'] .'" , 现在() )'; $result=mysql_query($sql);
    【解决方案2】:

    检查那个字符串。据我所知,PHP 可以解析字符串中的普通变量,但无法解析数组,因此在这种情况下,$_SESSION 应该位于字符串之外。此外,如果您想在字符串中添加引号,请在其前面使用反斜杠,例如 \",这样它将被解释为引号字符而不是字符串的结尾。

    【讨论】:

      猜你喜欢
      • 2014-08-13
      • 2011-03-30
      • 1970-01-01
      • 2023-04-06
      • 2019-10-29
      • 2015-01-13
      • 2012-03-14
      • 2010-11-19
      • 2014-01-28
      相关资源
      最近更新 更多