Fügen Sie Daten in die MySql DB ein und zeigen Sie an, ob das Einfügen erfolgreich oder fehlgeschlagen ist

7

Ich füge Daten in eine MySQL DB ein, falls das Einfügen fehlschlägt, muss ich eine entsprechende Fehlermeldung geben, die das anzeigt. Gemäß meinem Code unten werde ich Echo-ing die Nachricht Inserted sein, wenn die Einfügung Erfolg oder Misserfolg war.

Was ich tun möchte, ist, die Inserted -Nachricht nur dann wiederzugeben, wenn die Dateneinfügung erfolgreich ist, und% cc_de% zurückzugeben, wenn sie fehlschlägt. Wie kann ich meinen Code ändern, um dies zu tun?

%Vor%     
sharon Hwk 25.07.2012, 12:52
quelle

5 Antworten

26
%Vor%     
Kode Plus 25.07.2012, 12:54
quelle
3

Nach INSERT query können Sie mit ROW_COUNT() prüfen, ob die Operation zum Einfügen erfolgreich ist:

%Vor%     
Omesh 25.07.2012 12:55
quelle
2

Überprüfen: Ссылка

    
Viskovic 25.07.2012 12:57
quelle
2

Laut dem Buch PHP und MySQL für dynamische Websites (4. Auflage)

Beispiel:

%Vor%

Für einfache Abfragen wie INSERT , UPDATE , DELETE usw. (die keine Datensätze zurückgeben), die Variable $r - kurz für result-wird entweder TRUE oder FALSE sein, abhängig davon, ob die Abfrage erfolgreich ausgeführt wurde.

Beachten Sie, dass "erfolgreich ausgeführt" bedeutet, dass es ohne Fehler ausgeführt wurde; es bedeutet nicht, dass die Ausführung der Abfrage notwendigerweise das gewünschte Ergebnis hatte; Sie müssen dafür testen.

Wie testen?

Während die Funktion mysqli_num_rows() die Anzahl der von einer SELECT -Abfrage generierten Zeilen zurückgibt, gibt mysqli_affected_rows() die Anzahl der von INSERT UPDATE oder DELETE Abfrage. Es wird so verwendet:

%Vor%

Im Gegensatz zu mysqli_num_rows() ist das einzige Argument der Funktion die Datenbankverbindung ( $ dbc ), nicht die Ergebnisse der vorherigen Abfrage ( $ r ).

    
Timeless 21.01.2015 08:33
quelle
1
%Vor%

Obwohl du or die(mysql_error()) hast, wird es mysql_error () auf dem Bildschirm anzeigen, wenn es fehlschlägt. Sie sollten das wahrscheinlich entfernen, wenn es nicht das gewünschte Ergebnis

ist     
mlishn 25.07.2012 12:55
quelle

Tags und Links