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

Warning: Invalid argument supplied for foreach() in /home/admin/public_html/forum/topic.php on line 737
Форумы портала PHP.SU :: Вопрос по mysqli_real_escape_string()

 PHP.SU

Программирование на PHP, MySQL и другие веб-технологии
PHP.SU Портал     На главную страницу форума Главная     Помощь Помощь     Поиск Поиск     Поиск Яндекс Поиск Яндекс     Вакансии  Пользователи Пользователи


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

> Без описания
nj31
Отправлено: 09 Февраля, 2020 - 15:35:37
Post Id


Новичок


Покинул форум
Сообщений всего: 2
Дата рег-ции: Февр. 2020  


Помог: 0 раз(а)




Добрый день! Решил поднять старый сайт, написанный на php 5.6 и столкнулся с некоторыми ошибками.

Пытаюсь обрабатывать строку, полученную от пользователя:
PHP:
скопировать код в буфер обмена
  1.  
  2. $logs_usr = mysqli_real_escape_string($_POST['logs_usr']) ;
  3. $logs_usr = preg_replace ("/[^0-9А-Яа-яA-Za-z_ -=]/i", "", $logs_usr) ; // обработка запроса
  4. $logs_usr = trim ($logs_usr) ;
  5. $logs_usr = addslashes($logs_usr) ;
  6.  


И получаю ошибку вида Warning: mysqli_real_escape_string() expects exactly 2 parameters, 1 given

Почитал документацию, в документации сказано, что mysqli_real_escape_string использует два параметра и первый из них это соединене с базой. Ну ок, теперь понятно, использует значит так:
PHP:
скопировать код в буфер обмена
  1.  
  2. $logs_usr = mysqli_real_escape_string($connection, $_POST['logs_usr']) ;
  3. $logs_usr = preg_replace ("/[^0-9А-Яа-яA-Za-z_ -=]/i", "", $logs_usr) ; // обработка запроса
  4. $logs_usr = trim ($logs_usr) ;
  5. $logs_usr = addslashes($logs_usr) ;
  6.  


И получаю другую ошибку Warning: mysqli_real_escape_string(): Couldn't fetch mysqli

$connection у меня выглядит вот так:
PHP:
скопировать код в буфер обмена
  1.  
  2. $connection = mysqli_connect($DB_HOST, $DB_USER, $DB_PASS, $DB_NAME) ;
  3.  


Подскажите, пожалуйста, что я сделал не так?
 
 Top
Vladimir Kheifets
Отправлено: 09 Февраля, 2020 - 16:58:46
Post Id



Частый посетитель


Покинул форум
Сообщений всего: 879
Дата рег-ции: Март 2017  
Откуда: Германия, Бавария


Помог: 37 раз(а)




nj31 пишет:
Warning: mysqli_real_escape_string(): Couldn't fetch mysqli
Подскажите, пожалуйста, что я сделал не так?
Добрый день!
Вам необходимо проверить если соединение с помощью mysqli_connect_errno().
Если соединие было установлено, то проверьте не было ли оно закрыто mysqli_close($connection) до
$logs_usr = mysqli_real_escape_string($connection, $_POST['logs_usr']) ;
Удачи!
 
 Top
nj31
Отправлено: 09 Февраля, 2020 - 17:13:32
Post Id


Новичок


Покинул форум
Сообщений всего: 2
Дата рег-ции: Февр. 2020  


Помог: 0 раз(а)




Vladimir Kheifets пишет:
nj31 пишет:
Warning: mysqli_real_escape_string(): Couldn't fetch mysqli
Подскажите, пожалуйста, что я сделал не так?
Добрый день!
Вам необходимо проверить если соединение с помощью mysqli_connect_errno().
Если соединие было установлено, то проверьте не было ли оно закрыто mysqli_close($connection) до
$logs_usr = mysqli_real_escape_string($connection, $_POST['logs_usr']) ;
Удачи!


Да, действительно, соединение было закрыто. Надо мне быть внимательнее. Спасибо! Буду учиться!
 
 Top
Страниц (1): [1]
Сейчас эту тему просматривают: 0 (гостей: 0, зарегистрированных: 0)
« Вопросы новичков »


Все гости форума могут просматривать этот раздел.
Только зарегистрированные пользователи могут создавать новые темы в этом разделе.
Только зарегистрированные пользователи могут отвечать на сообщения в этом разделе.
 



Powered by PHP  Powered By MySQL  Powered by Nginx  Valid CSS  RSS

 
Powered by ExBB FM 1.0 RC1. InvisionExBB