garder en memoire variable sans session

Eléphant du PHP | 450 Messages

30 nov. 2006, 11:55

Bonjour j'ai un probleme assez compliqué a resoudre .

En effet , je travaille sur une page ou a l'aide d'une requete on recupere un resultat dans un tableau qui est etablit dynamiquement sur plusieur page (si il y a plus d'un certain nombre de resultat indiqué dans un formulaire , un lien vers la page suivante saffiche)

hors le probleme c'est que quand je clique sur une des page qui suivent ou bien qui precedente il oublie les variable du formulaire

et donc la requete ne fonctionne plus

voici les variable recuperer du formulaire:

Code : Tout sélectionner

$nombre=$_POST['resultat']; $clef=$_POST['localisation'];
et la requete:

Code : Tout sélectionner

$select_limit="SELECT * from produit2 WHERE localisation='".$clef."' ORDER BY nom ASC limit ".$debut.",".$nombre.";";
l'echo de la requete a la page suivante donne sa

Code : Tout sélectionner

select * from produit2 where localisation = '' order by.......
enfin voila , mon probleme c'est que je ne peux garder sa en variable de session et donc je me demandai comment m'y predre autrement
merci d'avance
Alone in the dark , I smile :D

Mammouth du PHP | 592 Messages

30 nov. 2006, 11:58

salut

tu as plusieurs choix je pense :

dont 2 :

-ecrire tes 2 données dans un fichiers de "temporisation"
- passer tes données en get

mais il doit en avoir d'autre :lol:

ViPHP
ViPHP | 3607 Messages

30 nov. 2006, 12:01

pour le coup du fichier de temporisation, il faudra de toute manière garder une variable supplémentaire, en sessions ou en get, pour identifier à qui est ce fichier, donc ça ne résout rien ;)

Eléphant du PHP | 450 Messages

30 nov. 2006, 12:03

et les passer en url sa marcherais ?
mais le probleme c'est que j'en ai deja une dans mon url .
On peut en mettre plusieur?
comment faire?

voila l'url que j'utilise :

Code : Tout sélectionner

$url = "./localisation2.php?page=";
Alone in the dark , I smile :D

Mammouth du PHP | 592 Messages

30 nov. 2006, 12:05

bien sur

Code : Tout sélectionner

$url = "./localisation2.php?page=index.php&variable1=3&variables2=5";

ViPHP
ViPHP | 3607 Messages

30 nov. 2006, 12:07

pour récupérer les variables de l'url, et ne pas les perdres, tu peux utiliser la variable serveur $_SERVER['REQUEST_URI'], qui il me semble te donne l'adresse du script avec les arguments get, ensuite tu as juste à concaténer un "&tavariable=tavaleur"

Eléphant du PHP | 450 Messages

30 nov. 2006, 12:18

$_SERVER['REQUEST_URI'] n'est pas dans le manuel tu aurai de la doc dessus pour que je regarde comment sa fonctionne ?

merci encore
Alone in the dark , I smile :D

ViPHP
ViPHP | 3607 Messages

30 nov. 2006, 12:21

et si c'est dans le manuel: http://fr.php.net/manual/fr/reserved.variables.php
mais pas dans les fonctions c'est pour ça que tu ne l'as pas trouvé... ;)

Eléphant du PHP | 450 Messages

30 nov. 2006, 12:42

Lol merci jojolapine , avais pas vu

sinon je fais un echo de $_SERVER['REQUEST_URI'] et sa me donne bien la bonne adresse d'accés:

exemple :
localisation2.php?page=38&localisation=R&resultat=7

Maintenant la question que je me pose est comment recuperer mes deux resultat , c'est a dire R et 7 .

je vois pas comment faire dans ces cas la avec un Get:

j'ai tenter sa :
	$clef2= $_GET['localisation'];
	$nombre2= $_GET['resultat'];
	
echo "$clef2 <p>";
echo "$nombre2 <p>";
mais bon sa risque pas de renvoyer un quelquonque resultat : / lol
Alone in the dark , I smile :D

ViPHP
ViPHP | 3607 Messages

30 nov. 2006, 12:44

si si t'es su r la bonne voie!
Par contre tu dois confondre quelques balises html, pour sauter des lignes c'est <br /> pas <p> qui correspond lui à un paragraphe...
essaye pour le get tu verras bien ;)

Eléphant du PHP | 450 Messages

30 nov. 2006, 14:42

Bon mes get fonctionne
Maintenant je voudrais faire que si les variables $_post sont vides qu'il recupere les variables get

j'ai coder sa :
if ($_POST['resultat']= "") 
{$nombre=$_GET['resultat'];
}
else
{ $nombre=$_POST['resultat'];}

if ($_POST['localisation']="") {$clef=$_GET['localisation'];}
else{$clef=$_POST['localisation'];}
hors il me dis que mes variables nombres et clef sont toujours vides

vous voyez d'ou sa peu venir ?
Alone in the dark , I smile :D

Eléphant du PHP | 450 Messages

30 nov. 2006, 14:49

c'est bon j'ai corriger fallais mettre == a la place de = dans la declaration de mes if :)
Alone in the dark , I smile :D

Mammouth du PHP | 592 Messages

30 nov. 2006, 14:50

non la t'y es pas il faut utiliser la fonction isset()
if (isset($_POST['resultat']))  
{
$nombre=$_GET['resultat']; 
} 
else 
{ 
$nombre=$_POST['resultat'];
} 

if (isset($_POST['localisation']))
{
$clef=$_GET['localisation'];
} 
else
{
$clef=$_POST['localisation'];
}

Mammouth du PHP | 592 Messages

30 nov. 2006, 14:52

sinon pour comparer une variable dans un if on met tjs ==

ex:

if ($mavariable==1)
{
mon script;
}

Eléphant du PHP | 450 Messages

30 nov. 2006, 16:13

sa marche nikel merci encore a tous :)
Alone in the dark , I smile :D