Erreur case à cocher en php-mysql
Résolu/Fermé
A voir également:
- Erreur case à cocher en php-mysql
- Erreur 0x80070643 - Accueil - Windows
- Aller à la ligne dans une case excel - Guide
- Case à cocher open office - Forum LibreOffice / OpenOffice
- Erreur 0x80070643 Windows 10 : comment résoudre le problème de la mise à jour KB5001716 - Accueil - Windows
- Comment cocher une case sans souris ✓ - Forum Windows
38 réponses
Bonjour,
Merci d'avoir pris du temps pour m'aider.
J'ai donc testé ce que vous m'aviez recommandé.
Malheureusement que je coche la case ou non il me l'inscrit coché dans la base de données. De plus quand je coche les cases une erreur s'affiche mais l'enregistrement passe comme même.
Voici l'erreur :
Notice: Undefined variable: infos in C:\Documents and Settings\Administrateur\Mes documents\site essai\traitement.php on line 19
Warning: Invalid argument supplied for foreach() in C:\Documents and Settings\Administrateur\Mes documents\site essai\traitement.php on line 19
La ligne 19 correspond à cette partie du code :
...
foreach($infos as $info){
...
Voilà et je me demandais si le deuxième $info sans s à la fin ne devait pas justement en avoir un.
Merci de votre aide précieuse.
Merci d'avoir pris du temps pour m'aider.
J'ai donc testé ce que vous m'aviez recommandé.
Malheureusement que je coche la case ou non il me l'inscrit coché dans la base de données. De plus quand je coche les cases une erreur s'affiche mais l'enregistrement passe comme même.
Voici l'erreur :
Notice: Undefined variable: infos in C:\Documents and Settings\Administrateur\Mes documents\site essai\traitement.php on line 19
Warning: Invalid argument supplied for foreach() in C:\Documents and Settings\Administrateur\Mes documents\site essai\traitement.php on line 19
La ligne 19 correspond à cette partie du code :
...
foreach($infos as $info){
...
Voilà et je me demandais si le deuxième $info sans s à la fin ne devait pas justement en avoir un.
Merci de votre aide précieuse.
Merci clem285, j'ai effectué ce que tu ma proposé en adaptant mes variables.
Je n'ai aucunes erreurs. Les enregistrements passent que les cases soient cochées ou non.
Le souci c'est que même si je ne coche pas les cases il me les met cochées dans la base de données.
Je crois que je m'en sortirais jamais lol.
Croyez vous que le problème pourrait venir d'ailleurs?
Auriez-vous une idée ?
Je n'ai aucunes erreurs. Les enregistrements passent que les cases soient cochées ou non.
Le souci c'est que même si je ne coche pas les cases il me les met cochées dans la base de données.
Je crois que je m'en sortirais jamais lol.
Croyez vous que le problème pourrait venir d'ailleurs?
Auriez-vous une idée ?
clem285
Messages postés
280
Date d'inscription
samedi 29 septembre 2007
Statut
Membre
Dernière intervention
22 octobre 2021
83
25 juin 2008 à 10:54
25 juin 2008 à 10:54
regarde dans la base de donnée si la valeur par défaut n'est pas 1
le problème peut venir de là.
de plus ne serait-il pas plus simple de changer le type dans la base en le passant de bit à varchar ?
cela permettrait de pouvoir enregistrer les mots correspondant aux case à cocher ( plus simple pour refaire sortir les valeurs et pas besoin de passer par une variable intermédiaire du genre : si machin = 1 alors machin = youpi )
sinon vive les stages :p
le problème peut venir de là.
de plus ne serait-il pas plus simple de changer le type dans la base en le passant de bit à varchar ?
cela permettrait de pouvoir enregistrer les mots correspondant aux case à cocher ( plus simple pour refaire sortir les valeurs et pas besoin de passer par une variable intermédiaire du genre : si machin = 1 alors machin = youpi )
sinon vive les stages :p
Sri Lumpa
Messages postés
177
Date d'inscription
mercredi 14 novembre 2007
Statut
Membre
Dernière intervention
1 juin 2010
69
>
clem285
Messages postés
280
Date d'inscription
samedi 29 septembre 2007
Statut
Membre
Dernière intervention
22 octobre 2021
25 juin 2008 à 11:07
25 juin 2008 à 11:07
Le problème c'est que si elle se met à modifier la structure de la base, faut modifier tout ce qui l'utilise... Selon ce qu'elle fait, ça peut prendre plus de temps de tout réadapter que de corriger ça.
Par contre l'idée que la valeur par défaut du champs soit "1" est probablement la source du problème ^^.
Par contre l'idée que la valeur par défaut du champs soit "1" est probablement la source du problème ^^.
Effectivement dans ma base de données mon type est à bit(1) donc je suppose qu'il met 1 par défaut. Ensuite le problème si je change le type c'est que comme j'ai déjà beaucoup de données dans ma base de données et que les cases à cocher ont déjà comme valeur un petit carré qui signifit coché il serait embêtant pour moi d'avoir des valeurs différentes. Enfin une sorte de coupure dans ma base de donnée, j'espère que je suis assez clair sinon dite le moi.
Donc j'aimerai savoir si je change le type en varchar, comme vous me le proposez, si j'aurais toujours les mêmes valeurs actuelles c'est-à-dire les petits carrés ou si j'aurais des 1 et 0.
Merci beaucoup ca m'avance sur le problème. Et oui vive les stages lol.
Donc j'aimerai savoir si je change le type en varchar, comme vous me le proposez, si j'aurais toujours les mêmes valeurs actuelles c'est-à-dire les petits carrés ou si j'aurais des 1 et 0.
Merci beaucoup ca m'avance sur le problème. Et oui vive les stages lol.
Sri Lumpa
Messages postés
177
Date d'inscription
mercredi 14 novembre 2007
Statut
Membre
Dernière intervention
1 juin 2010
69
25 juin 2008 à 11:11
25 juin 2008 à 11:11
Non, il me semble que le fait qu'il soit marqué bit(1) signifie que ton champs est de type bit (un 0 ou un 1) et qu'il est de taille 1. Oui je sais c'est hyper-redondant comme info.
Si tu as une vision de ta table avec PhPMyAdmin ou tout autre gestionnaire de base de données avec une interface graphique, tu dois avoir un moyen de vérifier dans la structure de la base la valeur par défaut.
Si tu as une vision de ta table avec PhPMyAdmin ou tout autre gestionnaire de base de données avec une interface graphique, tu dois avoir un moyen de vérifier dans la structure de la base la valeur par défaut.
Vous n’avez pas trouvé la réponse que vous recherchez ?
Posez votre question
ba j'ai voulu enlever le 1 qui est dans (taille/valeurs) mais il me pose une erreur comme quoi ce n'est pas un nombre si je ne veux rien mettre. De plus le type est VARCHAR quand je veux modifier des choses d'une case à cocher. Alors que sur la structure c'est bit(1).
Que dois-je faire?
Que dois-je faire?
En fait quand je veux modifier les attributs de mon champ j'ai un attribut qui s'appelle défaut. Et dans cet attribut la valeur est : Null.
C'est ca dont vous parliez?
C'est ca dont vous parliez?
Sri Lumpa
Messages postés
177
Date d'inscription
mercredi 14 novembre 2007
Statut
Membre
Dernière intervention
1 juin 2010
69
25 juin 2008 à 11:21
25 juin 2008 à 11:21
Normal qu'il te sorte une erreur quand tu veux modifier la taille de ce champs, ce n'est pas permis de le laisser vide...
Le VARCHAR correspond à quel champs tu dis ?
(PS : je ne sais pas si tu as vu, je n'aurais pas du mettre le message à cet endroit : j'avais fait une petite erreur dans la dernière solution que je t'avais proposée, il faut remplacer dans le foreach $infos par $_POST['infos'].)
Le VARCHAR correspond à quel champs tu dis ?
(PS : je ne sais pas si tu as vu, je n'aurais pas du mettre le message à cet endroit : j'avais fait une petite erreur dans la dernière solution que je t'avais proposée, il faut remplacer dans le foreach $infos par $_POST['infos'].)
Sri Lumpa
Messages postés
177
Date d'inscription
mercredi 14 novembre 2007
Statut
Membre
Dernière intervention
1 juin 2010
69
25 juin 2008 à 11:22
25 juin 2008 à 11:22
OK, donc par défaut, la valeur est NULL... ça nous arrange pas ça :s. Juste avant de faire la requete, fais un echo de toutes les variables que tu vas insérer histoire de vérifier quelles sont les valeurs que tu transmets.
J'ai modifier le code à l'endroit ou vous m'aviez dit qu'il y avait une erreur.
Donc ensuite j'ai refait un test et j'ai vu que quand je cochais les cases plusieurs erreurs apparaissaient plusieurs fois. En clair le code a un problème.
Si j'essai de mettre 1 au lieu de Null dans ma base de donnée croyez vous que ca pourrait fonctionner?
Donc ensuite j'ai refait un test et j'ai vu que quand je cochais les cases plusieurs erreurs apparaissaient plusieurs fois. En clair le code a un problème.
Si j'essai de mettre 1 au lieu de Null dans ma base de donnée croyez vous que ca pourrait fonctionner?
Je pense que ca serait plus facile si je met les cases à cocher en VARCHAR et que je laisse Null par défaut non?
Ca changerai mon code. Pouvez vous m'aider et me dire ce que vous en pensez?
Ca changerai mon code. Pouvez vous m'aider et me dire ce que vous en pensez?
Quand vous cochez votre case dans votre formulaire qu'est ce qui s'affiche habituellement dans votre base de données si ce n'est pas les valeurs car moi j'ai des petits carrés et c'est pas top!
Quel caractère avez-vous? Moi j'aimerai bien mettre les valeurs de mes checkbox ms quel requête faut-il faire pour changer le caractères par la valeur.
Quel caractère avez-vous? Moi j'aimerai bien mettre les valeurs de mes checkbox ms quel requête faut-il faire pour changer le caractères par la valeur.
Sri Lumpa
Messages postés
177
Date d'inscription
mercredi 14 novembre 2007
Statut
Membre
Dernière intervention
1 juin 2010
69
25 juin 2008 à 14:51
25 juin 2008 à 14:51
Quand je coche une case de ma checkbox s'affiche la valeur contenue dans l'attribut "valeur" de la balise HTML correspondante à la checkbox.
moi j'ai un petit carré à cause de la migration sql et jsais pas d'où sort ce caractère! En tout cas il me pose problème. Quelqu'un serait comment modifier une migration sql.
Est ce que le type TINYINT est bien le type d'un booleen en mysql???
Est ce que le type TINYINT est bien le type d'un booleen en mysql???
Sri Lumpa
Messages postés
177
Date d'inscription
mercredi 14 novembre 2007
Statut
Membre
Dernière intervention
1 juin 2010
69
25 juin 2008 à 15:32
25 juin 2008 à 15:32
Là je suis désolé mais j'avoue que je reste sec, je ne sais plus comment t'aider.... :s
Et bien en fait là je suis en train d'essayer de refaire la mifration SQL et je voudrais juste savoir quel est le type dans mysql pour un booleen. Est ce que c'est bien TINYINT ???
MERCI
MERCI
J'ai essayé la requête proposé par clem285 mais ca ne marche pas. Mysql me dit qu'il y a une erreur de syntaxe.
Moi en fait ce que j'ai comme vakleur dans ma base de données c'est ca :
Donc c'est ca que je voudrais changer par un 'oui' par exemple et la je pourrais mieux y arriver avec mes cases à cocher je pense.
Moi en fait ce que j'ai comme vakleur dans ma base de données c'est ca :
Donc c'est ca que je voudrais changer par un 'oui' par exemple et la je pourrais mieux y arriver avec mes cases à cocher je pense.
25 juin 2008 à 11:04
Le foreach doit être