Latest web development tutorials
×

PHP Kurs

PHP Kurs PHP Kurze Einführung PHP installieren PHP Grammatik PHP Variable PHP echo/print PHP Datentypen PHP Konstante PHP Schnur PHP Die Betreiber PHP If...Else PHP Switch PHP Feld PHP Sortieren eines Array PHP Superglobals PHP While Verkehr PHP For Verkehr PHP Funktion PHP Magische Variablen PHP Namespaces PHP Objektorientiert

PHP Form

PHP Form PHP Formularauthentifizierung PHP Form - Erforderliche Felder PHP Form - Überprüfung E-Mail und URL PHP Komplette Formularinstanz PHP $_GET Variable PHP $_POST Variable

PHP Erweiterte Tutorial

PHP Mehrdimensionale Arrays PHP Datum PHP enthalten PHP Datei PHP Datei-Upload PHP Cookie PHP Session PHP E-mail PHP Sicherheit E-mail PHP Error PHP Exception PHP Filter PHP Erweiterte Filter PHP JSON

PHP 7 Neue Funktionen

PHP 7 Neue Funktionen

PHP Datenbank

PHP MySQL Kurze Einführung PHP MySQL Verbindung PHP MySQL Erstellen einer Datenbank PHP MySQL Erstellen Sie eine Datentabelle PHP MySQL einfügen von Daten PHP MySQL Legen Sie mehrere Daten PHP MySQL Prepared Statements PHP MySQL Lesen Sie Daten PHP MySQL WHERE PHP MySQL ORDER BY PHP MySQL UPDATE PHP MySQL DELETE PHP ODBC

PHP XML

XML Expat Parser XML DOM XML SimpleXML

PHP & AJAX

AJAX Kurze Einführung AJAX PHP AJAX Datenbank AJAX XML AJAX Echtzeitsuche AJAX RSS Reader AJAX Abstimmung

PHP Referenzhandbuch

PHP Array PHP Calendar PHP cURL PHP Date PHP Directory PHP Error PHP Filesystem PHP Filter PHP FTP PHP HTTP PHP Libxml PHP Mail PHP Math PHP Misc PHP MySQLi PHP PDO PHP SimpleXML PHP String PHP XML PHP Zip PHP Timezones PHP Bildverarbeitung PHP RESTful

PHP MySQL einfügen mehrere Daten

Verwenden Sie MySQLi und PDO MySQL mehrere Daten einfügen

mysqli_multi_query () Funktion wird verwendet, um mehrere SQL-Anweisungen ausführen.

Die folgenden Beispiele sind zu "MyGuests" Tabelle drei neue Datensätze hinzugefügt:

Beispiele (MySQLi - Object Oriented)

<? Php
$ Servername = "localhost";
$ Username = "username";
$ Password = "Passwort";
$ DBNAME = "myDB";

// Verknüpfung erstellen
$ Conn = new mysqli ($ Servername, $ username, $ password, $ dbname);
// Links prüfen
if ($ conn-> connect_error) {
die ( "Verbindung fehlgeschlagen:" $ conn-> connect_error.);
}

$ Sql ​​= "INSERT INTO MyGuests (Vorname, Nachname, E-Mail)
VALUES ( 'John', 'Doe "," [email protected]'); ";
$ Sql. = "INSERT INTO MyGuests (Vorname, Nachname, E-Mail)
VALUES ( 'Mary', 'Moe', '[email protected]'); ";
$ Sql. = "INSERT INTO MyGuests (Vorname, Nachname, E-Mail)
VALUES ( 'Julie', 'Dooley', '[email protected]') ";

if ($ conn-> multi_query ($ sql) === TRUE) {
echo "Der neue Datensatz wird erfolgreich eingeführt";
} Else {
. Echo "Fehler:" $ sql "<br>" $ conn-> Fehler; ..
}

$ Conn-> close ();
?>

Note Beachten Sie, dass jede SQL-Anweisung müssen durch ein Semikolon getrennt werden.

Beispiele (MySQLi - prozessorientiert)

<? Php
$ Servername = "localhost";
$ Username = "username";
$ Password = "Passwort";
$ DBNAME = "myDB";

// Verknüpfung erstellen
$ Conn = mysqli_connect ($ Servername, $ username, $ password, $ dbname);
// Links prüfen
if (! $ conn) {
die ( "Verbindung fehlgeschlagen:" mysqli_connect_error ().);
}

$ Sql ​​= "INSERT INTO MyGuests (Vorname, Nachname, E-Mail)
VALUES ( 'John', 'Doe "," [email protected]'); ";
$ Sql. = "INSERT INTO MyGuests (Vorname, Nachname, E-Mail)
VALUES ( 'Mary', 'Moe', '[email protected]'); ";
$ Sql. = "INSERT INTO MyGuests (Vorname, Nachname, E-Mail)
VALUES ( 'Julie', 'Dooley', '[email protected]') ";

if (mysqli_multi_query ($ conn, $ sql)) {
echo "Der neue Datensatz wird erfolgreich eingeführt";
} Else {
. Echo "Fehler:" $ sql "<br>" mysqli_error ($ conn); ..
}

mysqli_close ($ conn);
?>


Beispiele für (PDO)

<? Php
$ Servername = "localhost";
$ Username = "username";
$ Password = "Passwort";
$ DBNAME = "myDBPDO";

try {
$ Conn = new PDO ( "mysql: host = $ servername; dbname = $ dbname", $ username, $ password);
// Stellen Sie den PDO-Fehler-Modus Ausnahme
$ Conn-> setAttribute (PDO :: ATTR_ERRMODE, PDO :: ERRMODE_EXCEPTION);

// Transaktion starten
$ Conn-> begintransaction ();
// SQL-Anweisung
$ Conn-> exec ( "INSERT INTO MyGuests (Vorname, Nachname, E-Mail)
VALUES ( 'John', 'Doe "," [email protected]') ");
$ Conn-> exec ( "INSERT INTO MyGuests (Vorname, Nachname, E-Mail)
VALUES ( 'Mary', 'Moe', '[email protected]') ");
$ Conn-> exec ( "INSERT INTO MyGuests (Vorname, Nachname, E-Mail)
VALUES ( 'Julie', 'Dooley', '[email protected]') ");

// Die Transaktion Commit
$ Conn-> commit ();
echo "Der neue Datensatz wird erfolgreich eingeführt";
}
catch (PDOException $ e)
{
// Wenn das Rollback schlägt fehl
$ Conn-> Rollback ();
.. Echo $ sql "<br>" $ e-> getMessage ();
}

$ Conn = null;
?>



Verwenden Sie vorbereitete Anweisungen

mysqli-Erweiterung stellt eine zweite Möglichkeit, Aussagen einzufügen.

Wir bereiteten Aussagen und gebunden Parameter.

MySQL-Erweiterung kann ohne eine Anweisung oder Abfrage an die MySQL-Datenbank Daten zu übertragen. Sie können auf die Spalten oder "binden" Variablen zuordnen.

Beispiele (MySQLi mit Prepared Statements)

<? Php
$ Servername = "localhost";
$ Username = "username";
$ Password = "Passwort";
$ DBNAME = "myDB";

// Verbindung erstellen
$ Conn = new mysqli ($ Servername, $ username, $ password, $ dbname);
// Test-Verbindung
if ($ conn-> connect_error) {
die ( "Verbindung fehlgeschlagen:" $ conn-> connect_error.);
} Else {
$ Sql ​​= "IN MyGuests VALUES INSERT (,, ???)";

// Um ​​mysqli_stmt_prepare () Initialisierung Anweisung Objekte
$ Stmt = mysqli_stmt_init ($ conn);

// Prepared Statements:
if (mysqli_stmt_prepare ($ stmt, $ sql)) {
// Bind Parameter
mysqli_stmt_bind_param ($ stmt, 'sss', Vorname $, $ name, $ email);

// Parameter einstellen und ausführen
$ Vorname = 'John';
$ Nachname = 'Doe';
$ E-Mail = '[email protected]';
mysqli_stmt_execute ($ stmt);

$ Vorname = 'Mary';
$ Nachname = 'Moe';
$ E-Mail = '[email protected]';
mysqli_stmt_execute ($ stmt);

$ Vorname = 'Julie';
$ Nachname = 'Dooley';
$ E-Mail = '[email protected]';
mysqli_stmt_execute ($ stmt);
}
}
?>

Wir können in dem obigen Beispiel sehen modular mit dem Problem fertig zu werden. Wir können einen Code-Block für das Lesen zu vereinfachen und das Management erstellen.

Hinweis gebunden Parameter. Lassen Sie uns an mysqli_stmt_bind_param aussehen () Code:

mysqli_stmt_bind_param($stmt, 'sss', $firstname, $lastname, $email);

Die Bindung Argumente für eine Abfrage und übergeben Sie Parameter an die Datenbank. Der zweite Parameter ist "sss". Die folgende Liste zeigt den Typ des Parameters. s Charakter erzählt mysql Argument ist ein String.

Es kann die folgenden vier Parameter:

  • i - integer
  • d - doppelter Genauigkeit Gleitkommazahl
  • s - die Zeichenfolge
  • b - a boolean Wert

Jeder Parametertyp muss angegeben werden, die Datensicherheit zu gewährleisten. Nach Art der Beurteilung kann das Risiko von SQL-Injection-Schwachstellen zu reduzieren.