encore une problème...

encore une problème... - PHP - Programmation

Marsh Posté le 02-12-2005 à 09:32:05    

Bonjour à tous!!
 
Je suis toujours dans mes class et je viens de tomber devant un nouveau problème.
 
Je voudrai récupérer une valeur d'une méthode dans une autre.  
 

Code :
  1. function demande ()
  2.  {
  3.   echo "<FORM Method='POST' action='sup_user.php'>";       //sin on appuie sur le bouton on reste sur la mm page
  4.    echo '<p>E-mail : <input type = "text" name = "email"> </p>'; //creation du champ texte pour y taper l adresse mail
  5.    echo '<input type= "submit" name= "supprimer" value= "Effacer">'; //creation du bouton qui va permettre d' effacer
  6.   echo "</FORM>";
  7.   return (email);
  8. }
  9. function sup_user ()
  10.  {
  11.   $this->demande();
  12.   //permet de supprimer un utilisateur
  13.   //verification si l' adresse e-mail existe dans la BD
  14.   //$email=$_POST["e-mail"];                                //on recupere l' e-mail et on le met ds une variable
  15.   $sql="SELECT Mail FROM db_users WHERE Mail='$this->email'";
  16.   $result=mysql_query($sql);                              //on execute la requete et et on al palce dans une variable
  17.   $var=mysql_fetch_row ($result);                         //retour de la ligne de résultat MySQL sous la forme d'un tableau
  18.   $mail = $var[0];          //recuperation de la variable...
  19. }


 
donc je veux avoir mon email dans sup_user() pour continuer mon programme et voici le résultat :  
 
E-mail :  
 
Notice: Use of undefined constant email - assumed 'email' in c:\program files\easyphp1-7\www\tfe_class\class\class_user.inc.php on line 48
L'utilisateur est bien supprimer de notre liste
 
il fait toute les commande en une fois --> je ne peux pas mettre ma veuleur puis la supprimer...
 
Merci pour votre aide.

Reply

Marsh Posté le 02-12-2005 à 09:32:05   

Reply

Marsh Posté le 02-12-2005 à 10:24:59    

sebphp a écrit :

Bonjour à tous!!
 
Je suis toujours dans mes class et je viens de tomber devant un nouveau problème.
 
Je voudrai récupérer une valeur d'une méthode dans une autre.  
 

Code :
  1. function demande ()
  2. {
  3. echo "<FORM Method='POST' action='sup_user.php'>";     
  4. echo '<p>E-mail : <input type = "text" name = "email"> </p>';
  5. echo '<input type= "submit" name= "supprimer" value= "Effacer">';
  6.         echo "</FORM>";
  7. return (email);
  8. }




 

Citation :

Notice: Use of undefined constant email


Ca me parait clair non ?


---------------
Posté depuis des chiottes, sales. Me gusta.
Reply

Marsh Posté le 02-12-2005 à 10:36:32    

Bon, en plus de l'erreur retourné par php, voyont voir un peut ce que tu fait :
 
la fonction "demande()" affiche le formulaire puis retourne une valeur inexistante jamais déclaré, remplis ou utilisé par cette fonction. Pourquoi lui faire retouner cette valeur qui n'existe pas? J'ai l'impression que tu te dis que ca va afficher le formulaire et attendre que le visiteur le remplisse avant de passer à la suite, mais ca sera jamais le cas vu que php s'en contrefiche de comment le navigateur est censé traité ce qu'on lui envoie. Php s'exécute jusqu'au bout et ensuite, il réagira à la demande suivante du navigateur et ce de maniére totalement séparé de l'exécution actuelle.
 
La fonction "sup_user ()" demande l'affichage du formulaire et n'utilise pas la valeur qu'est censé retourné l'autre fonction. A quoi ca sert de faire retourner une valeur par la fonction "demande()" alors que la fonction "sup_user ()" s'en contre fiche de cette valeur? Ensuite, tu cherches le mail dans la base ... pour ne pas l'utiliser. A quoi ca sert alors d'aller la chercher dans la base si c'est pour ne rien en faire du tout?
 
 
J'ai l'impression que tu n'as pas une vision claire de ce que tu veux faire.
 
 
PS : mot entre " ou entre ' = chaine de caractére
Mot précédé par un $ et qui n'est pas entre ' = variable
mot suivit par des () qui n'est pas entre " ou entre ' = fonction
les autres mots = contantes


Message édité par omega2 le 02-12-2005 à 10:38:36
Reply

Marsh Posté le 02-12-2005 à 19:33:39    

C'est de la modélisation objet de base, si dans une classe tu as des données qui servent partout et c'est un peu le but :D suffit d'utiliser une variable de classe accessible de partout :)
 
Vois les bases de la prog objet après tu y verras plus clair ;)

Reply

Marsh Posté le 02-12-2005 à 21:26:23    

c'est vrai que je débute en POO et ce n'est pas très facile de quitter la programmation sequentielle...je vais plonger dans un bouquin de POO avant de continuer... :-)

Reply

Marsh Posté le 02-12-2005 à 22:51:53    

C'est vrai que la oprogrammation objet, c'est pas facile tant qu'on a pas bient tilté comment ca marche. j'ai mis vraiment longtemps pour y arriver mais une fois que t'as pris le coup, ca va aussi facilement que la programation procédurale.
 
Au fait, programmation séquentielle veut dire que les instructions sont apellé l'une aprés l'autre. L'inverse c'est de la programmation multithreadé, ce qui veut dire que plusieurs sections du programme fonctionneront en paralléle. En fait, on peut aussi bien faire de la programmation séquentielle en faisant de la programmation objet qu'en faisant de la programmation procédurale. Et l'inverse est vrai aussi, on peut faire de la programmation multithreadé dans les deux cas.

Reply

Marsh Posté le 05-12-2005 à 01:40:34    

omega2 a écrit :

C'est vrai que la oprogrammation objet, c'est pas facile tant qu'on a pas bient tilté comment ca marche. j'ai mis vraiment longtemps pour y arriver mais une fois que t'as pris le coup, ca va aussi facilement que la programation procédurale.
 
Au fait, programmation séquentielle veut dire que les instructions sont apellé l'une aprés l'autre. L'inverse c'est de la programmation multithreadé, ce qui veut dire que plusieurs sections du programme fonctionneront en paralléle. En fait, on peut aussi bien faire de la programmation séquentielle en faisant de la programmation objet qu'en faisant de la programmation procédurale. Et l'inverse est vrai aussi, on peut faire de la programmation multithreadé dans les deux cas.


La programation procédurale est toujours séquentielle dans la manière de l'écrire :) L'objet surtout avec les évenements si y'en a et c'est plutot ça qui change, quand t'écris "tu sais pas" dans quel ordre ça va arriver :)
 
Et dans un système mono processus, le procédural est séquentiel :) La prog en pluti process ou gestion de père/fils c'est pas la base pour quelqu'un qui fait du php ;)
 
Je pense que c'est çà qu'il voulait dire :) Après l'objet avec gestion d'évenements dans une structure multi-threads ça doit être le bordel à gérer :D

Reply

Sujets relatifs:

Leave a Replay

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