sql >> Database >  >> RDS >> Mysql

hoe u invoer kunt ontsnappen, maar zonder escape kunt opslaan in de database

Je gebruikt GEEN addslashes je gebruikt de juiste DB-specifieke escape-functie zoals mysql_real_escape_string .

als u PDO gebruikt, zal het gebruik van een voorbereide instructie ontsnappen aan de variabelen als onderdeel van het bindingsproces. In dit geval hoeft u alleen iets te doen als:

$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');

OF voor extra leesbaarheid en gemakkelijker hergebruik kunt u benoemde parameters gebruiken:

$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. XAMPP WERKT NIET! - OS X Yosemite

  2. Hoe dbWatch te installeren om MySQL-prestaties in Linux te controleren

  3. Standaardwaarde voor kolom DATE-type instellen op huidige datum zonder tijdsdeel?

  4. Bereken werkuren tussen 2 datums in PostgreSQL