Не получается добавить данные в таблицу. (вопрос от новичка)
Я только начинаю изучать всё, что связано с базами данных. Мой сервер и сайт (пусть и пока громко сказано) находится на 000. webhost.com. На одном из учебных форумов (если имеет значение, могу уточнить на каком) было сказано сначала создать таблицу через phpMyAdmin, а затем добавить в эту таблицу данные при помощи php-скрипта. Я создал и таблицу и скрипт, причём всё делал в точности так, как сказано на этом форуме, но данные в таблицу не вставляются!
Вот скрипт, при помощи которого, по идее, должны добавиться данные в таблицу:
<html>
<head>
<title>Вставка данных в БД</title>
</head>
<body>
<?php
// Соединение с сервером БД
mysql_connect("mysql.myhost.com", "user", "sesame") or die (mysql_error ());
// Выбор БД
mysql_select_db("mydatabase") or die(mysql_error());
// Построение SQL-оператора
$strSQL = "INSERT INTO people(";
$strSQL = $strSQL . "FirstName, ";
$strSQL = $strSQL . "LastName, ";
$strSQL = $strSQL . "Phone, ";
$strSQL = $strSQL . "BirthDate) ";
$strSQL = $strSQL . "VALUES(";
$strSQL = $strSQL . "'Gus', ";
$strSQL = $strSQL . "'Goose', ";
$strSQL = $strSQL . "'99887766', ";
$strSQL = $strSQL . "'1964-04-20')";
// SQL-оператор выполняется
mysql_query($strSQL) or die (mysql_error());
// Закрытие соединения
mysql_close();
?>
<h1>БД обновлена!</h1>
</body>
</html>
Насколько понимаю, если этот скрипт составить правильно, то на сервере и моём сайте должно появиться: БД обновлена!? Если так, то так оно и происходит, только, когда заходишь через phpMyAdmin в базу данных, то в ней ни каких изменений не видно!
То есть, в браузере появляется - БД обновлена!, но никаких обновлений в БД - нет!
Мой вопрос - почему?
По этому вопросу на том форуме - полная тишина, вот и задаю его здесь.
Вообще, хотелось бы здесь, ещё узнать совет, где по этой теме можно найти хороший материал (форумы, какие-то статьи, и. т. п.) именно для новичка?
Благодарю за ответы и советы!
Возможно, нет соединения, возможно поле BirthDate не строка, а какого-нибуть хитроумного типа.
Вобщем, нужно смотреть, что пишет в ответ на запрос БД.
Error
SQL query:
strSQL ="INSERT INTO people(";
MySQL said:
#1064 - You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'strSQL = "INSERT INTO people("' at line 1
В этом примере я прописывал код, начиная со строки - $strSQL = "INSERT INTO people("; и заканчивая строкой - mysql_query($strSQL) or die (mysql_error());
То есть, во-первых, правильно ли я делаю сам запрос SQL phpmyadmin? Но, повторю, что испробовал много разных вариантов (в том числе прописывал там код полностью, как в вопросе). Всегда ошибка - #1064 с разными вариантами. Обратил внимание, что всегда ошибка начинается уже с первой строки запроса.
Попробовал вставить код в SQL, как указано выше. Ответа об ошибке нет. Но, я не совсем понимаю, удалось мне вставить данные в таблицу или нет. Когда я нажимаю вкладку "Browse" в phpMyAdmin, то появляется строка, как это показано на скриншоте. Это и есть, то, что мне требовалось сделать, или я сделал, что-то не то?
Но, главное (как мне кажется) в том, что, по прежнему, не получается через php-скрипт на сервере вставить данные в таблицу.
То есть, видимо, положительный момент есть, но, в целом, проблема остаётся...
Совершенно не удивительно. Советую ознакомиться - Как правильно задавать вопросы
Вообще-то есть три варианта.
Вариант первый - найти/купить/скачать любой материал который относится к PHP и MySQL. По первым шагам в интернете столько материала - что спрашивать как его найти - это фактически расписаться в собственном идиотизме. Причем в полном и бесповоротном. Если это вызывает проблему - то лучше сразу переходить к пункту три.
Второй вариант - оплатить услуги преподавателя, который поможет - ну а заодно, в оплачиваемое время, послушает все сопли про начинающего и т.д. и покивает головой.
Третий вариант - заплатить кому-нибуть, что бы он все сделал за тебя. Возможно, в стоимость оплаты опять же будет входить подтирание соплей и дополнительные бонусы - типа дорвеев и т.п. - но тут уж зависит насколько идиотом ты вообще себя выставишь.
И кстати - во-первых на форуме код надо форматировать - ломать глаза об твою простыню текста никому не надо.
Во-вторых, открой для себя оператор ".=" - и код будет легче читаться и ошибок меньше допустишь.
В третьих - вот описание функции mysql_query на русском языке - и там же есть примеры как правильно отправить запрос и обработать результат. Вероятнее всего - твоя проблем именно в этом - ты считаешь что запрос должен или выполниться или завершиться с ошибкой - совершенно без основательно. Ты получаешь ошибку - но никак ее не обрабатываешь.