Equivalent GOTO

Equivalent GOTO - PHP - Programmation

Marsh Posté le 29-04-2004 à 11:29:18    

Bonjour,  
 
Je suis en train de faire un scriopt d'envoi de mail et j'aimerais que lorsque le fichier est trop gros, ca me retourne sur une page en html une phrase significative.  
Mais je ne sais pas sortir de mon script. Quand j'utilise exit, die ou return, la page ne s'affiche pas.  
En voila sa structure :
 

Code :
  1. <html>
  2. <head>
  3. </head>
  4. <?php
  5. if (is_uploaded_file($_FILES["monfichier"]["tmp_name"])) {}
  6. else {
  7. $echo = "Le fichier n'a pas été uploadé (trop gros ?)";
  8. return;
  9. }
  10. etc...
  11. ?>
  12. <body>
  13. <? echo "$echo"; ?>
  14. </body>


 
Dans ce cas la, c'est le return que je cherche a remplacer...


Message édité par GENIUS999 le 29-04-2004 à 11:29:29
Reply

Marsh Posté le 29-04-2004 à 11:29:18   

Reply

Marsh Posté le 29-04-2004 à 11:30:27    

[:daplopbot]


---------------
brisez les rêves des gens, il en restera toujours quelque chose...  -- laissez moi troller sur discu !
Reply

Marsh Posté le 29-04-2004 à 11:35:51    

utilises la redirection avec le header :

Code :
  1. header("location : mapage.php" );
  2. return;


ou quelque chose du genre...
attention : cela nécessite de ne rien envoyer comme info avant (genre toutes les balises head etc...)


Message édité par titione le 29-04-2004 à 11:36:13
Reply

Marsh Posté le 29-04-2004 à 11:45:36    


 
qu'est ce qu'il y a ??

Reply

Marsh Posté le 29-04-2004 à 12:03:40    

genius999 a écrit :

qu'est ce qu'il y a ??


bin comment dire il y a un peu de code à tendance collector dans ton truc.
5 étoiles pour:

Code :
  1. if (is_uploaded_file($_FILES["monfichier"]["tmp_name"])) {}


et 4 étoiles pour (seuleument 4 vu que je pense que tu as pris le return pour un goto mais je suis pas sur)

Code :
  1. else {
  2.     $echo = "Le fichier n'a pas été uploadé (trop gros ?)";
  3.     return;
  4.   }


Reply

Marsh Posté le 29-04-2004 à 12:11:57    

Désolé, mais je suis un vrai debutant sous php (si tu ne l'avais pas deja remarqué  :D ).
 
Enfin, bref, pour le premier point, peux tu m'expliquez concretement se qui ne va pas, je ne suis pas contre les critiques, mais je les prefere avec des explications.
Par contre, pour le deuxieme, je n'ai pas pris le return pour un goto, car d'apres mes recherches (mais je peux me planter), il n'y a pas d'equivalent a goto en php...


Message édité par GENIUS999 le 29-04-2004 à 12:13:08
Reply

Marsh Posté le 29-04-2004 à 12:15:43    

je corrige le premier, dis moi si j'ai bon :
 

Code :
  1. if (!is_uploaded_file($_FILES["monfichier"]["tmp_name"])){
  2.     $echo = "Le fichier n'a pas été uploadé (trop gros ?)";
  3.     return;
  4.   }


Message édité par GENIUS999 le 29-04-2004 à 12:18:13
Reply

Marsh Posté le 29-04-2004 à 13:13:22    

c'est bien mieux ... mais je ne saisis toujours pas a quoi te sert le return ... surtout return rien.

Reply

Marsh Posté le 29-04-2004 à 13:57:29    

En gros, je cherche à sortir de mon code php et continuer l'affichage de la page html.
Pour cela, j'ai deja essayer exit, break et ... return, mais rien ne fait se que je veux.
Le break me cause un erreur, le exit et le break sortent bien du code, mais la page ne s'affiche pas...


Message édité par GENIUS999 le 29-04-2004 à 13:57:55
Reply

Marsh Posté le 29-04-2004 à 14:29:10    

euh ... ce que tu veux faire c'est si ton fichier est chargé une action, sinon une autre action.
Pourquoi tu fais pas simplement:

Code :
  1. if (is_uploaded_file($_FILES["monfichier"]["tmp_name"]))
  2.   {
  3.       etc... // le code qui correspond à etc et que tu faisais après ton if.
  4.   }
  5.   else
  6.   {
  7.     $echo = "Le fichier n'a pas été uploadé (trop gros ?)";
  8.   }


et tu n'as pas besoin de te compliquer la vie!!!


Message édité par anapajari le 29-04-2004 à 14:29:34
Reply

Marsh Posté le 29-04-2004 à 14:29:10   

Reply

Marsh Posté le 29-04-2004 à 14:32:47    

les goto, c'est mal :o
avec beaucoup d'expérience, ça peut être bien, mais pas avant (je parle en années hein, pas en semaines ou en mois).


---------------
Whichever format the fan may want to listen is fine with us – vinyl, wax cylinders, shellac, 8-track, iPod, cloud storage, cranial implants – just as long as it’s loud and rockin' (Billy Gibbons, ZZ Top)
Reply

Marsh Posté le 29-04-2004 à 14:59:59    

BASIC revival :)

Reply

Marsh Posté le 29-04-2004 à 15:12:17    

anapajari a écrit :

euh ... ce que tu veux faire c'est si ton fichier est chargé une action, sinon une autre action.
Pourquoi tu fais pas simplement:

Code :
  1. if (is_uploaded_file($_FILES["monfichier"]["tmp_name"]))
  2.   {
  3.       etc... // le code qui correspond à etc et que tu faisais après ton if.
  4.   }
  5.   else
  6.   {
  7.     $echo = "Le fichier n'a pas été uploadé (trop gros ?)";
  8.   }


et tu n'as pas besoin de te compliquer la vie!!!


 
C'est ce que j'etait en train de faire. Merci   :)  
Et donc apparement, il n'y a pas de solution goto ou equivalent en php?

Reply

Sujets relatifs:

Leave a Replay

Make sure you enter the(*)required information where indicate.HTML code is not allowed