-1

Я использовал параметр функции в качестве запроса на mysqli

function checker($ip){
  $ipcheck = mysqli_query($conn, "SELECT `id` FROM IPes WHERE `ip` = '" . $_POST[$ip] . "'");
  //some code....
}
checker("ip");

но мне выдает ошибку mysqli_query() expects parameter 1 to be mysqli, null given я убрал $_POST в функции пробовал сделать так

checker($_POST["ip"])

но нечего не изменилось, помогите пожалуйста я ещё новинький в php.

1 Answers1

0

Оказывается ответ был прост

function checker($ip){
  global $conn;
  $ipcheck = mysqli_query($conn, "SELECT `id` FROM IPes WHERE `ip` = '" . $_POST[$ip] . "'");
  //some code....
}
checker("ip");

сделать подключение глобальным

  • 1
    Использование глобальных переменных -- плохая практика. – Simon Aug 23 '22 at 16:18
  • Глобальные переменные могут сыграть с вами злую шутку, когда вы будете модифицировать код в будущем. Лучше просто сделать  $conn и $_POST['ip'] аргументами функции checker: checker($conn, $_POST['ip']);. Так же обратите внимание, что у вас тут sql-инъекция. Используйте mysqli_real_escape_string – Егор Банин Aug 23 '22 at 16:21