当我在本地测试它时,它运行得很好,但在尝试使用远程mysql服务器后,它开始抛出错误。我想不出的主要问题是
"分析错误:语法错误,G:''wamp''www''OnlineBank''bank.php第92行出现意外T_STRING">
$query = "SELECT user_name FROM Customers";
$result = mysql_query($query);
(--> line 92) while ($row = mysql_fetch_array($result) or die mysql_error())
{
if ($username == $row['user_name'])
{
echo "<script>alert('User name is taken')</script>";
...
}
据我所知,错误通常是针对未标注的引号之类的内容,我只是不明白为什么会在这里发生,我们非常感谢您的帮助。
这个特殊的解析错误源于您需要将die
的参数括在括号中:
or die(mysql_error())
其他答案触及了代码中可能错误的其他点。
我怀疑这是否有效;错误是由while条件内的CCD_ 2引起的。把它移到上面的行,就像一样
$result = mysql_query($query) or die mysql_error();
使用mysql_fetch_array((时不会出现(与mysql相关的(错误,因此检查在那里毫无意义。
如果您坚持将其保持在while条件下,则必须使用括号->die( mysql_error() )
while ($row = mysql_fetch_array($result) or die mysql_error())
首先,在这种情况下,您不需要调用mysql_error()
。如果mysql_query()
返回FALSE
:,您所要做的就是调用它
$query = "SELECT user_name FROM Customers";
$result = mysql_query($query);
if( $result==false ){
die(mysql_error());
}
此外,mysql_fetch_array()
每次到达从MySQL检索的元素集的末尾时都返回FALSE
。所以,按照通常的方式,您不需要在这个循环中使用or die mysql_error()
。