我在同一个数据库中创建了第二个表,但是这一次,我得到了错误:警告:mysqli_fetch_assoc()期望参数1是mysqli_result,boolea在......第30行给出 我是php的新手。 期望的结果:如果名称尚不存在则为新条目;如果新分数较高,则为其他情况下的更新
<?php>
// score speichern
$zahl = $_POST["text2"];
// name speichern
$text = $_POST["text1"];
if($text == null){
echo("Keinen Text empfangen.");
}
// verbindung zu db herstellen
$db = @new mysqli("mysql.hostinger.de", "u465976419_k", "8o3SCoZLzh36", "u465976419_k");
if($db->connect_error){
die("<pre>".$db->connect_error."</pre>");
}
$num = $sql->num_rows; // anzahl der Datensätze
#mysqli_query($db, "DELETE FROM Rangliste2 WHERE name = 'a'");
$neuezahl = FALSE;
$existiertkleiner = FALSE;
$existiert = FALSE;
// neuen sql eintrag
if($zahl != null){
//$namen = mysqli_query($db, "SELECT name FROM Rangliste2");
$nameexistiert = mysqli_fetch_assoc(mysqli_query($db, "SELECT score FROM Rangliste2 WHERE name='$text'"));
$dbscore= $nameexistiert['score'];
if($dbscore>0){
if($zahl>$dbscore){
mysqli_query($db, "DELETE FROM Rangliste2 WHERE name = '$text'");
mysqli_query($db, "INSERT INTO Rangliste2 (name, score) VALUES ('$text', $zahl)");
}
}else{ //neuer eintrag eines neuen spielers
mysqli_query($db, "INSERT INTO Rangliste2 (name, score) VALUES ('$text', $zahl)");
}
}
//sql abfrage
$sql = $db->query("SELECT * FROM Rangliste2y ORDER BY score DESC");
$num = $sql->num_rows; // anzahl der Datensätze
if($num > 0){
while($row = $sql->fetch_object()){
echo ("$row->name: $row->score\n");
}
}
?>
第一个.php脚本是一样的。只有'Rangliste'而不是'Rangliste2'这两张桌子...... 一个人怎么能给我一个错误,而另一个工作得很好? 请帮助,我感谢每一个答案。
答案 0 :(得分:2)
两个变量$ nameexistiert的表名有错误。
SELECT score FROM Rangliste2
和$ sql SELECT * FROM Rangliste2y
y在这里是额外的