Mysql
 sql >> Base de Dados >  >> RDS >> Mysql

como escapar da entrada, mas salvar sem escape no banco de dados


Você NÃO usa addslashes você usa a função de escape específica do banco de dados apropriada como mysql_real_escape_string .

se você estiver usando PDO, usar uma instrução preparada escapará das variáveis ​​como parte do processo de vinculação. Neste caso, tudo o que você precisa fazer é algo como:
$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');

OU para maior legibilidade e reutilização mais fácil, você pode usar parâmetros nomeados:
$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');