sql >> Databáze >  >> RDS >> Mysql

Předávání PHP proměnných do MySQL

Ostatní odpovědi využívající zřetězení jsou jednoduché. Nejlepší je použít připravené příkazy, díky kterým bude váš kód výrazně bezpečnější.

$insert = "INSERT INTO " .$new_table. " VALUES(?, ?, ?)";
$q = mysqli_prepare($db, $insert);
mysqli_stmt_bind_param($q, "iss", $ID, $Partner, $Merchant);
mysqli_stmt_execute($q);

Provádění parametrizovaných dotazů znamená, že váš dotaz a data jsou odesílány odděleně. To znamená, že struktura dotazu již existuje, a nemůže být tedy měněna ničím jiným vloženým do dat, což znamená, že jste v bezpečí před SQL injection.

Viz manuál PHP:



  1. Jak nastavit automatické převzetí služeb při selhání pro databázi Moodle MySQL

  2. Pro Nvarchar (Max) dostávám pouze 4000 znaků v TSQL?

  3. Odstranit řádek, pokud tabulka existuje SQL

  4. sql dotaz s příkazem if