Heim  >  Artikel  >  Datenbank  >  Warum werden meine PHP-Formulardaten nicht in MySQL eingefügt?

Warum werden meine PHP-Formulardaten nicht in MySQL eingefügt?

Barbara Streisand
Barbara StreisandOriginal
2024-11-11 20:59:03675Durchsuche

Why is My PHP Form Data Not Inserting into MySQL?

PHP: Werte aus dem Formular in MySQL einfügen, ohne vorbereitete Anweisungen zu verwenden

Obwohl Sie die Benutzertabelle in MySQL erstellt und die Dateien dbConfig und Index.php definiert haben, müssen Sie Es tritt ein Problem auf, bei dem Daten nicht in die Datenbank eingefügt werden, wenn auf die Schaltfläche „Speichern“ geklickt wird.

Der bereitgestellte Code ruft Werte aus dem Formular mit $_POST ab, deklariert jedoch nur eine INSERT-Abfragezeichenfolge in der folgenden Zeile:

$sql = "INSERT INTO users (username, password, email)
        VALUES ('".$_POST["username"]."','".$_POST["password"]."','".$_POST["email"]."')";

Dieser Code führt die Abfrage nicht wirklich aus. Um MySQL-Abfragen auszuführen, können Sie die Funktion mysqli_query verwenden:

mysqli_query($mysqli, $sql);

Dieser Ansatz ist jedoch anfällig für SQL-Injection-Angriffe. Es ist wichtig, bei der Verarbeitung von Benutzereingaben vorbereitete Anweisungen zu verwenden, um böswillige Datenmanipulationen zu verhindern.

Hier ist ein Beispiel für die Verwendung vorbereiteter Anweisungen:

$sql = "INSERT INTO users (username, password, email)
    VALUES (?,?,?)";
$stmt = $mysqli->prepare($sql);
$stmt->bind_param("sss", $_POST['username'], $_POST['password'], $_POST['email']);
$stmt->execute();

Das obige ist der detaillierte Inhalt vonWarum werden meine PHP-Formulardaten nicht in MySQL eingefügt?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn