Pb Openlaszlo + PHP

Résolu/Fermé
ffmanfan Messages postés 25 Date d'inscription mercredi 28 mai 2008 Statut Membre Dernière intervention 26 janvier 2010 - 25 janv. 2010 à 12:04
ffmanfan Messages postés 25 Date d'inscription mercredi 28 mai 2008 Statut Membre Dernière intervention 26 janvier 2010 - 26 janv. 2010 à 11:42
Bonjour,

J'ai un problème de transfert de données entre un formulaire Openlaszlo et un formulaire PHP, plus particulièrement d'Openlaszlo vers PHP.

Je dispose sur l'openlaszlo d'une balise <form> pour créer un formulaire définie de la manière suivante:

<form id="form_interv">
...
</form>

J'ai aussi une dataset ce noment filtre_commune définie de la façon suivante:

<dataset name="filtre_commune" type="http" src="http://(ip du poste)/sera/recherchefiltrecommune.php" querytype="post">
<handler name='ondata'>
Debug.write(this);
</handler>
</dataset>

Cette dataset est déclarer avant le formulaire.

J'ai une datacombobox définie ainsi:

<datacombobox xoffset="-400" yoffset="8" name="cbox_communes_filtre" id="cbox_communes_filtre" width="130" shownitems="6" defaulttext="Choisissez..." itemdatapath="communes:/ville/item" onselected='canvas.filtre_ville()'/>

J'ai un baseformitem récupérant la donnée de la datacombobox:

<baseformitem id='communes_filtre' name='communes_filtre' value='${cbox_communes_filtre.getValue()}'/>

La datacombobox et le baseformitem son tout les deux créer dans le formulaire.

Je dispose aussi d'une fonction mettant à jour la dataset grâce à l'instruction filtre_commune.doRequest().

Dans mon fichier PHP je souhaite récupérer la donnée contenue dans 'communes_filtre' mon baseformitem, c'est pour cela que j'utilise la ligne suivante:

$com=isset($_POST["communes_filtre"])?$_POST["communes_filtre"]:'-1';

Le hic c'est que $com reçoit toujours -1 c'est à dire que mon fichier PHP ne reçoit pas la donnée contenue dans le baseformitem. J'ai déjà essayé de récupérer la donnée directement de la datacombobox mais le résultat est le même.

Merci d'avance.

A voir également:

1 réponse

ffmanfan Messages postés 25 Date d'inscription mercredi 28 mai 2008 Statut Membre Dernière intervention 26 janvier 2010 2
26 janv. 2010 à 11:42
Bonjour,

J'ai finalement trouver une solution à mon problème, voici ce que j'ai modifier:

avant:
<dataset name="filtre_commune" type="http" src="http://(ip du poste)/sera/recherchefiltrecommune.php" querytype="post">

après:
<dataset name="filtre_commune" type="http" src="http://(ip du poste)/sera/recherchefiltrecommune.php" querytype="get">


Dans mon code openlaszlo je citais une fonction mettant à jour la dataset avec un doRequest(), et bien j'ai rajouter une ligne juste avant le doRequest qui est la suivante:

filtre_commune.setQueryParam('filtre_com',communes_filtre.getValue());

en gros je nomme ma dataset puis je lui demande de saisir en paramètre une variable s'appelant filtre_com qui aura la valeur contenu dans mon baseformitem nommé communes_filtre en faisant appel à la fonction setQueryParam().

j'ai par conséquent modifier mon code php pour qu'il applique le GET donc à la place de mettre $_POST j'ai donc mis $_GET pour ma variable, maintentant cela ressemble à ça:

$com=isset($_GET["filtre_com"])?$_GET["filtre_com"]:'-1';

Maintenant cela fonctionne à merveille.
0