(Mein eigenes Frontend, ein Neuling in PHP)
Ich möchte alle fragen, warum Sie nach Erhalt der Front-End-Daten beim Einfügen in die Datenbank
schreiben müssen<code>if ($conn -> query($sql) == true){echo"插入数据库成功"}</code>
Dieser Satz erfordert, dass Daten erfolgreich eingefügt werden. Ist das nicht ein Urteil? Wenn Sie nicht urteilen, fügen Sie einfach die Daten ein
<code>$sql = "insert into yihe (name, psw) values ('$name', '$psw')";</code>
Antwortinhalt:
Ich möchte alle fragen, warum Sie nach Erhalt der Front-End-Daten beim Einfügen in die Datenbank
schreiben müssen
<code>if ($conn -> query($sql) == true){echo"插入数据库成功"}</code>
Können Sie es nicht direkt in die Datenbank einfügen????
<code>$sql = "insert into yihe (name, psw) values ('$name', '$psw')";</code>
Einige Datenbankoperationen haben Rückgabewerte wie
,
usw. Wenn die Operation erfolgreich ist, gibt sie „true“ zurück, wenn sie fehlschlägt, gibt sie „false“ zurück und führt dann basierend auf dem Ergebnis eine Operation durch des Rückgabewerts; 插入
修改
Der Fragesteller sagte, dass die Einfügung nicht erfolgreich sein wird, wenn Sie
einem Wert zuweisen, beispielsweise dem folgenden: if
$conn->query($sql)
<code>$flag = $conn->query($sql); if($flag == TRUE){ //如果返回值为TRUE 说明插入成功 否则就插入失败 echo 'nice!'; }else { echo 'error!'; } </code>
.
SQL-Anweisungen können möglicherweise nicht ausgeführt werden. Beispielsweise stürzt der Datenbankprozess plötzlich ab, der Speicher explodiert oder es besteht sogar eine hohe Parallelität (die Anzahl der MySQL-Abfragen, die ein normales Notebook pro Sekunde ausführen kann, beträgt nur ein paar Hundert, und wenn es zu viele sind, kann es nicht korrekt ausgeführt werden )
Wenn Sie Daten direkt einfügen möchten, kein Problem, schreiben Sie einfach so:
Was zum Teufel
<code>$conn->query($sql);</code>
? Auf jeden Fall ist das Schreiben auf diese Weise meistens in Ordnung und kann ausgeführt werden, aber es ist nicht standardisiert genug und birgt versteckte Gefahren. if
if
Weil das Schreiben erst dann tatsächlich ausgeführt wird, wenn
ausgeführt wird
$conn->query($sql)
Um zu bestätigen, dass das Einfügen eines Datenelements erfolgreich war, müssen zwei Bedingungen erfüllt sein:
Erstens weist die SQL-Anweisung keine Syntaxfehler auf, was sich in widerspiegelt dass query() nicht „false“ zurückgibt.
Die zweite ist 1 Zeile des betroffenen Verhaltens, das sich in „affected_rows“ gleich 1 widerspiegelt.
Andere Aktualisierungs-/Löschvorgänge und andere Schreibvorgänge sind ähnlich.