|
Publicité | ||||||||||||||||||||||
|
|
#1 | ||||
|
Membre actif
![]() Inscription : avril 2008 Messages : 526 ![]() |
Bonjour ,
J'ai une table note definie de cette manière : Code :
Ma formule est moy=(1/3) *NoteTp+(2/3)*NoteExam. Sachant que je ne suis pas obligé de rentrer une note de tp, je fais la distinction en différents cas. Mon pb est que mon programme n'arrive pas à faire la distinction entre un champ vide et une note égale à zéro. Si qq sait comment contourner le pb, merci. Code :
|
||||
|
|
00
|
|
|
#2 | ||||
|
Membre chevronné
![]() Inscription : juin 2004 Messages : 726 ![]() |
Bonjour,
Premièrement tu définis trop de cas dans ton algo. Tu pourrais le simplifier comme ceci : Code :
Or, intval d'une chaîne vide renvoie 0... Donc ton cas où la chaîne serait vide est donc toujours "zappé"... d'où : Code :
__________________
Dernière modification par pc.bertineau ; 09/03/2010 à 12h15. |
||||
|
00
|
|
|
#3 |
|
Expert Confirmé
![]() Inscription : janvier 2010 Messages : 2 242 ![]() |
Code :
$noteExam=parseInt($_POST['NOTEEXAMEN']); ![]() Il n'y aurait pas une ch'tite confusion avec du Javascript par hasard ? Ca ne serait pas plutôt intval(...) ?
__________________
Win XP | WampServer 2.2 | Apache 2.2.21 | Php 5.3.8 | MySQL 5.5.16 Si debugger, c'est supprimer des bugs, alors programmer ne peut être que les ajouter [Edsger Dijkstra] |
|
|
00
|
|
|
#4 | ||
|
Membre actif
![]() Inscription : avril 2008 Messages : 526 ![]() |
Merci pour la réponse mais même si j'utilise cela comme code
Code :
|
||
|
|
00
|
|
|
#5 | |||||||
|
Expert Confirmé
![]() Inscription : janvier 2010 Messages : 2 242 ![]() |
Citation:
0 étant une exception, typer cette donnée dès le départ n'est pas la solution effectivement, car si c'est une chaine vide (donc normalement NULL) ça va la modifiée et obtenir 0. Impossible de faire faire le distingo entre 0 et NULL du coup. Un truc comme ceci peut être : Code :
Ou alors peut être, une déclinaison : Code :
Code :
Ou alors peut être faudrait il avoir une autre approche, ça dépend des traitements, et calculs. Si par exemple une note a une valeur, que ce soit 0 ou une valeur positive ça débouche sur les mêmes calcul, alors vérifier si elle vaut 0 ne serait pas vraiment utile. Vérifier si elle vaut rien, nulle ou vide (mais pas 0) serait celle ci qui ferait l'objet d'une exception. Si les calculs diffèrent dans les 3 cas : null, vide et positif, alors il faudra faire 3 alternatives. Sinon, il y a peut être moyen d'en éliminer une, faut voir. Je n'ai pas suivi tes calculs, mais je pense que tu devrais le savoir.
__________________
Win XP | WampServer 2.2 | Apache 2.2.21 | Php 5.3.8 | MySQL 5.5.16 Si debugger, c'est supprimer des bugs, alors programmer ne peut être que les ajouter [Edsger Dijkstra] Dernière modification par RunCodePhp ; 09/03/2010 à 08h49. |
|||||||
|
|
00
|
|
|
#6 | ||||
|
Membre chevronné
![]() Inscription : juin 2004 Messages : 726 ![]() |
Citation:
Citation:
Code :
__________________
|
||||
|
00
|
|
|
#7 |
|
Membre actif
![]() Inscription : avril 2008 Messages : 526 ![]() |
Ok merci beaucoup pour les réponse.
Sinon, j'aurais voulu savoir si il y a un équivalent de intval pour les float ? Merci. |
|
|
00
|
|
|
#8 |
|
Membre actif
![]() Inscription : avril 2008 Messages : 526 ![]() |
Désolé c'est floatval evidemment.
|
|
|
00
|
Copyright © 2000-2012 - www.developpez.com