Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/mysql/65.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
警告:mysqli_fetch_object()希望参数1是mysqli_结果,在第12行的C:\xampp\htdocs\index.php中给出null_Php_Mysql - Fatal编程技术网

警告:mysqli_fetch_object()希望参数1是mysqli_结果,在第12行的C:\xampp\htdocs\index.php中给出null

警告:mysqli_fetch_object()希望参数1是mysqli_结果,在第12行的C:\xampp\htdocs\index.php中给出null,php,mysql,Php,Mysql,我可能会得到几张反对票,这可能不是你想要的答案,因为它在PDO中,但请使用此代码,看看它是如何为你工作的: <?php if(isset($_GET["vorname"]) && !empty($_GET["vorname"])){ $query2=$db->query("UPDATE userdaten SET material = '".$_GET["vorname"]." 'WHERE user_id = '".$id."'"); $sql =

我可能会得到几张反对票,这可能不是你想要的答案,因为它在PDO中,但请使用此代码,看看它是如何为你工作的:

<?php
if(isset($_GET["vorname"]) && !empty($_GET["vorname"])){
    $query2=$db->query("UPDATE userdaten SET material = '".$_GET["vorname"]." 'WHERE user_id = '".$id."'");
    $sql = "SELECT vorname , nachname 
            FROM members, material 
            WHERE user_id = ' ".$id."'
              AND material_id = '".$_GET["vorname"]."'";
}

$result = mysqli_query($sql);

echo "<table class='auswahl'>";
if($ausgabe = mysqli_fetch_object($result)){
    echo "<tr>";
    echo "<td>".$members->vorname."</td>";
    echo "<td>".$members->nachname."</td>";
    echo "</tr>\n";
}
echo "</table></p>";

?>


还有我的朋友,为什么你用
$\u GET
而不是
$\u POST

即使我在这里没有看到任何问题

当未设置
$\u GET[“vorname”]
时,您仍将执行
mysqli\u查询($sql)
,其中
$sql
将为
null
(因此,
$result
也将为
null


您还应该进行一些错误处理(使用
mysqli_error()
检查错误),并考虑变量
$id
$members
的来源,因为这将是您的下一个问题。

来自localhost的总查询始终是o,oooooo秒。我不知道你的“问题”是什么。学习如何设置问题的格式。我是新来的,但没问题。要从本地主机返回数据,我收到上面的标题作为错误。我的总查询时间始终为0.00000秒。//错误行->如果($ausgabe=mysqli\u fetch\u object($result)),我将首先将其添加到脚本的最顶端:
ini\u set('display\u errors',1);ini设置(“显示启动错误”,1);错误报告(E_全部);mysqli_报告(mysqli_报告错误| mysqli_报告严格)。。。这会有帮助的。也许;)谢谢jeanPaul:D我正在使用$\u GET函数,因为变量需要放在已经存在的url文件中,但会尝试发布。谢谢你。你是想发到同一个文件吗?意思是你在使用
$\u POST
$\u GET
from file.php@Richidifferent文件,但指向同一url(提供程序)。我需要编辑一些文件并将其放在一个已经存在的url中。我的主管和我已经解决了这个问题。非常感谢:D。
<?php
    $servername = "localhost";
    $username = "username";
    $password = "password";
    $dbname = "myDBPDO";

    try {
        $conn = new PDO("mysql:host=$servername;dbname=$dbname", $username, $password);
        // set the PDO error mode to exception
        $conn->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION);
    } catch(PDOException $e) {
        echo "Connection failed: " . $e->getMessage();
    }

    if (isset($_POST["vorname"]) && !empty($_POST["vorname"])) {
        $stmt = $conn->prepare("UPDATE userdaten SET material = :material WHERE user_id = :user_id");
        $stmt->bindParam(':material', $material);
        $stmt->bindParam(':user_id', $user_id);
        $material = $_POST['material'];
        $user_id = $_POST['user_id'];
        if ($stmt->execute()) {
            $stmt_members = $conn->prepare("SELECT vorname, nachname FROM members, material WHERE user_id = :user_id AND material_id = :material_id");
            $stmt_members->bindParam(':user_id', $user_id);
            $stmt_members->bindParam(':material_id', $material_id);
            $user_id = $_POST['user_id'];
            $material_id = $_POST['material_id'];
            if ($stmt_members->execute()) {
                echo "<table class='auswahl'>";
                while ($row_members = $stmt_members->fetch()) {
                    echo "<tr>";
                    echo "<td>".$row_members['vorname']."</td>";
                    echo "<td>".$row_members['nachname']."</td>";
                    echo "</tr>\n";    
                }
                echo "</table></p>";
            }
        }
    }

    $conn = null;
?>