Mysql
 sql >> база данни >  >> RDS >> Mysql

Саниране при съхраняване на сериализиран масив

Винаги използвайте mysql_real_escape_string когато работите с низове, които може да имат кавички / наклонени черти. Ако не го направите, ще получите повредени/злонамерени заявки. Резултатът от serialize() понякога има кавички / наклонени черти, така че трябва да го използвате. Няма нужда обаче да сериализирате всеки елемент от масива предварително.

$details['name']  = $_POST['name'];
$details['email'] = $_POST['email'];
$details['phone'] = $_POST['phone'];

$serializedDetails = mysql_real_escape_string(serialize($details));

Само като пример:сериализирането на "hello" ще ви даде:s:5:"hello" .

$data  = 's:5:"hello"';
$query = 'INSERT INTO tbl (data) VALUES ("' . $data . '")';

// leads to a syntax error from mysql
// (plus it's a huge security hole)
mysql_query($query);



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. phpActiveRecord Неправилен формат на дата и час

  2. Как да мигрирам база данни на SQL Server към MySQL?

  3. Не мога да разбера как да стартирам mysqli_multi_query и да използвам резултатите от последната заявка

  4. MySQL Visual Studio Не може да създаде прозорец за проектиране за избрания обект

  5. Изхвърлете всички съхранени процедури в MySQL или използвайте временни съхранени процедури