我遇到了问题,而且我自己也无法解决这个问题。
基本上我尝试做的是,调用带有2个参数的PHP脚本:username
和subscriptionid
。
PHP脚本应该通过名为“user”的表中的用户名读出userid。然后,在另一个名为subscriptionlog
的表中,检查用户标识是否存在,如果是,请查看他是否有subscriptionid
条目。如果是这样,请打印出该表的“状态”变量。
这是我的代码:
<?php
// checkkey.php?user=ZeD&subid=2 -> Called as GET
$servername = "localhost";
$username = "username";
$password = "password";
$dbname = "database";
$uname = $_GET["user"];
$subid = $_GET["subid"];
// Create connection
$conn = new mysqli($servername, $username, $password, $dbname);
// Check connection
if ($conn->connect_error) {
die("Connection failed: " . $conn->connect_error);
}
$sql = "SELECT status FROM subscriptionlog WHERE subscriptionid = '$subid' AND userid = (SELECT userid FROM user WHERE username = '$uname')";
$result = mysqli_query( $sql );
if( $result === false )
echo( "error with bitch sql" );
while( $row = mysqli_fetch_assoc( $result ) )
{
echo $row["status"];
}
$conn->close();
?>
它只是让页面空白,根本没有发生回声。
答案 0 :(得分:1)
尝试在页面顶部添加:
error_reporting(E_ALL);
ini_set("display_errors", 1);
这样你就可以看出是否有任何错误。
答案 1 :(得分:1)
这可能是您的问题,您在sql语句
中缺少结尾)
$sql = "SELECT status FROM subscriptionlog WHERE subscriptionid = '$subid' AND userid = (SELECT userid FROM user WHERE username = '$uname')";
您的查询调用应该如下所示,$conn
作为第一个参数
mysqli_query( $conn, $sql );
答案 2 :(得分:0)
我认为您可能需要检查NULL而不是0
if ($result === NULL) { echo "My result is null" };