Les teste de condition
Fermé
samiapirou
Messages postés
112
Date d'inscription
dimanche 16 juin 2013
Statut
Membre
Dernière intervention
11 novembre 2015
-
10 août 2013 à 18:53
samiapirou Messages postés 112 Date d'inscription dimanche 16 juin 2013 Statut Membre Dernière intervention 11 novembre 2015 - 10 août 2013 à 23:24
samiapirou Messages postés 112 Date d'inscription dimanche 16 juin 2013 Statut Membre Dernière intervention 11 novembre 2015 - 10 août 2013 à 23:24
A voir également:
- Les teste de condition
- Teste pc - Guide
- Excel cellule couleur si condition texte - Guide
- Teste disque dur - Télécharger - Informations & Diagnostic
- Tester les composants de son pc - Guide
- Condition et excel - Guide
3 réponses
ElementW
Messages postés
4816
Date d'inscription
dimanche 12 juin 2011
Statut
Contributeur
Dernière intervention
5 octobre 2021
1 225
Modifié par gravgun le 10/08/2013 à 19:26
Modifié par gravgun le 10/08/2013 à 19:26
Salut, problème d'accolades:
ton else et son contenu sont DANS le bloc du if, or ils doivent être apès, comme ceci:
Au passage, l'indentation du code (décalage vers la droite selon les blocs de code, comme dans l'exemple) ne devrait pas être en option, et les forums de CommentCaMarche ont une balise <code ></code > pour y rendre le code plus lisible.
from human import idiocy
del idiocy
ton else et son contenu sont DANS le bloc du if, or ils doivent être apès, comme ceci:
if(condition) { // Code } else if(condition2) { // Sinon... }
Au passage, l'indentation du code (décalage vers la droite selon les blocs de code, comme dans l'exemple) ne devrait pas être en option, et les forums de CommentCaMarche ont une balise <code ></code > pour y rendre le code plus lisible.
from human import idiocy
del idiocy
ElementW
Messages postés
4816
Date d'inscription
dimanche 12 juin 2011
Statut
Contributeur
Dernière intervention
5 octobre 2021
1 225
10 août 2013 à 19:46
10 août 2013 à 19:46
Autre chose (pourtant évidente) que je n'ai pas remarquée: le test d'égalité s'effectue avec DEUX symboles égal, en utilisant un seul on affecte une valeur à une variable.
Le contenu d'un if($eta='anseig') s'éxécutera toujours car l'expression $eta='anseig' renverra toujours "anseig", valeur considérée comme true par PHP.
Le contenu d'un if($eta='anseig') s'éxécutera toujours car l'expression $eta='anseig' renverra toujours "anseig", valeur considérée comme true par PHP.
samiapirou
Messages postés
112
Date d'inscription
dimanche 16 juin 2013
Statut
Membre
Dernière intervention
11 novembre 2015
1
10 août 2013 à 20:01
10 août 2013 à 20:01
ttoujour ca marche pas il prend la première condition
samiapirou
Messages postés
112
Date d'inscription
dimanche 16 juin 2013
Statut
Membre
Dernière intervention
11 novembre 2015
1
10 août 2013 à 21:35
10 août 2013 à 21:35
aidez-moi svp
samiapirou
Messages postés
112
Date d'inscription
dimanche 16 juin 2013
Statut
Membre
Dernière intervention
11 novembre 2015
1
10 août 2013 à 21:40
10 août 2013 à 21:40
pouvez vous me donner une autre structure c'est de le faire avec les case mais je ne sais pas comment le faire
ElementW
Messages postés
4816
Date d'inscription
dimanche 12 juin 2011
Statut
Contributeur
Dernière intervention
5 octobre 2021
1 225
10 août 2013 à 21:51
10 août 2013 à 21:51
" je ne sais pas comment le faire": je ne suis pas là pour vous donner un cours, si vous en cherchez un , allez voir sur le Site du Zéro, y'a une section sur les switch en PHP.
samiapirou
Messages postés
112
Date d'inscription
dimanche 16 juin 2013
Statut
Membre
Dernière intervention
11 novembre 2015
1
10 août 2013 à 22:20
10 août 2013 à 22:20
j'ai l'ai fair avec les case mais il m'affiche cette erreur
Parse error: syntax error, unexpected T_STRING, expecting T_CASE or T_DEFAULT or '}' in C:\Users\CBS-COMPUTER\Desktop\EasyPHP-5.3.3.1\www\doc1\panier_fct_vehi.php on line 134
voila le code:::::
function MontantGlobal(){
$req1= mysql_query("SELECT COUNT(*) AS existe1 FROM client ")or die(mysql_error());
$donnees1 = mysql_fetch_array($req1);
if($donnees1['existe1']!=0)
{
$req1= mysql_query("SELECT * FROM client")or die(mysql_error());
$donnees = mysql_fetch_array($req1);
$_SESSION['etat_cli']=$donnees['etat_client']; //variable session
$eta=$_SESSION['etat_cli'];}
$total=0;
for($i = 0; $i < count($_SESSION['panier']['refProduit']); $i++)
{
switch($etat){
case0:
$total += $_SESSION['panier']['qteProduit'][$i] * $_SESSION['panier']['prixProduit'][$i];break;
case1:
$total += $_SESSION['panier']['qteProduit'][$i] * $_SESSION['panier']['prixAnseig'][$i];break;
case2:
$total += $_SESSION['panier']['qteProduit'][$i] * $_SESSION['panier']['prixLicence'][$i];break;
default:
}
return $total;
}
Parse error: syntax error, unexpected T_STRING, expecting T_CASE or T_DEFAULT or '}' in C:\Users\CBS-COMPUTER\Desktop\EasyPHP-5.3.3.1\www\doc1\panier_fct_vehi.php on line 134
voila le code:::::
function MontantGlobal(){
$req1= mysql_query("SELECT COUNT(*) AS existe1 FROM client ")or die(mysql_error());
$donnees1 = mysql_fetch_array($req1);
if($donnees1['existe1']!=0)
{
$req1= mysql_query("SELECT * FROM client")or die(mysql_error());
$donnees = mysql_fetch_array($req1);
$_SESSION['etat_cli']=$donnees['etat_client']; //variable session
$eta=$_SESSION['etat_cli'];}
$total=0;
for($i = 0; $i < count($_SESSION['panier']['refProduit']); $i++)
{
switch($etat){
case0:
$total += $_SESSION['panier']['qteProduit'][$i] * $_SESSION['panier']['prixProduit'][$i];break;
case1:
$total += $_SESSION['panier']['qteProduit'][$i] * $_SESSION['panier']['prixAnseig'][$i];break;
case2:
$total += $_SESSION['panier']['qteProduit'][$i] * $_SESSION['panier']['prixLicence'][$i];break;
default:
}
return $total;
}
ElementW
Messages postés
4816
Date d'inscription
dimanche 12 juin 2011
Statut
Contributeur
Dernière intervention
5 octobre 2021
1 225
10 août 2013 à 22:24
10 août 2013 à 22:24
Il manque un espace entre les "case" et le chiffre associé.
samiapirou
Messages postés
112
Date d'inscription
dimanche 16 juin 2013
Statut
Membre
Dernière intervention
11 novembre 2015
1
10 août 2013 à 22:32
10 août 2013 à 22:32
comment associé c chiffre la
ElementW
Messages postés
4816
Date d'inscription
dimanche 12 juin 2011
Statut
Contributeur
Dernière intervention
5 octobre 2021
1 225
10 août 2013 à 22:50
10 août 2013 à 22:50
case 0:
samiapirou
Messages postés
112
Date d'inscription
dimanche 16 juin 2013
Statut
Membre
Dernière intervention
11 novembre 2015
1
10 août 2013 à 22:59
10 août 2013 à 22:59
je l'ai fais ca
samiapirou
Messages postés
112
Date d'inscription
dimanche 16 juin 2013
Statut
Membre
Dernière intervention
11 novembre 2015
1
10 août 2013 à 23:00
10 août 2013 à 23:00
mon problème c'est que il me donne toujour la première condition et je ne sais pas pour quoi
10 août 2013 à 19:39
function MontantGlobal(){
$total=0;
for($i = 0; $i < count($_SESSION['panier']['refProduit']); $i++)
{
$req1= mysql_query("SELECT COUNT(*) AS existe1 FROM client ")or die(mysql_error());
$donnees1 = mysql_fetch_array($req1);
if($donnees1['existe1']!=0)
{
$req1= mysql_query("SELECT * FROM client")or die(mysql_error());
$donnees = mysql_fetch_array($req1);
$_SESSION['etat_cli']=$donnees['etat_client']; //variable session
$eta=$_SESSION['etat_cli'];
if($eta='anseig'){
$total += $_SESSION['panier']['qteProduit'][$i] * $_SESSION['panier']['prixAnseig'][$i];}
else if($eta='particulier'){
$total += $_SESSION['panier']['qteProduit'][$i] * $_SESSION['panier']['prixProduit'][$i];
}
}
return $total;
}
}