Problème enregistrement formulaire
Résolu/Fermégismin Messages postés 22 Date d'inscription samedi 6 juillet 2013 Statut Membre Dernière intervention 10 août 2023 - 28 déc. 2022 à 22:07
- Problème enregistrement formulaire
- Formulaire de réclamation facebook - Guide
- Telecharger studio d'enregistrement rap - Télécharger - Édition & Montage
- Formulaire de reclamation instagram - Guide
- Le formulaire rempli - Guide
- Confirmer le nouvel envoi du formulaire err_cache_miss - Forum Google Chrome
11 réponses
27 déc. 2022 à 16:11
bonjour,
cela dépend sans doute de la définition de la table.
27 déc. 2022 à 16:55
c'est à dire ?
27 déc. 2022 à 17:57
effectivement dans ma table là ou s'enregistre le "textarea" il y a une petite image d'un pinceau (!?) et quand je la survole avec la souris s'affiche "index" ...
Je ne sais ce que ça signifie.
27 déc. 2022 à 18:02
Nous as-tu partagé le message d'erreur exact et complet?
Qui a créé cette table?
27 déc. 2022 à 18:04
Bonjour
Il semble surtout y avoir un souci avec la requête SQL et le code PHP que tu as utilisé pour y faire appel....
Si tu ne nous montres pas le code en question, impossible pour nous de te répondre !
Vous n’avez pas trouvé la réponse que vous recherchez ?
Posez votre question27 déc. 2022 à 20:58
le message d'erreur:
Fatal error: Uncaught PDOException: SQLSTATE[23000]: Integrity constraint violation: 1062 Duplicate entry '... ' for key 'codep' in C:\xampp\htdocs\...fichier.php:140 Stack trace: #0 C:\xampp\htdocs\...fichier.php(140): PDOStatement->execute() #1 {main} thrown in C:\xampp\htdocs\...fichier.php on line 140
La clé ou ligne 'codep' est juste après la ligne enregistrant le" textarea"
Que signifie "index" dans une ligne de table ? Dans la ligne enregistrant le "textarea" il y a cet icone .C le seul endroit dans toutes mes tables où ça apparait.
C moi qui ai créé la table.
Si j'avais un soucis avec la requête SQL et le code PHP ça ne marcherait pas du tout hors ça marche sauf quand je fais un retour sur le formulaire pour tenter de l'enregistrer à nouveau et l'erreur ci-dessus.
27 déc. 2022 à 21:42
Si j'avais un soucis avec la requête SQL et le code PHP ça ne marcherait pas du tout hors ça marche sauf quand je fais un retour sur le formulaire pour tenter de l'enregistrer à nouveau et l'erreur ci-dessus.
Vu le message d'erreur... on peut supposer (vu que tu ne nous montres toujours pas ton code.... ) que :
- Dans ta table, le champ codep est la clé primaire
- surement auto-incrémenté
- que dans ton code php, tu lui passes une valeur vide au lieu de null ... et que par conséquent.. c'est là la cause de ton souci !
A moins que tu n'es défini ce champ (codep) comme index "unique" .. et donc, que la table ne permet pas les doublons. (mais là aussi, sans voir la structure de ta table .. impossible d'en être sûr ! )
Quoi qu'il en soit ... sans nous montrer ton code ... et la définition de ta table ... tu n'auras pas de meilleur réponse !
27 déc. 2022 à 22:11
La clé primaire au 1er rang est en auto-incrément
"codep" n'est pas une clé primaire il est au 6ème rang après l'enregistrement du "textarea" (qui est au 5ème rang).
Ma question: pourquoi apparait l'icone "Index" sur le champ de la table enregistrant le "textarea" ?
La table:
1 idAss icone "primaire" auto-increment
2 ...
3...
4...
5 letexte icone "Index" ( enregistrement du textarea )
6 codep
7...
8...
27 déc. 2022 à 22:19
Un INDEX sert à améliorer la vitesse du moteur de la base de données pour procéder à des recherches ou des jointures sur les tables.
Le souci se trouvant, vu le message d'erreur, sur le champ codep .. c'est surtout lui qu'il faudrait regarder.
Tu as du le mettre en index "UNIQUE" ...
A noter que pour nous montrer la structure de ta table... soit tu nous fais une capture écran du phpmyadmin sur la définition de ta table .. soit tu fais un SHOW CREATE TABLE en requête SQL.
PS: l'ordre des champs dans une table n'as aucune importance.
27 déc. 2022 à 22:20
PS² : si tu as des "index" sur des champs de ta table... vu que c'est toi qu'il l'a créé ... c'est que tu les y a mis ( par mégarde sûrement...)
28 déc. 2022 à 14:01
Jordane45 je crois que tu as vu juste !
J'ai effectivement un "index unique" sur "codep". Mais je ne comprends pas pourquoi. J'ai supprimé "codep" pour le recréer et "index unique" est réapparu.
Comment le supprimer ? ou puis je trouver de la doc sur MYSQL (facile et en français de préférence) ?
Merci.
28 déc. 2022 à 14:25
Il ne faut pas supprimer le champ ... mais supprimer l'index.
Pour la doc, non, je ne connais rien de particulier en français... et si tu te lances dans la programmation, je t'invite fortement à augmenter tes compétences en anglais.
Pour supprimer ton index, tu peux le faire via phpmyadmin
Remove Unique Index With PHPMYADMIN
To remove unique index of a column,
1) Open PHPMYADMIN
2) Select database >database table >Structure >(Select from option a or b below)
3) Look for Indexes Table which is below the main table.
4) Change or remove the unique index
28 déc. 2022 à 18:56
Merci beaucoup !
Je crois que je n'ai pas le même "phpmyadmin" puisque j'ai pas tout à fait ce que tu me dis.
Concernant l'index j'ai 4 choix : "INDEX" "UNIQUE" "SPATIAL" ou "FULLTEXT". J'étais sur "UNIQUE" j'ai mis sur "INDEX" et ça marche !
Merci encore, belle fin d'année. Bonne année 2023 !
28 déc. 2022 à 18:59
Tu n'as pas retiré l'index .. tu l'as juste modifié. A voir si tu en as besoin pour effectuer des recherches dans ta base ou pour faire des jointures sur ce champ.
En soit ce n'est pas générant.. ça prend juste un peu de place dans la base de données.
Bref, pense à mettre le sujet en RESOLU.
28 déc. 2022 à 22:01
Ok merci encore.
28 déc. 2022 à 22:07
Sujet résolu.