php:为什么cann';我不能插入数据库吗?

php:为什么cann';我不能插入数据库吗?,php,sql,database,insert,Php,Sql,Database,Insert,首先,我没有得到任何错误,但它仍然不工作。 我只想在我的表中插入。。。我也试过 mysqli_query($db, "INSERT INTO Rangliste2 (name, score) VALUES ('$text', $zahl)"); 以前,同样的,不令人满意的结果 <?php> // score speichern $zahl = $_POST["text2"]; // name speichern $text = $_POST["text1"]; if($text

首先,我没有得到任何错误,但它仍然不工作。 我只想在我的表中插入。。。我也试过

mysqli_query($db, "INSERT INTO Rangliste2 (name, score) VALUES ('$text', $zahl)");
以前,同样的,不令人满意的结果

<?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("...", "...", "...", "...");
if($db->connect_error){
    die("<pre>".$db->connect_error."</pre>");
}

$sql = $db->query("INSERT INTO Rangliste2 (name, score) VALUES ('$text', $zahl)");

//sql abfrage
$sql = $db->query("SELECT * FROM Rangliste2 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");
    }
}
?>

您是否尝试
var\u转储($\u POST)
若要查看您是否获得任何值,请检查此
值(“$text”,“$zahl)
u缺少其他变量上的
'
,您应该删除所有
@
字符(如在创建db连接时),因为该字符会抑制错误,并且会自动失败。相反,正确地处理错误将更容易调试代码。您对查询非常开放,应该使用而不是串联查询。特别是因为你根本没有逃避用户的输入!您是否已检查服务器错误日志中的潜在错误消息?请不要等待编写安全代码。1.稍后您将忘记/错过/没有时间,一些不安全的代码将进入生产。2.您需要全部重写它,因此在使用准备好的语句时会出现新的错误。3.返回并重写代码比从一开始就正确执行代码要花费更长的时间。。4.这并不完全是关于安全性的,目前,如果任何值包含
字符,您的代码将中断。5.当重写它以使用准备好的语句时,实际上可能会解决当前的错误。