Modérateur PHPfrance |
8758 Messages
02 juin 2013, 19:45
la table genre doit avoir au moins deux champs, une clef primaire et un libellé (sinon c'est la merde)
par exemple : idgenre, nomGenre
et 'gout' (id*,idgenre*)
Il est préférable de donner des noms significatifs aux tables et nom de champs. gout cela ne veux rien dire (à part peux être pour toi).
Pense aussi, si possible, à l'unicité d'un nom de champs, cela t'évitera bien des soucis.
Bien entendu cela n'est pas valable en cas de FK (une même info porte le même nom dans toutes les tabels, du moment qu'il y a la fk).
donc plutot que id utilise idutilisateur (ou userid enfin quelque chose de parlant

).
dans le formulaire les checkbox sont affichées à partir de la table genre.
c'est la clef primaire (idgenre) que tu passe en value des checkbox
ensuite, à la validation du formulaire
- tu insère l'utilisateur dans la table
- récupère l'id utilisateur
- tu boucle que les checkbox (foreach) pour insérer les données dans la table. pense aux requêtes préparée pour cela
quand a ton code :
ce type de chose est à éviter
$dn = mysql_num_rows(mysql_query('select id from users where username="'.$username.'"'));
il faut tester impérativement le retour de mysql_query afin d'éviter des erreurs inutile et traiter correctement les erreurs SQL.
De plus l'extension mysql est dépréciée il est préférable d'utilise l'extension
mysqli
@+
Il en faut peu pour être heureux ......