【发布时间】:2019-11-23 00:53:31
【问题描述】:
当用户从 iOS 应用程序发送登录命令时,我正在尝试从数据库中检索信息。 为了测试这个功能,我手动启动我的 php 页面(例如http://www.testdatabase.com/LoginFunctions.php)并以编程方式强制用户名。
问题在于 mysqli_query 返回 NULL 值。如果我使用“or die(mysql_error()”没有任何反应。即使我使用 mysqli_num_rows 返回 1,但 $result 仍然为空。 因此,当执行 mysql_fetch_assoc 时,程序崩溃而没有显示任何错误。 任何想法?谢谢
<?php
// Create connection
$con=mysqli_connect("localhost","super","super","testdb");
// Check connection
if (mysqli_connect_errno())
{
echo "Failed to connect to MySQL: " . mysqli_connect_error();
}
$action = "login";
$username = "Peperoncino";
$response = array();
if ($action == "login")
{
$query = "SELECT psw AS pswrd,id FROM Activities WHERE nome = 'Peperoncino' LIMIT 1";
if ($result = mysqli_query($con, $query))
{
$values = mysql_fetch_assoc($result);
$password = $values['pswrd'];
$response["password"] = $password;
$response["message"] = "Get information from db";
}
else
{
echo "err";
}
echo json_encode($response);
}
// Close connections
mysqli_close($con);
?>
【问题讨论】:
-
您不能使用
mysql_error()- 使用mysqli_error($con)来获取错误。 -
而
mysql_fetch_assoc应该是mysqli_fetch_assoc。我个人更喜欢PDO而不是mysqli。