cherche un tutoriel

Eléphant du PHP | 87 Messages

18 oct. 2006, 21:41

bon c'est pas fini cette affaire
quand j'affiche la page2 directement et que je reviens sur la page 1 tout fonctionne quand je fait l'inverse(le truc normal et logique) page1 et que je clic sur le lien
Fatal error: [] operator not supported for strings in etcetc
si j'ecris $prenom=array();car visiblement $prenom est une chaine de caractére tout fout le camps
Une vrai histoire de fou ce truc...
la je craque :!:

Eléphant du PHP | 87 Messages

19 oct. 2006, 14:42

nouveau code
$resultat=mysql_query ("SELECT * FROM Fille",$connexion);

if ($resultat)
{ 
 while ($valeur = mysql_fetch_assoc($resultat)) 
 {          $id = $valeur["filleId"]; 
            $image = $valeur["image"]; 
            $prénom[] = $valeur["prénom"]; // récupération des valeurs 
            $age[] = $valeur["age"];                     
            $pays = $valeur["pays"]; 
            $langue = $valeur["langue"]; 
            $objectif = $valeur["objectif"]; 
            $id=$valeur["filleID"]; 
            $miniature=$valeur["miniature"]; 


echo"<DIV>"; 

@array_push($_SESSION['prénom'], $prénom); 
@array_push($_SESSION['age'], $age); 


echo "$valeur[prénom]";  
//foreach($resultat as $valeur)
//{
//echo"$valeur";
//}

//$prenom = array($prénom);
//$_SESSION['age'][]= $age; 

//echo"$valeur[prénom]";
//echo"$_SESSION[prénom][]";

//var_dump($prénom);
//echo"<pre>";
//print_r ($prénom);
//echo"</pre>";

echo"</DIV>";

}

}
else
{
echo"<B>Erreur dans l'exécution de la requete.</B><BR>";
echo"<B>Message de Mysql : </B>".mysql_error($connexion);
}
echo"<a href='vide.php'>cliquez ici</a><br><br>";
et page2
session_start(); 



echo"<DIV>"; 

$prénom = $_SESSION['prénom'];   
$age = $_SESSION['age'];   




//$prénom = array($prénom); 
echo"<TABLE border='1'><TR>"; 
foreach($prénom as $valeur1) 
{ 
echo"<TD>$valeur1</TD>"; 

} 
echo"</TR></TABLE>"; 

echo"<TABLE border='1'><TR>"; 
foreach($age as $valeur2) 
{ 
echo"<TD>$valeur2</TD>"; 

} 
echo"</TR></TABLE>"; 
//echo"$valeur[prénom]"; 
//echo"$_SESSION[prénom]"; 

var_dump($prénom); 
//echo"<pre>"; 
//print_r ($prénom); 
//echo"</pre>"; 

echo"</DIV>"; 
  
echo'Les filles s\'appellent :'; 
foreach($prénom as $valeur1) 
{ 
echo"$valeur1   "; 

} 

//echo"$prénom"; 






//var_dump($prénom); 
//echo"<pre>"; 
//print_r ($prénom); 
//echo"</pre>"; 


?> 
<php?
<br><br><br><br> 
 
if (isset($_SESSION['prénom'])) { 
    echo 'La variable prenom est  enregistrée !'; 
    } else { 
    echo 'La variable prenom n\'est pas enregistrée !'; 
} 
session_destroy()  
?>
 
Voilà et ça fonctionne ,heureusement que PHP autorise le bidouillage :lol:
Merci ryle

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

19 oct. 2006, 15:07

lol :) Et sans bidouillage, quelque chose dans ce genre là devrait fonctionner également :)
if ($resultat) {  
  $_SESSION['prenom'] = array(); // déclaration des tableaux
  $_SESSION['age'] = array(); 

  while ($valeur = mysql_fetch_assoc($resultat))  {
    $id = $valeur["filleId"];  
    $image = $valeur["image"];  
    $prenom = $valeur["prénom"]; // récupération des valeurs  
    $age = $valeur["age"];                      
    $pays = $valeur["pays"];  
    $langue = $valeur["langue"];  
    $objectif = $valeur["objectif"];  
    $id=$valeur["filleID"];  
    $miniature=$valeur["miniature"];  

    $_SESSION['prenom'][] = $prenom; // mise en session
    $_SESSION['age'][] = $age;

    echo "<DIV>";  
    echo $valeur["prenom"];
    echo "</DIV>"; 
  }
} 
On peut même en profiter pour virer ces @#[censuré]%$ d'accents sur les noms de variables en ne gardant que celui de la base le temps que tu le changes ;)

Eléphant du PHP | 87 Messages

19 oct. 2006, 15:24

oui :lol: :( :lol: promis
c'est de la superstition mais juré je vais les virer
bon je vais tester ton code qui est plus simple et plus élégant et donc plus efficasse(je lis best practices php5 et ça se voit mdr :lol: