PHP mysqli_fetch_assoc()函数在同一PHP文件有效时返回NULL

时间:2018-11-24 09:19:19

标签: php mysql json mysqli null

我现在已经花了一天时间,但是我无法解决以下问题。 我有这段代码可以访问我的数据库,我想获取一些值。 奇怪的是,相同的代码适用于同一目录中同一服务器上的同一php文件。 我想用一个不同的sql选择创建一个新的php文件,但是这个总是返回null而不是json数组。

任何有帮助的建议都将非常有用! 我正在运行wordpress网站,也许那是一个重要信息。

<?php
if( isset( $_POST[user_id] ) )
{
    $user_id = $_POST[user_id];

    $servername = "****";
    $username = "****";
    $password = "****";
    $dbname = "****";

    // Create connection
    $conn = new mysqli($servername, $username, $password, $dbname);

    // Check connection
    if ($conn->connect_error) {
        die("Connection failed: " . $conn->connect_error);
    } 
    //echo "Connected successfully";
    //echo $user_id;


    $sql = "SELECT *
    FROM felderkonfig
    WHERE felderkonfig_user_id = '$user_id' ";

    $result = mysqli_query($conn, $sql);    //sql abfrage in array speichern
    $myArray = array();
    $myArray =mysqli_fetch_assoc($result);  //umwandeln in assoziatives array

    echo json_encode($myArray);     //echo als json array


    $conn->close();
    exit(); 
}else{
    echo "Fehler bei if isset";     
}
?>

2 个答案:

答案 0 :(得分:0)

您应该将此文件包含在首选的php文件中,就像您想连接数据库的位置一样

<?php include 'connect.php' ?>

connect.php文件中的连接设置应与您在排除的selct查询中提到的连接设置类似

答案 1 :(得分:0)

我不知道为什么,但是代码在起作用。行为很奇怪,也许有一些服务器端问题,但我不知道。如果有人能告诉我如何使以下代码更安全,那将是很好的。非常感谢。

<?php
if( isset( $_POST[virtuellesdepot_id] ) )
{
    $virtuellesdepot_id = $_POST[virtuellesdepot_id];

    $servername = "****";
    $username = "****";
    $password = "****";
    $dbname = "****";

    // Create connection
    $conn = new mysqli($servername, $username, $password, $dbname);

    // Check connection
    if ($conn->connect_error) {
        die("Connection failed: " . $conn->connect_error);
    } 
    //echo "Connected successfully";

    //echo $user_id;


    $sql = "SELECT * FROM virtuelledepots ";   

    $result = mysqli_query($conn, $sql);    //sql abfrage in array speichern
    $myArray = array();
    $myArray = mysqli_fetch_assoc($result); //umwandeln in assoziatives array


    echo json_encode($myArray);     //echo als json array


    $conn->close();
    exit(); 
}else{
    echo "Fehler bei if isset"; 
}
?>