Warning: Cannot use a scalar value as an array in /home/admin/public_html/forum/include/fm.class.php on line 757

Warning: Invalid argument supplied for foreach() in /home/admin/public_html/forum/include/fm.class.php on line 770
Форумы портала PHP.SU :: Версия для печати :: mysql_real_escape_string в массив
Форумы портала PHP.SU » PHP » SQL и Архитектура БД » mysql_real_escape_string в массив

Страниц (1): [1]
 

1. n1x0n - 24 Марта, 2015 - 01:51:48 - перейти к сообщению
Помогите пожалуйста есть скрипт и он пишет ошибку, как я понял mysql_real_escape_string() это строка а у меня массив...
в 8 строке ругается на такую ошибку
mysql_real_escape_string() expects parameter 1 to be string, array given on line 8


PHP:
скопировать код в буфер обмена
  1. public function insert($table, $arFieldValues, $echo=false) {
  2.         $fields = array_keys($arFieldValues);
  3.         $escVals = array_values($arFieldValues);
  4.  
  5.         $escVals = stripslashes_deep($escVals);
  6.  
  7.         for($i=0; $i<count($escVals); $i++){
  8.         $escVals[$i] = mysql_real_escape_string($escVals[$i], $this->hConn);
  9.                 }
  10.  
  11.  
  12.         //generate the SQL statement
  13.         $sql = " INSERT INTO `$table` (";
  14.         $sql .= "`".join('`, `', $fields)."`";
  15.         $sql .= ') VALUES(';
  16.         $sql .= "'".join('\', \'', $escVals)."'";
  17.         $sql .= ')';
  18.  
  19.         if ($echo) {echo $sql."\r\n";}
  20.  
  21.         $hRes = $this->query($sql, $this->hConn);
  22.                
  23.         if ($echo) {var_dump($hRes)."\r\n";exit;}
  24.                
  25.         return @mysql_insert_id($this->hConn);
  26.         }
2. GoDr - 24 Марта, 2015 - 08:16:17 - перейти к сообщению
n1x0n, ты уверен что $escVals[$i] содержит строку?

И ещё обрати внимание на это:

Цитата:
Внимание

Данное расширение устарело, начиная с версии PHP 5.5.0, и будет удалено в будущем. Используйте вместо него MySQLi или PDO_MySQL. Смотрите также инструкцию MySQL: выбор API и соответствующий FAQ для получения более подробной информации. Альтернативы для данной функции:

mysqli_real_escape_string()
PDO::quote()

 

Powered by ExBB FM 1.0 RC1