récupérer la variable $_POST

Petit nouveau ! | 7 Messages

21 janv. 2011, 21:38

Bonjour,

Comment récupérer la variable _POST svp?
Meme en l'affectant à une variable de session, elle ne franchit pas la page?

voici le fichier de fonction :
<?php

 function aff_err(){

   if(isset($_SESSION[err])){
     foreach ($_SESSION[err] as $i => $value) {
       echo ($_SESSION[err][$i]),'<br>';
     }
     unset($_SESSION[err]);
   }
 }


 function aff_html(){
   echo'

     <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
     <html xmlns="http://www.w3.org/1999/xhtml" lang="fr" xml:lang="fr">
     <head>
       <title>',$pag_carac_titre,'</title>
       <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" /> 
       <meta name="keywords" content="..." />
       <meta name="description" content="associations..." />
       <meta name="robots" content="index,follow" />	
       <link href="/design4.css" rel="stylesheet" type="text/css"/>
       <link rel="shortcut icon" type="images/x-icon" href="../../photos/solidaritok-icone.ico" />


     </head>
   ';
 }


 function demarrage(){ 

   global $pseudo;   

   if(isset($_GET[page])){
       $page_nom=$_GET[page];
       $page_carac = page_caracteristiques($page_nom);
       $ico =$page_carac[ico];
       $pag_carac_permit =$page_carac[permit];
       $_SESSION[sousmenu] =$page_carac[sousmenu];
       $pag_carac_sensib = $page_carac[sensib];
       $pag_carac_titre = $page_carac[titre];
       if($pag_carac_permit=="o"){
          /* la page appelee est libre de consultation  */
         $_SESSION[fichier]="http://www.solidaritok.com/$page_carac[fichier]";
       }else{
          if($pag_carac_permit=="s"){
            if(isset($_SESSION[pseudo])){
              $_SESSION[fichier]="http://www.solidaritok.com/$page_carac[fichier]";
            }else{
              $_SESSION[err][] = "Cette page necessite le login.";
            }
          }else{
            if($pag_carac_permit=="w"){
              if(isset($_SESSION[pseudo])){
                if($_SESSION[permit]=="w"){
                  $_SESSION[fichier]="http://www.solidaritok.com/$page_carac[fichier]";
                }else{
                  $_SESSION[err][] = "DSL, cette page est reservee aux webmasters";
                }
              }else{
                $_SESSION[err][] = "DSL, cette page reservee aux webmasters necessite le login";
              }
            }else{
              $_SESSION[err][] = "DSL, permit page non reconnu";
            }
          };
       };

 }else{

      /* aucune page appelee c est l ouverture du site */
      $page_nom="accueil-enfants";
      $page_carac = page_caracteristiques($page_nom);
      $ico =$page_carac[ico];
      $pag_carac_titre = $page_carac[titre];
      $_SESSION[fichier]="http://www.solidaritok.com/$page_carac[fichier]";
 }

     $_SESSION[page][ico]=$page_carac[ico];
     $_SESSION[page][titre]=$page_carac[titre];

}

 function open_bdd(){
   $conn = mysql_connect("...", "...", "...");
   if (!$conn) {
     echo "Impossible de se connecter à la base de données : " . mysql_error();
     $_SESSION[err][] = "Impossible de se connecter à la base de données";  
   }
   if (!mysql_select_db("enfants_site")) {
     echo "Impossible de sélectionner la base mydbname : " . mysql_error();
     $_SESSION[err][] = "Impossible de sélectionner la base de donnees";   
   }
 }

 function page_caracteristiques($page_nom){

   open_bdd();
   $sql = "SELECT * FROM pages WHERE nom='$page_nom'";
   $result = mysql_query($sql);
   if (!$result) {
     echo "Impossible d'exécuter la requête ($sql) dans la base : " . mysql_error();
     $_SESSION[err][] = "requete impossible";   
   };
   if (mysql_num_rows($result) == 0) {
     $_SESSION[err][] = "Page $page_nom introuvable";  
   };
   while ($row = mysql_fetch_assoc($result)) {
     $page_carac[fichier] = $row["fichier"];
     $page_carac[ico] = $row["ico"];
     $page_carac[icone] = $row["icone"];
     $page_carac[titre] = $row["titre"];
     $page_carac[sousmenu] = $row["sousmenu"];
     $page_carac[sensib] = $row["sensib"];
     $page_carac[permit] = $row["permit"];
   }
   mysql_free_result($result);
   mysql_close();
 
   return $page_carac;
 }


function tete(){
 /* ... */   
           include $sousmenu;
 /* ... * /
 }

?>

Il y a donc un sous menu dans l'entete pour une page 'documents' avec des boutons.
mais je n'arrive pas a envoyer la valeur du bouton cliké dans le corps de la page documents

et le fichier index.php :
<?php

  session_start ();

  include('fonctions2.php');

  demarrage();
  aff_html();

 ?>

 <body>  

   <div id="tete">
     <?php 
       tete ();
     ?>  
   </div>

   <div id="menu">  
     <?php 
       include('menu.php');
     ?> 
   </div>

   <div id="corps">      
     <?php
       include $_SESSION[fichier];
     ?>
   </div>

  </body>

</html>

Merci pour votre aide.

Avatar du membre
Modérateur PHPfrance
Modérateur PHPfrance | 8758 Messages

22 janv. 2011, 00:10

Salut,

Tu utilise vraiment des constante ou tu desactive les rapports d'erreurs ?
Dans les tableaux il faut utiliser des ' ou " pour delimiter les noms des index par exemple $_SESSION['pseudo'] c'est peut etre ton probleme.

Je n'ai pas vu de formulaire ?


@+
Il en faut peu pour être heureux ......

devlop78
Invité n'ayant pas de compte PHPfrance

22 janv. 2011, 02:25

C'est pas très propre d'utiliser $_SESSION comme variable globale ... En plus, je ne vois nul par de $_POST

solk
Invité n'ayant pas de compte PHPfrance

22 janv. 2011, 20:18

Ok, merci.