PHP|Débutant :: Forums

Advertisement

Besoin d'aide ? N'hésitez pas, mais respectez les règles

Vous n'êtes pas identifié(e).

#1 03-06-2013 09:57:08

seyco1
Membre
Inscription : 03-06-2013
Messages : 4

Souci sur ma fonction qui divise par 0

Bonjour je suis en train de créer une petite fonction pour mon site afin que ma fille puisse faire des maths tout en s'amusant tongue
Sur ma page, php me retourne une erreur que je vous indique plus bas.
J'aurais besoin d'un petit coup de pouce svp.


L'erreur. Warning: Division by zero in

Ma fonction.

 function Calcul ($total_sucettes,$total_frites)
 {
   $resultat=($total_sucettes/$total_frites)*10);

    $requete_tp="SELECT * FROM nouriture WHERE total_sucettes='$total_sucettes' AND total_frites='$total_frites'";
    if ($envoi_tp=mysql_query($requete_tp))
    {
      if ($data_tp=mysql_fetch_array($envoi_tp))
      mysql_free_result($envoi_tp);
    }
   return $resultat;
  }
 

Merci d'avance à qui voudra bien m'aider un peut ^^.

Hors ligne

#2 03-06-2013 11:02:25

Maljuna Kris
Infantimigulo
Lieu : Douarnenez 29100 Breizh Izel
Inscription : 08-05-2009
Messages : 2 453
Site Web

Re : Souci sur ma fonction qui divise par 0

saluton
Si tu ne testes pas que $total_frites n'est pas égal à zéro avant de l'utiliser comme diviseur il ne faut pas t'étonner que, de temps à autres, si la fonction Calcul reçoit un $total_frites égal à zéro PHP se mette à tousser.
Cela dit, je ne comprends pas bien à quoi sert la requête SQL dans cette fonction ni d'où tu sors ces variables $envoi_tp et $data_tp.
Tout cela m'a l'air bien confus pour ne pas dire pire.


Gloire à qui n'ayant pas d'idéal sacro-saint,
Se borne à ne pas trop emmerder ses voisins. G. Brassens Don Juan 1976.
Avĉjo MoKo kantas
La chaîne YouTube MoKo Papy

Hors ligne

#3 03-06-2013 11:19:34

Pierrot
Ancien nouveau
Inscription : 08-05-2009
Messages : 1 195

Re : Souci sur ma fonction qui divise par 0

MK, tu n'as rien compris big_smile
Cette fonction est pour faire perdre du temps big_smile big_smile

a++

Hors ligne

#4 03-06-2013 11:26:26

seyco1
Membre
Inscription : 03-06-2013
Messages : 4

Re : Souci sur ma fonction qui divise par 0

Maljuna Kris a écrit :

saluton
Si tu ne testes pas que $total_frites n'est pas égal à zéro avant de l'utiliser comme diviseur il ne faut pas t'étonner que, de temps à autres, si la fonction Calcul reçoit un $total_frites égal à zéro PHP se mette à tousser.
Cela dit, je ne comprends pas bien à quoi sert la requête SQL dans cette fonction ni d'où tu sors ces variables $envoi_tp et $data_tp.
Tout cela m'a l'air bien confus pour ne pas dire pire.

Bonjour merci pour la réponse.
Etant débutant je dois forcément faire des erreurs ^^.
Ma requete sert à aller chercher des donnée sur une base c'est tout.
J'ai deja fais le test ca me retourne encore 0

          if($total_frites>0){
          $resultat=($total_sucettes/$total_frites)*10);
          }
          else{
          $resultat=($total_sucettes*10);
          }

Ps/ Merci Pierrot sans toi et ton soutiens j'aurai abandonné php dès aujourd'hui big_smile

Dernière modification par seyco1 (03-06-2013 11:40:36)

Hors ligne

#5 03-06-2013 11:47:46

Pierrot
Ancien nouveau
Inscription : 08-05-2009
Messages : 1 195

Re : Souci sur ma fonction qui divise par 0

heuuuuuuuu, tu fais du php ??? smile

a++

Hors ligne

#6 03-06-2013 11:54:58

seyco1
Membre
Inscription : 03-06-2013
Messages : 4

Re : Souci sur ma fonction qui divise par 0

Pierrot a écrit :

heuuuuuuuu, tu fais du php ??? smile

a++

J'apprend comme tout débutant mais heureusement que tu est la pour me soutenir haha....

Hors ligne

#7 03-06-2013 12:27:04

Maljuna Kris
Infantimigulo
Lieu : Douarnenez 29100 Breizh Izel
Inscription : 08-05-2009
Messages : 2 453
Site Web

Re : Souci sur ma fonction qui divise par 0

seyco1 a écrit :

J'ai deja fais le test ca me retourne encore 0

          if($total_frites>0){
          $resultat=($total_sucettes/$total_frites)*10);
          }
          else{
          $resultat=($total_sucettes*10);
          }

Pourquoi dis-tu "encore 0" ? avant ça te disait, m'a-t-il semblé,

" Warning: Division by zero in "

Quand on fait appel à une fonction qui attend des paramètres en entrée, il est prudent, voire essentiel, de tester non seulement la présence des paramètres dans l'appel mais leur compatibilité (type de données, plage de valeurs, ...) avec les traitements qu'elles vont subir au sein de la fonction.


Gloire à qui n'ayant pas d'idéal sacro-saint,
Se borne à ne pas trop emmerder ses voisins. G. Brassens Don Juan 1976.
Avĉjo MoKo kantas
La chaîne YouTube MoKo Papy

Hors ligne

#8 03-06-2013 13:20:00

seyco1
Membre
Inscription : 03-06-2013
Messages : 4

Re : Souci sur ma fonction qui divise par 0

Je dis 0 car j'ai avancé depuis tout à l'heure mais merci je prend note de se que vous m'avez dis je continue......

Hors ligne

#9 04-06-2013 00:09:58

Pierrot
Ancien nouveau
Inscription : 08-05-2009
Messages : 1 195

Re : Souci sur ma fonction qui divise par 0

>>J'apprend comme tout débutant mais heureusement que tu est la pour me soutenir haha....

désolé, je ne peu te soutenir, mes connaissances en php sont d'un autre age hmm

a++

Hors ligne

Pied de page des forums