script de calendrier avec cases a cocher - PHP - Programmation
Marsh Posté le 08-11-2005 à 14:40:03
Regarde le code que ça génère, je suis sur que tu verras un truc qui me chifonne
Marsh Posté le 08-11-2005 à 15:03:39
tu veux dire le code quand j'ouvre la page, quand je clique sur Afficher ou quand je clique sur Enregistrer ?
Edit: je precise que je n'ai pas encore codé l'enregistrement dans la DB !
J'essaie pour l'instant de capter quelles cases ont été cochées .
Marsh Posté le 08-11-2005 à 15:09:35
Oui c'est cela T'a vérifier la source html générée? Sinon C'est $_POST[] qu'il faut dérouler
Marsh Posté le 08-11-2005 à 15:32:03
désolé, mais je ne comprends pas ta réponse
la fonction ne rentre pas dans cette boucle
# foreach($_POST['mycheckbox'] as $value){
# echo 'test';
# echo "<BR> You clicked checkbox number " .$value, "\n";
# }
# }
Marsh Posté le 08-11-2005 à 15:56:20
Si tu le dis alors... Je me suis pas attarder plus que ça
Marsh Posté le 08-11-2005 à 16:12:35
Ok, je vois
Marsh Posté le 08-11-2005 à 17:43:32
Salut,
je pense pas que php comprenne "foreach($_POST['mycheckbox'] as $value)", je crois que pour verifier si une case a été cochée t'aies besoin de isset.
moi je ferais comme ca:
pour chaque checkbox, crée un nom avec un chiffre checkbox1, checkbox2....checkboxn
ensuite vérifie la validité de chaque checkbox comme ca:
for($i=1;$i<=nombre de checkbox;$i++)
{//génère le nom de ta checkbox
$name="checkbox"."$i";
if(isset($_POST[$name]))
{
echo "<BR> You clicked checkbox number " .$i, "\n";
}
}
Voilà j'espère que ca peux t'aider.
++
Marsh Posté le 08-11-2005 à 18:08:40
protoss_tth a écrit : Salut, |
Ca utilise une méthode pareille et ca ose la conseiller en laissant entendre que l'autre méthode ne risque pas de marcher?
Une checkbox en
Code :
|
et le tour est joué. Pourquoi se prendre la tête avec de trés mauvaises méthodes?
Evidement, il faut donner une valeur différente à chaque checkbox. En tout cas, le isset sera utilisé une seule fois pour vérifier qu'au moins une case a été coché et ensuite on parcourt avec le foreach pour savoir lesquelles et on perd pas notre temps à faire plusieurs disaines de tests pour une seule case coché.
friday_13 > Fait un
Code :
|
quelque part, ca t'affichera le contenu exact et intégral du tableau $_POST avec les noms de cases et companies. Ca te permettra de voir pourquoi ca marche pas comme prévus.
Marsh Posté le 08-11-2005 à 18:54:56
salut
le resultat en HTML pour les checkbox donne ceci :
<td align="center">6<input type="checkbox" name="mycheckbox[]" value="6" />
<td align="center">7<input type="checkbox" name="mycheckbox[]" value="7" />
etc...
Marsh Posté le 09-11-2005 à 11:27:31
Monsieur veut se donner de l'importance
Sous ses airs de seigneur, exprime son arrogance
Le niais brillant cependant par sa cécité
Car d'humilité, et bien, point n'en est.
-protoss_tth-
Marsh Posté le 09-11-2005 à 14:15:13
protoss_tth a écrit : |
les mp, tu connais
Marsh Posté le 09-11-2005 à 15:34:53
ouaip , à ce sujet, omega2 et moi même te présentons nos excuses pour le spammage intempestif du topic.
revenons à nos moutons:
Voilà qui devrait faire l'unanimité
Code :
|
je pense qu'omega2 poussera une gueulante haut et fort si cela ne lui convient pas.
++ et bon codage friday.
Marsh Posté le 09-11-2005 à 15:42:38
C'est bien ça.
Avec cette méthode, il n'y a même pas besoin des 0 1 et 2 entre crochet vu que php rajoutera de lui même les indices en recevant les données si les indices ne sont pas indiqué. Mais c'est vrai qu'avec un foreach derriére, ca changera rien.
PS : Désolé, je suis parfois de mauvaises humeurs et quand je vois de trés mauvais conseils ca a tendance à me mettre en colére dans ces moment là.
Marsh Posté le 09-11-2005 à 16:56:57
bon , copaings alors ?
merci pour l'aide, je teste ça ce soir et je vous dis quoi
Marsh Posté le 17-11-2005 à 14:57:52
bon ben j'ai honte,
en fait comme le code html du calendrier est genere apres le tag </FORM>
les checkbox n'etaient pas dans la variable $_POST, logique.
Marsh Posté le 08-11-2005 à 14:25:01
Bonjour,
voila, j'ai adapté ce script que j'ai pompé dans un bouquin (PHP5 O'Reilly).
Il affiche un calendrier mensuel selon la selection du mois et de l'annee dans 2 listes deroulantes.
j'ai ajouté une case à cocher par jour du mois, pour que l'utilisateur puisse cocher les jours qu'il souhaite reserver.
j'ai donc ajouté un bouton enregistrer, qui normalement devrait sauvegarder la selection dans la DB MySQL.
malheureusement, la methode que j'utilise pour parcourir le tableau de cases a cocher n'a pas l'air de fonctionner.
Mais je ne sais pas a quel niveau se situe l'erreur de logique.
merci d'avance a qui pourra m'aider !
la fonction que j'ai modifié est process_form() vers la ligne 72
---------------
L'homme de bien ne demande rien qu'à lui-même ; l'homme de peu demande tout aux autres. - Confucius