Probleme rediriger valeur vers une page sans la charger

Signaler
Messages postés
131
Date d'inscription
dimanche 2 décembre 2007
Statut
Membre
Dernière intervention
23 juillet 2009
-
Messages postés
10840
Date d'inscription
lundi 24 février 2003
Statut
Modérateur
Dernière intervention
2 mars 2010
-
Bonjour j'explique mon problème: J'ai une fonction de recherche qui me
redirige vers une autre page en renvoyant des données avec la methode GET
. Dans la fonction recherche je creee dynamiquement un fichier xml :

$propertySelect= $_GET['propertySelect'];
$queryXml"SELECT * FROM $table3 WHERE id_properties '$propertySelect' ";
$resultXml = mysql_db_query ($DBName, $queryXml, $Link);
print '<?xml version="1.0" encoding="UTF-8"?>'; 
print  '<smartmove>'; 
while ($rowXml = mysql_fetch_array($resultXml)) { 
  	print"";
print" ".$rowXml["id"]." "; 
print"".$rowXml["id_properties"].""; 
$path1 =$rowXml["img"];
$path2=$rowXml["img2"];
print"".$path1.""; 
print"".$path2.""; 
print"

";
 
 } 
print"</smartmove>"; 



est donc je voudrais externaliser ca dans une autre page qui travaillera en "background". Et comme vous pouvez le voir je dois
réussir à envoyer la valeur "propertyselect" sur la page qui va contenir
ce script.
Donc que faut il que j'uitilse? une variable de sesion avec la valeur properstyselect? ou il y a mieux?
J'espère avoir était clair. lol

17 réponses

Messages postés
2483
Date d'inscription
jeudi 30 novembre 2006
Statut
Membre
Dernière intervention
14 janvier 2011
16
Salut,

Moi, j'ai rien compris.
Surtout ça : est donc je voudrais externaliser ca dans une autre page qui travaillera en "background".<hr size="2" width="100%" />Neige

N'hésitez pas à lire la doc de PHP avant de poser des questions triviales...
Messages postés
131
Date d'inscription
dimanche 2 décembre 2007
Statut
Membre
Dernière intervention
23 juillet 2009

en gros je voudrais savoir comment envoyer une variable sur une autre page
php
Messages postés
2483
Date d'inscription
jeudi 30 novembre 2006
Statut
Membre
Dernière intervention
14 janvier 2011
16
J'suis désolé, mais c'est vraiment pas plus clair...

Si pour m'expliquer tu fais un résumé de 3 mots, je vais pas comprendre mieux. N'hésite pas, au contraire, à détailler, histoire que tout le monde comprenne ce que tu veux faire exactement.

<hr size="2" width="100%" />Neige

N'hésitez pas à lire la doc de PHP avant de poser des questions triviales...
Messages postés
131
Date d'inscription
dimanche 2 décembre 2007
Statut
Membre
Dernière intervention
23 juillet 2009

Je fais une gallerie photo avec adobe flex. Flex ne peut pas se connecterr à une
base de donnée donc je cree un fichier xml avec le contenu de ma base. Mais le probleme c'est que pour creer mon fichier xml, je dois recuperer un ID
pour faire ma requete. Cette ID est dans une autre page PHP donc je voudrais recupérer cette id pour creer mon fichier xml.

La page page ou je cree mon xml est une page independante qui va juste
servir a flex pour faire le lien entre mon PHP et ma galerie.
Pour background: je voulais juste dire que ce fichier ne se verra
pas sur mon site ( il sert juste à flex pour qu il connaisse
les path des images dans un fichier xml).
Messages postés
131
Date d'inscription
dimanche 2 décembre 2007
Statut
Membre
Dernière intervention
23 juillet 2009

j'ai essayé les variables de sessions mais elles ne fonctionnent pas..
elle fonctionne que dans la page ou je l'ai créée bizar...
Messages postés
2483
Date d'inscription
jeudi 30 novembre 2006
Statut
Membre
Dernière intervention
14 janvier 2011
16
Ah ben là, je vois un peu mieux comment son organisés tes fichiers.
Du coup, oui, une variable de session est probablement ce qu'il y a de plus pratique. Mais en fait, peu importe : que tu utilises une variable de session ou une variable GET, c'est à peu près pareil. Surtout que si le client n'accepte pas les cookies, la variable de session sera perdue...
En gros, ton script passe une variable à ton Flash, lequel appelle ton script (celui qui génère le XML) avec la variable en question ( http://www.tonsite.com/ton/script.php?variable=valeur )

<hr size="2" width="100%" />Neige

N'hésitez pas à lire la doc de PHP avant de poser des questions triviales...
Messages postés
131
Date d'inscription
dimanche 2 décembre 2007
Statut
Membre
Dernière intervention
23 juillet 2009

oui sauf que ma variable je la passe pas a mon flash. je creee un fichier xml en fonction de mon id. Donc dans mon xml crée j'ai qu un seul enrgistrement
de ma table. Donc ici le get est impossible tu vois?
Messages postés
131
Date d'inscription
dimanche 2 décembre 2007
Statut
Membre
Dernière intervention
23 juillet 2009

dans mon flash j'ai donc pas a me soucier de l'id. car j'ai qu un seul
enregistrement.
Messages postés
10840
Date d'inscription
lundi 24 février 2003
Statut
Modérateur
Dernière intervention
2 mars 2010
22
Hello,

dis moi, ton problème réel, c'est quoi ? Passer la variable, ou faire en sorte que ton script de réation du flux xml soit "transparent"...? Parce que dans l'exemple que tu montres, je vois 2 choses : tu passes une variable en GET et ça doit à priori fonctionner, mais tu fais aussi un output vers la sortie standard (l'écran, quoi) de ton xml, donc ce dernier va s'afficher (enfin...les text nodes en tous cas). Ce serait pas plutôt cet affichage ton problème réel ?
Messages postés
2483
Date d'inscription
jeudi 30 novembre 2006
Statut
Membre
Dernière intervention
14 janvier 2011
16
Euh...

"Mais le probleme c'est que pour creer mon fichier xml, je dois recuperer un ID

pour faire ma requete"

Ben justement : cet ID, t'as qu'à le passer à ton flash qui appelera le script qui génère le XML avec ce même ID...

<hr size="2" width="100%" />Neige

N'hésitez pas à lire la doc de PHP avant de poser des questions triviales...
Messages postés
131
Date d'inscription
dimanche 2 décembre 2007
Statut
Membre
Dernière intervention
23 juillet 2009

mon probleme est de faire passer la valeur de mon get
à mon script de flux de xml. car je la recupere dans ma page principal
(celle ou on affiche ma galerie) mais je la recupere pas dans ma page
script de flux. J'ai essaye de la faire passer par des sessions mais bizarement ca fonctionne pas elle est vide ma variable de session.
Messages postés
131
Date d'inscription
dimanche 2 décembre 2007
Statut
Membre
Dernière intervention
23 juillet 2009

oui j 'ai cherche comment faire mais j'ai pas trouvé ...
Messages postés
10840
Date d'inscription
lundi 24 février 2003
Statut
Modérateur
Dernière intervention
2 mars 2010
22
Mais il est appelé comment ce script ?
Messages postés
131
Date d'inscription
dimanche 2 décembre 2007
Statut
Membre
Dernière intervention
23 juillet 2009

avec un httpservice
Messages postés
10840
Date d'inscription
lundi 24 février 2003
Statut
Modérateur
Dernière intervention
2 mars 2010
22
Ok, et il l'appelle comment ton script...? en GET ? Parce qu'à priori, ça a l'air d'être le cas, donc je ne pige pas ton problème. Tu mets ton ID dans ta variable en GET, et basta. Et comme c'est un web service, à priori les echo de ton script ne s'afficheront pas et sont interceptés par le script appelant.
Tu n'es pas vraiment clair ni très prolyxe dans tes explications; si tu veux que l'on t'aide, comme te l'a dit Neige, il faut que tu sois clair et précis.
Parce que "avec un httpservice", ça n'est pas une réponse claire ni précise (concise par contre lol, il faut le reconnaître).
Messages postés
131
Date d'inscription
dimanche 2 décembre 2007
Statut
Membre
Dernière intervention
23 juillet 2009

le mieux c est que je vosu montre mon code...

voici mon flex :

<?xml version= "1.0" encoding="utf-8"?>
<mx:Application xmlns:mx="http://www.adobe.com/2006/mxml" layout="absolute" color="#2A0631" themeColor="#FF00FC" creationComplete="{resultPropHandler();}"
>

<mx:Script>
<![CDATA[

private var service:HTTPService;

private function resultInitSession(event:ResultEvent):void {
var xmlResult:XMLList = XML(event.result).*;
var test:String;
var label:Label=new Label();
tile.dataProvider = service.lastResult.smartmove.property as Array;
img.source=tile.dataProvider.getItemAt(0).img2;
img.width=280;
img.scaleX= img.scaleY;
}

private function faultHandler(error:String): void
{
mx.controls.Alert.show("error Image impossible to load ");
}



private function resultPropHandler():void
{

service = new HTTPService();
service.url = "QueryGalleryXml.php";
service.resultFormat = "e4x";
service.addEventListener(ResultEvent.RESULT, resultInitSession);
//service.addEventListener(FaultEvent.FAULT, faultInitSession);
service.send();
}


private function tileList_itemClick(evt:ListEvent):void {
img.source = evt.itemRenderer.data.img2;
img.width=280;
img.scaleX= img.scaleY;
img.maintainAspectRatio = true;
dissolve.play();

}



]]>
</mx:Script>





mon php qui recoit l'id par un get lors d'une recherche d'une maison:

// Collect Property id to display
$propertySelect = $_GET['propertySelect'];
$propertySelect = strip_tags($propertySelect);
DBConnect();
$Link = mysql_connect($Host, $User, $Password);
$Query "SELECT * FROM $table1 WHERE id '$propertySelect'";
$Result = mysql_db_query ($DBName, $Query, $Link);
$Row = mysql_fetch_array($Result);
$QueryImg="SELECT * FROM $table3 WHERE id_properties=$propertySelect ORDER BY id ";
$resultImg = mysql_db_query ($DBName, $QueryImg, $Link);
$RowImg= mysql_fetch_array($resultImg);
//n12br converts new lines to breaks in the data, so that it displays in html
$agentDes = nl2br($Row[agentDescription]);
//create a postcode session for the mapping system – google maps -
$_SESSION['mapPostcode'] = $Row[postcode];

$addressArray = $Row[address3] ;
$addressUpperCase = strtoupper($addressArray);
.....
ici j'affiche ma gallery flex et les details de la maison
....






et le fichier qui est appele par mon hhttpservice:
malheureusement,le $propertyselect que vous voyez la et bien c 'est
lui que veux recuperer de mon fichier précédent.


$queryXml"SELECT * FROM $table3 WHERE id_properties '$propertySelect' ";
$resultXml = mysql_db_query ($DBName, $queryXml, $Link);
print '<?xml version="1.0" encoding="UTF-8"?>';
print '<smartmove>';
while ($rowXml = mysql_fetch_array($resultXml)) {
print"";
print" ".$rowXml["id"]." ";
print"".$rowXml["id_properties"]."";
$path1 =$rowXml["img"];
$path2=$rowXml["img2"];
print"".$path1."";
print"".$path2."";
print"

";

}
print"</smartmove>";

desole d'avoir était si concis mais la je bosse depuis 1 semaine dessus
: je suis debutant en flex et la j'en peux plus .... Merci d'avoir pirs
du temps pour moi.
Messages postés
10840
Date d'inscription
lundi 24 février 2003
Statut
Modérateur
Dernière intervention
2 mars 2010
22