我可以'找到解决方案如何让它发挥作用。我将Mysql 4升级到Mysql 5并将PHP更改为5.2,从那时起我无法激活帐户和登录。 这段代码出了什么问题?
include_once("conn.php");
$check_num = $_GET['c'];
$exists ="SELECT * FROM registry WHERE check = '$check_num'";
$eresult = mysql_query($exists);
if (!$eresult)
{
die('<p>Error performing query: ' . mysql_error() . '</p>');
}
$row = mysql_fetch_array($eresult);
$key = $row['regkey'];
$name = $row['title'] . ' ' . $row['name'] . ' ' . $row['surname'];
$user = $row['username'];
if (mysql_num_rows($eresult) == 1)
{
$selected = mysql_query($eresult);
$sql = " UPDATE registry
SET check = 'ok'
WHERE regkey = $key";
$result = mysql_query($sql);
if (mysql_affected_rows() == 1)
{
$message = "The account $user has now been activated.";
echo "<script type=\"text/javascript\">
alert('The account $user has now been activated.');
</script>
<script>document.location.href='../index.php'</script>";
}
}
else
{
$message = "There was a problem with your check value, please try copy and pasteing the URL again. ";
}
echo $message;
?>
答案 0 :(得分:1)
没有看到任何错误消息,我猜这是因为mysql_扩展已经被弃用了一段时间了。在最近的版本中,mysql扩展已完全从默认的php安装中删除。您应该尝试使用mysqli_或PDO_扩展名。
答案 1 :(得分:0)
请添加
error_reporting(E_ALL);
ini_set("display_errors", 1);
在代码的开头告诉我们,出现了哪些错误。
有了这些附加信息,我们可能会提供更多帮助。
附加提示:如果您不仅更新了PHP / mySQL,而且例如 XAMPP ,查看新的php.ini
文件。您可能需要更改一些设置。
答案 2 :(得分:0)
检查是mysql 5中的保留字,使用反引号。
http://dev.mysql.com/doc/mysqld-version-reference/en/mysqld-version-reference-reservedwords-5-5.html
SET `check`