Formulaire (select) avec Switch

ifox69 -  
moderno31 Messages postés 900 Statut Membre -
Bonjour,

J'ai un petit problème avec la fonction switch, je part d'un formulaire simple

<form method="POST" action="admin.php">
<select name="categorie">
<option value="categorie 1">categorie 1</option>
<option value="categorie 2">categorie 2</option>
<option value="categorie 3">categorie 3</option>
</select>
Titre de la souscategorie : <input type="texte" name="titresouscategorie"> <input type="submit" value="ok"/>
</form>

je choisi la categorie dans laquelle je veux mettre une souscategorie, ensuite je me sert d'un switch pour insérer la souscategorie dans ma BDD, la suite du code est ceci :

...connection mysql....
$categorie = $_POST['categorie'];
$titresouscategorie = $_POST['titresouscategorie'];
switch ($categorie)
{
case "multimedia":
mysql_query("INSERT * INTO souscategoriemulti VALUES ('', '$titresouscategorie'");
break;
case "jeux":
mysql_query("INSERT * INTO souscategoriejeux VALUES ('', '$titresouscategorie'");
break;
case "mode":
mysql_query("INSERT * INTO souscategoriemode VALUES ('', '$titresouscategorie'");
break;
}

mais sa marche pas rien ne s'insère dans ma BDD quelqu'un peut-il m'aider je suis presque sur que le probleme vient du switch.
A voir également:

5 réponses

le père
 
Bonjour

Avant ton switch, fais des echo $categorie et $titresouscategorie pour être sûr que les données du formulaire sont bien reçues.
Ensuite, ajoute à chaque appel à mysql_query un or die (mysql_error()); pour voir la cause de l'erreur
0
Alain_42 Messages postés 5413 Statut Membre 894
 
<select name="categorie">
<option value="categorie 1">categorie 1</option>
<option value="categorie 2">categorie 2</option>
<option value="categorie 3">categorie 3</option>
</select>


ta liste va te renvoyer categorie 1 ou 2 ou 3

hors toi tu bases ton switch sur
multimedia, jeux, mode

soit tu modifies les values de ta liste soit les case multimedia etc..pour mettre en concordance
0
moderno31 Messages postés 900 Statut Membre 92
 
Hello,
Déjà d'aucun système SGBD je ne connais cette syntaxe...>mysql_query("INSERT * INTO souscategoriemulti VALUES ('', '$titresouscategorie'");

Je préférerais mettre
$sql = mysql_query("INSERT INTO souscategoriemulti (`champ1`,`champ2`,`champ3`) VALUES ('val1', '$titresouscategorie','val3'");
Conseil : Gérer un maximum de valeurs par défaut coté base de données (ex date création de type timestamp avec NOT NULL et valeur par défaut current timestamp en case à cocher).

Ces indications conviennent bien à MySQL..
0
Alain_42 Messages postés 5413 Statut Membre 894
 
mysql_query("INSERT * INTO souscategoriemulti VALUES ('', '$titresouscategorie'");

marche mais SANS l'étoile !
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
moderno31 Messages postés 900 Statut Membre 92
 
Ahh oui, ça doit etre la première méthode. Tu as raison Alain_42
Par contre attention si tu rajoute ou supprime des champs dans cette table ça pose prob après...
0