insérer des valeurs à partir d'une liste déroulante pour la table de base de données
Je suis nouveau en PHP. Lorsque j'essaie d'insérer la valeur dans la liste déroulante à la table de base de données montrant quelques erreurs
le code
<html>
<head>
<title>OPTION</title>
</head>
<body>
<form action="option.php" method="get">
Name :<select name="name">
<option value="name1">name1</option>
<option value="name2">name2</option>
<option value="name3">name3</option>
<option value="name4">name4</option>
</select><br>
<input type="submit" name="submit" value="Insert">
</form>
</body>
</html>
<?php
if(isset($_GET['submit']))
{
$name=$_GET['name'];
$c=mysql_connect("localhost","root","");
mysql_select_db("test");
$ins=mysql_query("insert into option (name) values ('$name')",$c);
if($ins)
{
echo "<br>".$name."inserted";
}
else
{
echo mysql_error();
}
}
?>
quand j'essaie de mettre en montrant cette erreur
Vous avez une erreur dans votre syntaxe SQL; consultez le manuel qui correspond à votre versions du serveur MySQL pour la bonne syntaxe à utiliser près de l'option (nom) values ('nom3')' à la ligne 1
Je vous remercie..,
- vous devez changer le nom de votre table. Oprion est un mot clé mysql et donc elle s'cuse erreur de syntaxe lors de l'exécution de requêtes avec php. Également commencer à utiliser mysqli_ ou PDO depuis mysql_ est obsolète.
Vous devez vous connecter pour publier un commentaire.
vous devez changer le nom de votre table (
option
).Option
est un mot clé mysql et donc il va provoquer une erreur de syntaxe lors de l'exécution de requêtes avecphp
.Changer le nom de la table à
option_test
ou quelque chose et de faire les changements nécessaires dans votre code php trop. Ensuite, il sera.Également commencer à utiliser
mysqli_
ouPDO
depuismysql_
a été abandonné à partir de à partir de PHP5.Essayer ce code, j'ai changé le
name
deselect
ànames
etutilisation backticks autour de la table nom
Code Html Est:
Code PHP Est:
Le code php va vous aider à récupérer des données à partir de l'option sélectionnée dans la variable php $un. À partir de là, vous pouvez insérer des données dans la requête simplement que vous avez inséré avant.
dans votre code
mysql_query("insert into option (name) values ('$name')",$c);
ici, pas besoin d'ajouter de la variable de connexion à cette fonction.il vous suffit d'écrire
mysql_query("insert into option (name) values ('$name')")or die(mysql_error());
raison de l'appel de la fonction mysql_error() est que vous êtes venu pour savoir quel type d'erreur est à venir..et une autre chose est que vous devez changer le nom de votre table à partir de l'option de option1 ou autre chose...ensuite, il sera bien..pas de soucis...:)