Ошибка отправки формы PHP MySQL
Мне нужна помощь с этим простым представлением формы PHP/MySQL. Ниже приведен код и ошибка, которую я получаю. Все хорошо с PHP Script. Кажется, соединение с базой данных Mysql доставляет мне проблемы.
mysql_connect("localhost","root","admin");//database connection
mysql_select_db("employees");
//inserting data order
$order = "INSERT INTO data_employees (name, address)
VALUES ('$name','$address')";
//declare in the order variable
$result = mysql_query($order); //order executes
if($result)
{
echo("<br>Input data is succeed");
} else{
echo("<br>Input data is fail");
}
Ниже приводится сообщение об ошибке, которое я получаю: ошибка синтаксического анализа: синтаксическая ошибка, неожиданное '?' в C:\xampp\htdocs\Input.php в строке 12.
После того, как я заполняю данные формы и отправляю их иногда, я получаю сообщение об ошибке "Предупреждение: mysql_connect(): доступ запрещен для пользователя 'root'@'localhost' (используя пароль: YES) в C:\xampp\htdocs\form_input.php по строке 4 ".
Msgstr "Примечание: неопределённая переменная: имя и адрес в C:\xampp\htdocs\form_input.php в строке 11 Входные данные неверны".
Ваше решение, помощь приветствуется. Благодарю вас
3 ответа
Для ошибки разбора
Измените ваш эхо-оператор следующим образом в обоих условиях:
echo "<br>Input data is succeed" ;
Примечание: неопределенная переменная: имя и адрес очень ясно из сообщения.
$name
& $address
нигде не определено.
Может быть, вы хотели бы взять его из запроса.
$name = $_REQUEST['name']; //Name of element in the form
$address = $_REQUEST['address'];
mysql_connect (): доступ запрещен для пользователя
Проверьте правильность строки подключения username
& password
,
Примечание: пожалуйста, не используйтеmysql_*
функции в новом коде. Они больше не поддерживаются и официально устарели. Видишь красную коробку? Вместо этого узнайте о готовых утверждениях и используйте PDO или MySQLi - эта статья поможет вам решить, какие именно. Если вы выбираете PDO, вот хороший урок.
Ваша проблема здесь
$order = "INSERT INTO data_employees (name, address)
VALUES ('$name','$address')";
вы не определили
$name and $address variables.
пожалуйста, определите их.
Глядя на вашу ошибку MySQL
Предупреждение: mysql_connect(): доступ запрещен для пользователя 'root'@'localhost' (используя пароль: YES) в C:\xampp\htdocs\form_input.php в строке 4
Это просто означает, что у вас неправильная комбинация имени пользователя и пароля для доступа к базе данных.
Также отмечая вашу другую ошибку относительно переменных
Примечание: неопределенная переменная: имя и адрес в C:\xampp\htdocs\form_input.php в строке 11
Это означает, что переменная не была объявлена. Если это то, что публикуется в вашей форме, лучше использовать суперглобальный $_POST вместо того, чтобы конфигурация PHP позволяла устанавливать данные POST как обычные переменные (т. Е. $_POST["name"] против $name). Это обеспечивает большую гибкость при именовании переменных, поскольку у вас не будет конфликтов между опубликованными значениями и обычными переменными в вашем PHP-коде.
Было бы полезно увидеть "Input.php" вашего кода и для ошибки разбора, которую вы упомянули.
Полезные ссылки: