MySQLi Query不向我的数据库提交数据

时间:2013-11-01 03:03:00

标签: php mysqli

我遇到了MySQLI我正在尝试提交的查询问题,但没有报告任何错误,并且绝对没有发生任何事情。我已经尝试了多种方法来修复,什么都没有。

代码:

$IP = $_SERVER['REMOTE_ADDR'];
$ISP = GetISP($IP);
$Referrer = DetermineReferrer();
$Browser = GetBrowser();
$OS = GetOS();
$Time = Date("F/j/Y, g:i a");

If($IP){
    mysqli_query($Connection, "INSERT INTO tracker (ip, isp, referrer, browser, os, time)
                               VALUES ('mysqli_real_escape_string($IP)',    
                                       'mysqli_real_escape_string($ISP)',
                                       'mysqli_real_escape_string($Referrer)',
                                       'mysqli_real_escape_string($Browser)',
                                       'mysqli_real_escape_string($OS)',
                                       'mysqli_real_escape_string($Time)')");
}

mysqli_close($Connection);
?>

If($IP)实际上是临时测试;那就是我要检查数据库中是否已存在IP,如果可能的话,你可以引导我走上这条路吗?

我感谢所有反馈,无论是消极的还是积极的,它仍然可以提供帮助。

编辑:我将提供连接脚本,虽然它不应该是一个错误会显示的问题

<?php
Define('Host', 'localhost');
Define('Username', 'username');
Define('Password', 'password');
Define('Database', 'database name');

$Connection = mysqli_connect(Host, Username, Password, Database);
?>

出于好奇,在研究时我看到了一些关于使用SET而不是VALUES的东西。这可能与此有关吗?

2 个答案:

答案 0 :(得分:3)

如果要使用函数调用来构造字符串,则需要使用连接。

mysqli_query($Connection, "INSERT INTO tracker (ip, isp, referrer, browser, os, time)
                           VALUES ('".mysqli_real_escape_string($Connection,$IP)."',    
                                   '".mysqli_real_escape_string($Connection,$ISP)."',
                                   '".mysqli_real_escape_string($Connection,$Referrer)."',
                                   '".mysqli_real_escape_string($Connection,$Browser)."',
                                   '".mysqli_real_escape_string($Connection,$OS)."',
                                   '".mysqli_real_escape_string($Connection,$Time)."')");

答案 1 :(得分:1)

我解决了问题(并认为这是最好的回应方式。)

显然,在我的查询中我需要这样做:

$Query = mysqli_query($Connection, "INSERT INTO `tracker` (`ip`, `isp`, `referrer`, `browser`, `os`, `time`) VALUES ('$IP', '$ISP', '$Referrer', '$Browser', '$OS', '$Time')");

就像这样,代码正在提交我的IP,并在页面上返回1。

感谢所有帮助过的人,我很感激。