У меня есть два сценария, которые вставляют новую строку в мою базу данных SQL. Один работает, а другой нет. Оба они выглядят одинаково (но для разных данных), но один не работает. Я не могу понять, что я делаю неправильно.ВСТАВИТЬ в таблицу не работает. Использование MySQL и PHP
Disclosure: Я самоучитель и не занимался программированием, кроме нескольких лет назад.
Этот продукт работает: включает ('db.php');
mysql_query("INSERT INTO leadprofile (first_name, last_name, home_phone, mobile_phone, work_phone, work_phone_ext, email_address, description, fk_source) VALUES ('$_POST[first_name]','$_POST[last_name]','$_POST[home_phone]','$_POST[mobile_phone]','$_POST[work_phone]','$_POST[work_phone_ext]','$_POST[email_address]','$_POST[description]','$_POST[fk_source]')");
mysql_close($con);
Этот не работает. Нагрузки страниц, но не значения вставляются в таблицу:
include('db.php');
mysql_query("INSERT INTO tasks (fk_lead_id, task_type, task_detail, due_date) VALUES ('$_POST[fk_lead_id]',('$_POST[task_type]','$_POST[task_detail]','$_POST[due_date]')");
mysql_close($con);
Оба ссылаются на тот же db.php файл, который загружает только базу данных. Я ценю любую помощь и надеюсь, что это что-то сумасшедшее просто. Я подтвердил, что имя таблицы и имена столбцов верны.
И любые ошибки, которые вы не улавливаете; unescaped strings (что, если моя фамилия 'O'Connor'?); Риски внедрения SQL? –
Не используйте функции mysql_, они устарели. Вместо этого используйте mysqli_ или PDO. Также НИКОГДА не передавайте какие-либо данные непосредственно в SQL-запрос, найдите SQL-инъекции как можно скорее. – Patrick
Где все эти ужасные обучающие программы mysql, которые не упоминают mysql_error()? «Я самоучитель» - Забудьте все, что вы знаете, и начните через http://www.phptherightway.com/#databases –