繁体   English   中英

PHP mysqli脚本错误500

[英]PHP mysqli script error 500

我有此脚本连接我的数据库,使用它时出现错误500。

我试图跟踪错误在哪里,我认为这是在这一行: while ($row = $stmt->fetch_assoc())

但是我看了一些例子,它也是我的例子。

这是我的代码,感谢您的帮助:

<?php


    $mysqli = new mysqli(*MY DB DETAILS*);

    if (mysqli_connect_errno()) {
    printf("Connect failed: %s\n", mysqli_connect_error());
    exit();
   }

     $sql = "SELECT * FROM comments WHERE workout_name =? AND user =?"; 

    $stmt = $mysqli->prepare($sql) or trigger_error($mysqli->error."[$sql]");

    $stmt->bind_param('ss', $workout_name, $user);

    $workout_name = $_GET['workout_name'];
    $user = $_GET['user'];

    $stmt->execute();

    if ($stmt) 
    {
        while ($row = $stmt->fetch_assoc()) 
    {
        $response["name"] = $row["workout_name"];
        echo json_encode($response);
    }

            $response["success"] = 1;

            // echoing JSON response
            echo json_encode($response);
    }

    else
    {
        $response["success"] = 2;

            // echoing JSON response
         echo json_encode($response);
    }

?>

更新:

我必须更改$row = $stmt->fetch_assoc()

如此处所述:

如何在获取assoc数组时消除致命错误

在做这行之前

$stmt->bind_param('ss', $workout_name, $user);

您必须设置$ workout_name和$ user包含一个值。 例如

$workout_name = 'pumping iron';
$user = 'Arnold Schwarzenegger';
$stmt->bind_param('ss', $workout_name, $user);

就您而言,您甚至还没有创建这些变量。 我假设您收到了500错误,因为mysqli代码变得很糟糕,试图查找不存在的变量以从中加载数据。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM