Probleme incrémentation compteur résultat formulaire

Résolu
alnkike Messages postés 6 Date d'inscription mercredi 22 janvier 2003 Statut Membre Dernière intervention 15 août 2005 - 13 août 2005 à 21:30
alnkike Messages postés 6 Date d'inscription mercredi 22 janvier 2003 Statut Membre Dernière intervention 15 août 2005 - 15 août 2005 à 14:52
voici mon code qui permet d'afficher le résultat
de 2 formulaire précédents mais le probleme c'est que les variables ne
s'incrémentent pas elle reste bloquer à 1


<?php


$a=0;


$b=0;


$d=0;


?>


<?php


switch($_POST['test21'])


{


case'coiffeur':


$a++;


break;





case'pharmacien':


$b++;


break;





case'medecin':


$b++;


break;





case'vous':


$d++;


break;


}


?>


<?php


switch($_POST['test22'])


{


case'classique':


$a++;


break;





case'original':


$b++;


break;





case'toriginal':


$d++;


break;


}


?>


<?


echo "$a";


?>





merci de votre aide j'ai chercher toute la journée en vain

13 réponses

malik7934 Messages postés 1154 Date d'inscription mardi 9 septembre 2003 Statut Membre Dernière intervention 15 août 2009 17
13 août 2005 à 22:17
" Comme ceci c'est donc correct?"... Ben essaie!
3
malik7934 Messages postés 1154 Date d'inscription mardi 9 septembre 2003 Statut Membre Dernière intervention 15 août 2009 17
13 août 2005 à 21:41
$a=0;
$b=0;
$d=0;

... ca veut dire que chaque fois que tu appelles le formulaire, ces variables sont mises à zéro!



Essaie en effaçant ces trois lignes...
0
alnkike Messages postés 6 Date d'inscription mercredi 22 janvier 2003 Statut Membre Dernière intervention 15 août 2005
13 août 2005 à 21:49
merci d'avoir répondu aussi vite mais le compteur reste bloquer a 1
0
malik7934 Messages postés 1154 Date d'inscription mardi 9 septembre 2003 Statut Membre Dernière intervention 15 août 2009 17
13 août 2005 à 21:52
Hehe, ouais en fait c'est logique: php met lui même les variables à zéro.



Essaie avec les sessions pour a,b et d par exemple, ca marchera, sûr!



Le truc, c'est que chaque fois que le script est appelé, les variables
sont remises à zéro! Donc soit tu passes par les sessions, soit les
cookies, soit encore tu les passes par $_GET ou $_POST.... quoi qu'il
en soit, faut les passer ou les stocker!
0

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

Posez votre question
alnkike Messages postés 6 Date d'inscription mercredi 22 janvier 2003 Statut Membre Dernière intervention 15 août 2005
13 août 2005 à 21:59
Est-ce que ceci est correct car j'ai toujours 1

<?

session_start();

?>

<?php

switch($_POST['test21'])

{

case'coiffeur':

$_SESSION['a']=$a++;

break;



case'pharmacien':

$_SESSION['b']=$b++;

break;



case'medecin':

$_SESSION['b']=$b++;

break;



case'vous':

$_SESSION['b']=$d++;

break;

}

?>

<?php

switch($_POST['test22'])

{

case'classique':

$_SESSION['a']=$a++;

break;



case'original':

$_SESSION['b']=$b++;

break;



case'toriginal':

$_SESSION['d']=$d++;

break;

}

?>
0
malik7934 Messages postés 1154 Date d'inscription mardi 9 septembre 2003 Statut Membre Dernière intervention 15 août 2009 17
13 août 2005 à 22:04
Nah!

<?php

session_start();



switch($_POST['test21'])

{

case'coiffeur':

$_SESSION['a']++;

break;



case'pharmacien':

$_SESSION['b']++;

break;



case'medecin':

$_SESSION['b']++;

break;



case'vous':

$_SESSION['b']++;

break;

}

?>

etc...



Plus d'infos sur http://nl3.php.net/manual/fr/ref.session.php !
0
ah merci en effet j'avais essayer les sessions mais mon erreur était
que je ne m'était pas session start en début de chaque récupération de
formulaire

<?php
session_start();

switch($_POST['test21'])
{
case'coiffeur':
$_SESSION['a']++;
break;

case'pharmacien':
$_SESSION['b']++;
break;

case'medecin':
$_SESSION['b']++;
break;

case'vous':
$_SESSION['b']++;
break;
}
?>

<?php

session_start();

switch($_POST['test22'])

{

case'classique':

$_SESSION['a']++;

break;



case'original':

$_SESSION['b']++;

break;



case'toriginal':

$_SESSION['d']++;

break;

}

?>



Comme ceci c'est donc correct?

En tout cas merci beaucoup pour ton aide précieuse
0
alnkike Messages postés 6 Date d'inscription mercredi 22 janvier 2003 Statut Membre Dernière intervention 15 août 2005
13 août 2005 à 22:32
sniff ca marche pas je comprend pas ce qui vas pas
0
alnkike Messages postés 6 Date d'inscription mercredi 22 janvier 2003 Statut Membre Dernière intervention 15 août 2005
13 août 2005 à 22:32
sniff ca marche pas je comprend pas ce qui vas pas
0
cs_Anthomicro Messages postés 9433 Date d'inscription mardi 9 octobre 2001 Statut Membre Dernière intervention 13 avril 2007 8
15 août 2005 à 00:33
Salut,



vérifie avec isset() que tes formulaires sont bien transmis, et pour
que ça marche il faut stocker une valeur initiale pour ton compteur...
donc le coup de la session ça va pour un seul visiteur, mais ça sera
remis à zéro après... Et n'utilise pas de variables non définies, il
faut les définir avant, PHP ne met pas 0 par défaut...

<hr size="2" width="100%"><li>Entraide, dépannage et vulgarisation informatique : Mon site de vulgarisation informatique</li>
0
malik7934 Messages postés 1154 Date d'inscription mardi 9 septembre 2003 Statut Membre Dernière intervention 15 août 2009 17
15 août 2005 à 08:06
Antho: "PHP ne met pas 0 par défaut", alors question: pourquoi si je ne definis pas une variable et qu'en suite si je fais ++, elle vaut 1? A mon avis c'est que comme php voit une operation sur un nombre, il decide que la variable non definie en est un et le met a zero... mais j'ai aucune preuve de ce que j'avance
0
cs_Anthomicro Messages postés 9433 Date d'inscription mardi 9 octobre 2001 Statut Membre Dernière intervention 13 avril 2007 8
15 août 2005 à 11:29
"alors question: pourquoi si je ne definis pas une variable et qu'en suite si je fais ++, elle vaut 1"



Tout à fait, mais si tu mets l'error_reporting à E_ALL, tu auras une
erreur, ta variable ne vaudra pas 1. Ce que je veux dire par là c'est
que la variable est mise à 0 avec une certaine configuration de PHP qui
n'est pas la bonne malheureusement.



Il faut définir la variable avant pour ne pas avoir d'erreurs.

<hr size="2" width="100%"><li>Entraide, dépannage et vulgarisation informatique : Mon site de vulgarisation informatique</li>
0
alnkike Messages postés 6 Date d'inscription mercredi 22 janvier 2003 Statut Membre Dernière intervention 15 août 2005
15 août 2005 à 14:52
Merci a tous de votre aide, j'ai réussi a résoudre mon probleme avec les sessions.
0
Rejoignez-nous