IwanQ
@IwanQ
Плохие времена часто дают прекрасные возможности

Не записывается значение?

Здравствуйте.

На строне клиента через  fetch отправляется json с данными email и id.

На сервере для его получения используется:

$data = json_decode(file_get_contents('php://input'), true);


Есть БД

id AUTO_INCREMENT
email varchar(99)

Пытаюсь записать email в БД

$email = $data['email'];

$sql = "INSERT INTO orders (email) VALUES ($email)";
if(mysqli_query($connect, $sql)){
  echo 'ok';
} else {
  echo 'error';
}


Получаю ошибку, но если сделать например:

$sql = "INSERT INTO orders (email) VALUES ('ss@ss.ss')";


То все сработает отлично.

Я уже час не пойму в чем проблема, значение email точно не пустое, тип string.

Подскажите пожалуйста6 в чем может быть проблема?
  • Вопрос задан
  • 57 просмотров
Решения вопроса 1
@vdem
$sql = "INSERT INTO orders (email) VALUES ('$email')";

Найдите отличие.
Еще, используйте PDO - меньше будете зависеть от конкретной БД.
И еще, не делайте так, как делаете. Почитайте, что такое атаки с использованием SQL-инъекций.
Ответ написан
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы