J'apprend le php aidez moi !

J'apprend le php aidez moi ! - PHP - Programmation

Marsh Posté le 11-09-2005 à 18:19:04    

Salut à tous ! j'ai décidé de me mettre au php ! Bon jusqu'a la c'est bien...
 
Je viens seulement de débuter (ça fait depuis hier que j'apprend)
et je commence à faire mes prores scripts php.
 
Donc voici ce que je voulais faire :
 
Je voulais faire une page appel.php qui demande un mot de pass , pour la page cible.php
 

Code :
  1. <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
  2. <html>
  3. <head>
  4. <title>Document sans titre</title>
  5. <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
  6. </head>
  7. <body>
  8. <p>
  9. Zone protégée <p>Entrer le mot de passe </p>
  10. <form action="cible.php" method="post">
  11. <p>
  12. <input type="password" name="password" />
  13. <input type="submit" value="Connection" />
  14. </p>
  15. </form>
  16. </body>
  17. </html>


 
Jusqu'a la ça marche !
 
Ensuite sur la page cible.php je récupere ma variable password et j'utilise les if et else.
 
mais ça bloque et je ne sais pourquoi :
 

Code :
  1. <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
  2. <html>
  3. <head>
  4. <title>Bienvenue</title>
  5. <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
  6. </head>
  7. <body>
  8. G@NON INC zone protégée :
  9. <? $_GET['password'];?>
  10. <? if ($password == 'ganoninc')
  11. {
  12.    echo "bienvenue sur la zone membre de la ganoninc";
  13. }
  14. else ($password != 'ganoninc')
  15.    echo "dsl , vous n'avez pas le droit de venir ici !";
  16. }
  17. ?>
  18. </body>
  19. </html>


 
Il me signal une erreur à la ligne 18 ! mais je vois pas ou !
 
Je ne vois pas d'ou vient l'erreur.
 
Bon ça c'est pour la théorie
 
en pratique :
 
http://romain.giovanetti.free.fr/appel.php   : password G@NON (enfin vous avez du le voir dans le code de cible.php ^^)
 
Merci de vos futurs réponse.

Reply

Marsh Posté le 11-09-2005 à 18:19:04   

Reply

Marsh Posté le 11-09-2005 à 18:22:38    

structure de base en algorithmie
si (condition)
alors
...
sinon
...
 
Pas de condition dans ton else.


Message édité par Ayuget le 11-09-2005 à 18:22:51
Reply

Marsh Posté le 11-09-2005 à 18:23:21    

merci je vais tester tout de suite
 
ça marche ! merci  
 
Autre petite question
 
Sur un vrai espace membre , faut deux conditions , ok ,
 
mais  
 
la page cible , faut la diviser en deux non ?
 
Une partie avec le contenue membre (ou une redirection vers la page en gardant les variables)
 
et une autre avec erreur de login et un lien pour se reconnect
 
c'est ça ?


Message édité par GANONEINC le 11-09-2005 à 18:27:24
Reply

Marsh Posté le 11-09-2005 à 18:24:42    

L'erreur vient de la ligne 10:
 <? $_GET['password'];?>
Je pense que ce serait mieux si la variable $password contenait ta variable GET ;)
donc  

Code :
  1. <?php $password =  $_GET['password']; ?>


 
EDIT: et ton else aussi, mais grilled :D


Message édité par onizuka_sensei le 11-09-2005 à 18:25:22
Reply

Marsh Posté le 11-09-2005 à 18:27:30    

method="post"
$_GET['password']
 
$_GET c'est si la méthode est "get" quand la méthode est "post", c'est $_POST
 
$password n'est pas définis automatiquement dans les derniére version de php vu que "register-global=off" par défaut. Il est encore possible de remettre ce comportement en réglant "register-global" à "on", mais ca ne sera surement plus le cas en php6. il vaut donc mieux prendre les bonnes habitudes dés maintenant et trvailler avec les $_GET, $_POST, ...
 
Au fait, tu voulais faire quoi avec ton "<? $_GET['password'];?>"  ? Ca sert à rien d'indiquer uen variable comme ça sans rien en faire. En php, les variables ne se déclarent pas à l'avance contrairement à d'autres langages.
 
Quand à ton "G@NON INC zone protégée :", tu sais que ca va s'afficher en clair dans ta page?

Reply

Marsh Posté le 11-09-2005 à 18:28:37    

Vous être trop rapide les gas, on a même plus le temps d'expliquer les chôse comme il faut. :p

Reply

Marsh Posté le 11-09-2005 à 18:29:22    

c'est pour l'instant des teste sans Mysql , ne me brusque pas !!

Reply

Marsh Posté le 11-09-2005 à 18:33:02    

Je cherche pas à te brusquer, je t'explique tes erreurs et tes incohérences.
Si on te l'explique pas dessuite, aprés, tu seras débordé par ce que t'auras encore plus de trucs à corriger et de mauvaises habitudes à perdre.


Message édité par omega2 le 11-09-2005 à 18:34:13
Reply

Marsh Posté le 11-09-2005 à 18:35:39    

Citation :

Au fait, tu voulais faire quoi avec ton "<? $_GET['password'];?>"  ? Ca sert à rien d'indiquer uen variable comme ça sans rien en faire. En php, les variables ne se déclarent pas à l'avance contrairement à d'autres langages.


 
 
tu voulais dire quoi par la ? (dsl je sais je suis vraiment débutant)
 
Moi si j'ai fait ce teste c'est pour m'apprendre  à transmetre une variable sur une autre page , qui elle va changer en fonction de la variable , je pensai que le systeme de login des site marchait a peu pret comme ça (avec le Mysql en plus)

Reply

Marsh Posté le 11-09-2005 à 18:40:20    

Je voulais dire que "<? $_GET['password'];?>" ne sert strictement à rien. Ce n'est pas un affichage, ce n'est pas une utilisation de variable. tu nomes cette variable sans rrien en faire. Bref, cette ligne sert strictement à rien.

Reply

Sujets relatifs:

Leave a Replay

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