$PHP_SELF ... oui mais encore..?

$PHP_SELF ... oui mais encore..? - PHP - Programmation

Marsh Posté le 12-03-2003 à 17:12:21    

salut vous tous,
voila pour nous initier au PHP notre prof nous file du code PHP et pour ce qui veulent on peut chercher la signification de ce qu'il nous donne.... mais voila la je but sur ca :
<FORM  METHOD="POST"   ACTION="<?PHP   $PHP_SELF   ?>">
et plus precisement sur " $PHP_SELF " c quoi ca?
j'ai trouvé ca sur php.net  
"'PHP_SELF'
 
    The filename of the currently executing script, relative to the document root. For instance, $_SERVER['PHP_SELF'] in a script at the address http://example.com/test.php/foo.bar would be /test.php/foo.bar.
 
    If PHP is running as a command-line processor, this variable is not available. "
bon je trouve pas ca causant puique je l'utilise pas avec $_SERVER[]... donc je fais un petit tour sur allhtml.com pour savoir ce qu'on met en temps habituel dans ce truc (ACTION="" )
" Indique l'URL de l'application qui procède au traitement du formulaire"... la je comprend plus rien... :sarcastic:  :sarcastic:  :cry:


---------------
[:zeitoon] HxC rulezzzzzzzzz
Reply

Marsh Posté le 12-03-2003 à 17:12:21   

Reply

Marsh Posté le 12-03-2003 à 17:20:19    

bon je vien de trouver ca aussi :

Code :
  1. <?php
  2.   3   function  authenticate()  {
  3.   4     Header( "WWW-authenticate:  basic  realm='Test  Authentication  System'" );
  4.   5     Header( "HTTP/1.0  401  Unauthorized" );
  5.   6     echo  "You  must  enter  a  valid  login  ID  and  password  to  access  this  resource\n";
  6.   7     exit;
  7.   8   }
  8.   9
  9. 10   if(!isset($PHP_AUTH_USER)  ||  ($SeenBefore ==  1  &&  !strcmp($OldAuth,  $PHP_AUTH_USER))  )  {
  10. 11     authenticate();
  11. 12   } 
  12. 13   else  {
  13. 14     echo  "Welcome:  $PHP_AUTH_USER<BR>";
  14. 15     echo  "Old:  $OldAuth";
  15. 16     echo  "<FORM  ACTION=\"$PHP_SELF\"  METHOD=POST>\n";// C ICI !! :)
  16. 17     echo  "<INPUT  TYPE=HIDDEN  NAME=\"SeenBefore\"  VALUE=\"1\">\n";
  17. 18     echo  "<INPUT  TYPE=HIDDEN  NAME=\"OldAuth\"  VALUE=\"$PHP_AUTH_USER\">\n";
  18. 19     echo  "<INPUT  TYPE=Submit  VALUE=\"Re  Authenticate\">\n";
  19. 20     echo  "</FORM>\n";
  20. 21
  21. 22 }
  22. 23 ?>

 
bon au moins on peut l'utliser dans un form action....
bon je vais vous montrer mon code ca sera p-e plus simple

Code :
  1. <?php
  2. // Listing primo.php
  3. include ("html.inc.php" );       //en-tete page web
  4. include("definitions.inc.php" ); //parametres
  5. include("mysql.inc.php" );   //connexion et requetes
  6.   $AFF=FALSE;
  7.   if ($titre != "" )               //TRUE pour mise au point
  8.   {
  9.     Connexion ($AFF) ;             // Connexion au serveur
  10.     if (! mysql_select_db (BASE) )  // Selection base
  11.     {
  12.       echo " Impossibilite de selectionner la base ".BASE. "</br>";
  13.       exit;
  14.     }
  15. // Enregistrement des valeurs du formulaire
  16.     $OK = Executer ("INSERT INTO Livres ".
  17.         "(auteur, editeur, date, prix, stock) "
  18.         . "VALUES ( ' $titre ' , ' $auteur ' , !$editeur ' ,"
  19.         . " ' $date ' , ' $prix' , ' $stock' ) " ) ;
  20.     if ($OK)
  21.     {
  22.       echo "Le livre \"$titre\" a ete enregistre<hr>";
  23.     }
  24.   }
  25. ?>
  26. <FORM  METHOD="POST"   ACTION="<?PHP   $PHP_SELF   ?>">
  27.   <TABLE >
  28.     <CAPTION>
  29.       <H3> Saisie des données de la base Biblio</H3>
  30.     </CAPTION>
  31.     <TR>
  32.       <TD>Titre</TD>
  33.       <TD>
  34.         <INPUT TYPE="text" SIZE="30" NAME="titre">
  35.       </TD>
  36.     </TR>
  37.     <TR>
  38.       <TD>Auteur</TD>
  39.       <TD>
  40.         <INPUT TYPE="text" SIZE="30" NAME="auteur">
  41.       </TD>
  42.     </TR>
  43.     <TR>
  44.       <TD>Editeur</TD>
  45.       <TD>
  46.         <INPUT TYPE="text" SIZE="20" NAME="editeur">
  47.       </TD>
  48.     </TR>
  49.     <TR>
  50.       <TD>Date de sortie</TD>
  51.       <TD>
  52.         <INPUT TYPE="text" SIZE="10" NAME="date">
  53.       </TD>
  54.     </TR>
  55.     <TR>
  56.       <TD>Prix</TD>
  57.       <TD>
  58.         <INPUT TYPE="text" SIZE="5" NAME="prix">
  59.       </TD>
  60.     </TR>
  61.     <TR>
  62.       <TD>Stock</TD>
  63.       <TD>
  64.         <INPUT TYPE ="text" SIZE="5" NAME="Stock">
  65.       </TD>
  66.     </TR>
  67.     <TR>
  68.       <TD COLSPAN=2 ALIGN="center">
  69.         <INPUT TYPE="submit" VALUE="Enregistrer">
  70.       </TD>
  71.     </TR>
  72.   </TABLE>
  73. </FORM>
  74. </BODY>
  75. </HTML>


---------------
[:zeitoon] HxC rulezzzzzzzzz
Reply

Marsh Posté le 12-03-2003 à 17:51:19    

albino13 a écrit :

The filename of the currently executing script, relative to the document root. For instance, $_SERVER['PHP_SELF'] in a script at the address http://example.com/test.php/foo.bar would be /test.php/foo.bar.


 
c'est très clair :
c'est le nom du fichier que tu vois dans ton browser en partant de la racine.
si tu regarde une page internet http://example.com/blabla/test.php et si sur cette page tu as un echo $HTTP_SERVER_VARS['PHP_SELF'], tu verras s'afficher : /blabla/test.php.
 
En terme d'utilité, ça permet de pouvoir changer le nom du script que tu fais sans devoir changer ton code si tu ré-appelles cette page (ce que ton script fait)
Il s'envoie le formulaire.


---------------
...oups kernel error...
Reply

Marsh Posté le 12-03-2003 à 18:03:29    

Ca me fait toujours autant rire les profs qui enseignent avec des exemples complètement obsolètes. On devrait directement trouver $_SERVER['PHP_SELF'] dans ton exemple.
 
M'enfin :)

Reply

Marsh Posté le 12-03-2003 à 18:14:16    

ethernal a écrit :


 
c'est très clair :
c'est le nom du fichier que tu vois dans ton browser en partant de la racine.
si tu regarde une page internet http://example.com/blabla/test.php et si sur cette page tu as un echo $HTTP_SERVER_VARS['PHP_SELF'], tu verras s'afficher : /blabla/test.php.
 
En terme d'utilité, ça permet de pouvoir changer le nom du script que tu fais sans devoir changer ton code si tu ré-appelles cette page (ce que ton script fait)
Il s'envoie le formulaire.


 
 
je vais certainement te paraitre ridicule.. mais je prend le risque :) qu'entends tu part"ça permet de pouvoir changer le nom du script que tu fais sans devoir changer ton code" (euh... faut pas oublier je sais mm pas ce que ca fais un form action moi lol en tps normal faut mettre l'url de quoi?  :sweat:  :sweat:  :sweat:  :sweat:  :sweat: )
au fait.. merci de me repondre  [:m300a]


---------------
[:zeitoon] HxC rulezzzzzzzzz
Reply

Marsh Posté le 12-03-2003 à 19:08:25    

Ca veut dire que si tu change le nom de ta page sur ton site ... tu n'a pas a changer encore le nom dans le form (action="" ), puis phpself reprend le nom du fichier lui meme.

Reply

Marsh Posté le 12-03-2003 à 20:15:23    

oui si tu décides de renommer (sur le serveur) ta page "mapage.php" en "unepage.php", tu ne dois rien changer dans le code.


---------------
...oups kernel error...
Reply

Sujets relatifs:

Leave a Replay

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