Ошибка Unknown column '' in 'where clause'
Есть какая-то очень странная ошибка, объясните, почему она возникает?
Источник: Stack Overflow на русском
Есть какая-то очень странная ошибка, объясните, почему она возникает?
Ошибка возникла, так значение переменной $teamname в косых кавычках интерпретировалось как название колонки, а не строковое значение.
Используйте двойные кавычки для строкового литерала, косые кавычки - для выделения названия колонки и одинарные - для константы в SQL-запросе:
$check = mysqli_query(
$link,
"SELECT * FROM sc_platform_users WHERE `teamname` = '{$teamname}'"
) or die("ERROR: " . mysqli_error($link));
Но такой способ не защищен от SQL-инъекций, и потому правильней было бы использовать PreparedStatement
:
$query = "SELECT * FROM sc_platform_users WHERE `teamname` = ?";
$stmt = $link->prepare($query);
$stmt->bind_param("s", $teamname);
$stmt->execute();
$check = $stmt->get_result();
// ...