Probleme de variables qui perdent leurs valeurs, je deviens fous......

cs_skyman272 Messages postés 34 Date d'inscription jeudi 17 juin 2004 Statut Membre Dernière intervention 26 novembre 2007 - 28 janv. 2006 à 16:22
cs_Arnauti Messages postés 392 Date d'inscription mercredi 24 novembre 2004 Statut Membre Dernière intervention 26 septembre 2009 - 14 févr. 2006 à 12:02
<SAMP>Bonjour,
J'ai un pb avec des variables qui ne conservent pas leurs valeurs, il s'agit d'un script qui réparti le résultat d'une requete sur plusieur pages, et créé les liens vers ces pages. La premiere page fonctionnent les variables $varRegion et $varType contiennent les bonne valeur, par contre quand je passe sur la page 2 ou autres, les variables perdent leur valeur et le script ne marche plus. J'ai essayer de mettre ces variables en global dans le script, mais ça marche pas...comment faut il faire ????? est ce la porté des variables qui est en cause ?
(j'ai mis en rouge les variables en questions)
</SAMP>
<?php


// Connnexion à la base
mysql_select_db($database_fichier, $fichier) or die(mysql_error());


// Parametres de la requete
$varRegion = $select; //Ce sont ces valeur qui ne sont pas conservé dans ces variables
$varType = $select2;
$nb_rep_pages=5;


// Initialisation des variables
if(empty($page)) $page = 1;
if(empty($fin)){
$sql = "select count(*) as qte from Fiche_produit";
$p = @mysql_query($sql,$fichier);
$fin = @mysql_result($p,"0","qte");
}


// Déclaration de la variable début
$debut = ($page - 1) * $nb_rep_pages;



// Requete SQL


if($varType == Tous)
$sql = "SELECT *
FROM Fiche_produit
WHERE Fiche_produit.Region ='$varRegion'
ORDER BY Identite LIMIT $debut,$nb_rep_pages";
else
$sql = "SELECT *
FROM Fiche_produit
WHERE Fiche_produit.Region ='$varRegion'
AND Fiche_produit.Type ='$varType'
ORDER BY Identite LIMIT $debut,$nb_rep_pages";

$a=1;


// Interrogation de la base
$result = mysql_query($sql, $fichier) or die(mysql_error());


// Nombre de lignes de résultat
$totalRows = mysql_num_rows($result);


$nbpages = ceil($fin / $nb_rep_pages);


if ($totalRows == 0)
{
echo "La recherche n'a retourné aucun résultat

";
}
else
{
echo "

Résultat de la recherche : $totalRows produits.


Secteur |
Type |
Prix de vente du bien |
Présentation |
Photo |
Accès |

\";

//Liens vers les autres pages
for($i = 1;$i <= $nbpages;$i ++)
{
echo \"Page $i\";
if($i < $nbpages) echo \" - \";
}

while ($row = mysql_fetch_array($result))
{

echo \"----

{$row['Secteur']},
{$row['Type']},
{$row['Prix']} &euro;,
{$row['Presentation']},
,
Découvrir le bien,

\";
//$a=$a+1;
}

echo "
";

}


//while( $contenu = mysql_fetch_array ($result))



// Libération mémoire
mysql_free_result($result);


// Fermeture de la connexion
mysql_close($fichier);


?>
// Les menus déroulant qui récuperent la valeur de la variable (select et select2)
<td width="210" height="189" background="../images/5.gif">

&nbsp;

Autres recherches




<form action ="../fiche_select.php" method="post" name="table_recherche">

<label>Region
<select name="select" tabindex="1">
<option value="Midi-Pyrénées">Midi-Pyr&eacute;n&eacute;es</option>
<option value="Languedoc">Languedoc</option>
<option value="Provence">Provence</option>
<option value="Aquitaine">Aquitaine</option>
<option value="Autres-régions">Autres R&eacute;gions</option>
</select>
</label>



<label>Type
<select name="select2" tabindex="2">
<option value="Manoir-Ch&acirc;teau">Manoirs et Ch&acirc;teaux</option>
<option value="Propri&eacute;t&eacute;-rurale">Propri&eacute;t&eacute;s rurales</option>
<option value="Belle-Demeure">Belles demeures</option>
<option value="Maison-de-Campagne">Maisons de campagne</option>
<option value="Maison-de-village">Maisons de village</option>
<option value="Maison-de-ville">Maisons de ville</option>
<option value="Villa">Villas</option>
<option value="Autre-bien">Autres Biens</option>
<option value="Tous" selected>Tous les biens</option>
</select>
</label>



<label>

</label>


</form>
</td>

</html>

8 réponses

cs_Arnauti Messages postés 392 Date d'inscription mercredi 24 novembre 2004 Statut Membre Dernière intervention 26 septembre 2009
28 janv. 2006 à 18:05
Salut que veux tu dire par "j'ai essayer de mettre ces variables en global" ?
As tu essayé de faire :
$_SESSION['varRegion'] = $select ;
$_SESSION['varType'] = $select2 ;

A++
<hr size="2" width="100%">Si un des membres à poster une reponse qui convient, accepter là !
0
FhX Messages postés 2350 Date d'inscription mercredi 13 octobre 2004 Statut Membre Dernière intervention 18 avril 2015 3
28 janv. 2006 à 18:47
Revoit comment on récupère des noms de variables via un SELECT en html.
La est la voie pour continuer.
0
cs_skyman272 Messages postés 34 Date d'inscription jeudi 17 juin 2004 Statut Membre Dernière intervention 26 novembre 2007
28 janv. 2006 à 20:09
Pour les mettres en global, j'ai fait : global = $varRegion
global = $varType
0
cs_skyman272 Messages postés 34 Date d'inscription jeudi 17 juin 2004 Statut Membre Dernière intervention 26 novembre 2007
28 janv. 2006 à 21:06
Arnauti j'ai essayé ta methode : $_SESSION['varRegion'] = $select ;
$_SESSION['varType'] = $select2 ;

Mais ça ne marche pas, meme pb
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
Tarvos Messages postés 40 Date d'inscription vendredi 11 mars 2005 Statut Membre Dernière intervention 24 mars 2006
28 janv. 2006 à 23:42
Les variables ne se conservent pas miraculeusement d'une page à l'autre...
Tu peux soit utiliser le système de sessions comme mentionné plus haut (documente toi, il faut d'abord initialiser la session...), soit faire passer tes valeurs par l'url et les récupérer en GET.
0
cs_Arnauti Messages postés 392 Date d'inscription mercredi 24 novembre 2004 Statut Membre Dernière intervention 26 septembre 2009
29 janv. 2006 à 10:10
"soit faire passer tes valeurs par l'url et les récupérer en GET", ce qui est moins "sécurisé".
Vas voir sur http://www.php.net/manual/fr/ref.session.php.

A++
<hr size="2" width="100%">Si un des membres à poster une reponse qui convient, accepter là !
0
cs_skyman272 Messages postés 34 Date d'inscription jeudi 17 juin 2004 Statut Membre Dernière intervention 26 novembre 2007
14 févr. 2006 à 10:52
Bonjour,

J'essaye de passer mes variables par url avec la ligne :

echo "Page $i";

Je n'ai pas fait de GET, mais j'ai l'impression que les variables sont bien récupérés pourtant ça ne marche toujours pas...
Le GET est il obligatoire, et comment l'implémenter ???

Merci
0
cs_Arnauti Messages postés 392 Date d'inscription mercredi 24 novembre 2004 Statut Membre Dernière intervention 26 septembre 2009
14 févr. 2006 à 12:02
sinon tu peux aussi définir des constantes...
A++
<hr size="2" width="100%">Si un des membres à poster une reponse qui convient, accepter là !
0
Rejoignez-nous