PHP / SQL ошибка, неожиданное имя переменной - PullRequest
0 голосов
/ 13 июля 2020

Я получаю следующую ошибку:

Parse error: syntax error, unexpected '$studentNo' (T_VARIABLE)

Может кто-нибудь сказать мне, что здесь не так? Я читал об этой ошибке и основываюсь на ней, обычно это происходит, когда отсутствует скобка, скобка или точка с запятой, но в моем случае я не думаю, что я что-то пропустил ... Имеет ли это какое-то отношение к саму переменную, может быть?

if(isset($_POST['next'])){
        $studentNo = $_POST['sn'];
        if(!empty($_POST['sn'])){
            $check =  ("SELECT * FROM student_info WHERE SN="$studentNo"");
            $check1 = mysqli_query($con, $check);
            if(mysql_num_rows($check1) > 0){
                $errors['sn'] = "Student number already exists";
            }
        }
    }

1 Ответ

2 голосов
/ 13 июля 2020

Ваша проблема в том, что вам нужно объединить строку.

Но перед этим убедитесь, что ваша SQL библиотека защищает от SQL инъекций.

Для этого , просто выполните:

$check = "SELECT * FROM student_info WHERE SN=" . $studentNo . ";";

// Also, remember to add a semicolon at the end of your SQL query :)

Лучший способ сделать это - использовать подготовленный оператор. Этот сайт очень хорошо это объясняет.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...