Отправить HTML-форму выбора / выпадающего в базу данных MySQL - PullRequest
4 голосов
/ 15 июля 2011

Я пытаюсь отправить HTML <form>, и информация input и select введена в таблицу базы данных MySQL. Мой код вводит данные <input type="text"> в таблицу, но не вводит данные в <select>.

Это <form>, который я использовал:

<form enctype="multipart/form-data" action="send.php" method="post">
    <select name="gender">
        <option value="Male"> Male</option>
        <option value="Female">Female</option>
    </select>
    <input type="text" name="name">
    <input type="submit" value="Add">
</form>

И это тот PHP, который я использовал для ввода формы в таблицу:

<?php
$gender=$_POST['gender']; // This is the select/dropdown
$name=$_POST['name'];  // This is the text input

mysql_connect("", "", "") or die(mysql_error()) ; 
mysql_select_db("") or die(mysql_error()) ; 

mysql_query("INSERT INTO `table1` VALUES ('$gender', '$name')") ; 
?>

Ответы [ 4 ]

2 голосов
/ 15 июля 2011
  • попытаться напечатать результаты вашей формы
  • попытаться напечатать ваш оператор SQL вместо выполнения
  • проверить оператор на глаз
  • скопировать оператор и попытатьсявыполнить на сервере вручную.
  • добавить параметр log=query.log в разделе [mysqld] файла конфигурации сервера MySQL (возможно, my.cnf), перезапустить сервер и просмотреть query.log последние запросы -- они достигают сервера?
1 голос
/ 15 июля 2011

Хммм ... Если это не работает, попробуйте:

mysql_query("INSERT INTO table1 VALUES ('".$gender."','".$name."');");
0 голосов
/ 02 апреля 2013

Вы можете попробовать

<?php
$gender=$_POST['gender']; 
$name=$_POST['name']; 

mysql_connect("", "", "") or die(mysql_error()) ; 
mysql_select_db("") or die(mysql_error()) ; 

mysql_query("INSERT INTO `table1` SET `fieldgender`='{$gender}', `fieldname`='{$name}'") ; 
?>

С fieldgender И fieldname - это столбцы в вашей таблице mysql1

0 голосов
/ 15 июля 2011

Попробуйте:

mysql_query("INSERT INTO `table1` (genderCol,nameCol) VALUES ('{$gender}','{$name}')");

Хотя, как сказал @Joe Stefanelli, вы действительно должны очистить ввод - никогда не доверяйте пользователю.Взгляните на использование подготовленных утверждений

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...