Mysql
 sql >> Baza danych >  >> RDS >> Mysql

jak uciec z danych wejściowych, ale zapisać bez ucieczki do bazy danych

NIE używasz addslashes używasz odpowiedniej funkcji ucieczki specyficznej dla bazy danych, takiej jak mysql_real_escape_string .

jeśli używasz PDO, użycie przygotowanej instrukcji spowoduje uniknięcie zmiennych w ramach procesu wiązania. W tym przypadku wszystko, co musisz zrobić, to:

$pdo = new PDO($dsn, $user, $name);
$stmt = $pdo->prepare('INSERT INTO your_table (col1, col2,col3) VALUES (?, ?, ?)');
$stmt->execute(array('value 1', 'value 2', 'value 3');

LUB dla dodatkowej czytelności i łatwiejszego ponownego wykorzystania możesz użyć nazwanych parametrów:

$pdo = new PDO($dsn, $user, $name);
$stmt = $pdo->prepare('INSERT INTO your_table (col1, col2,col3) VALUES (:col1, :col2, :col3)');
$stmt->execute(array(':col1' =>'value 1', ':col2' =>'value 2', ':col3' =>'value 3');


  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Jak używać „distinct” w modelu zend db

  2. Problem z bazą danych Laravel 5

  3. Konstruktor zapytań Codeigniter używający funkcji implode w where_in

  4. Jak tworzyć zapytania sprzężenia za pomocą Sequelize na Node.js

  5. Pomoc Pola wyboru PHP i HTML