|
Publicité ' | |||||||||||||||||||||||
|
|
#1 |
|
Débutant
Laurent Webmaster Inscription : octobre 2006 Messages : 2 873 ![]() |
Bonsoir,
je voudrais transmettre une variable générée par une page Ap sur le serveur As à une page Bp sur le serveur Bs. La page Ap (PHP) est exécutée via une iframe sur la page Bp ; la page Ap génère une variable (un tableau) que je voudrais récupérer dans Bp sans action utilisateur (ni lien, ni formulaire par exemple), sachant que l'utilisateur n'a aucune interface avec la page Ap (elle ne fait qu'un traitement). Malgré une recherche sur le forum, je n'ai pas trouvé de réponse ; peut-on m'aider ?
__________________
Il vaut mieux viser la perfection et la manquer que viser l'imperfection et l'atteindre. - Bertrand Russell |
|
|
00
|
|
|
#2 | |||
|
Débutant
Laurent Webmaster Inscription : octobre 2006 Messages : 2 873 ![]() |
J'ai modifié mon approche et du coup modifié le titre, vu que j'ai rajouté une action utilisateur (un formulaire), mais le problème reste ; donc je veux transmettre une donnée de Ap à Bp ; comme il s'agit d'un tableau je fais un implode au départ ( $array = implode('#',$user); ); je transmets ce tableau via un champ hidden d'un formulaire :
Code :
Citation:
__________________
Il vaut mieux viser la perfection et la manquer que viser l'imperfection et l'atteindre. - Bertrand Russell |
|||
|
|
00
|
|
|
#3 |
![]() ![]() Inscription : septembre 2010 Messages : 7 156 ![]() |
coté HTML le rendu du form donne quoi ?
__________________
http://blog.stealth35.com/ |
|
|
00
|
|
|
#4 | ||
|
Débutant
Laurent Webmaster Inscription : octobre 2006 Messages : 2 873 ![]() |
En fait, j'ai avancé et mon nouveau problème (encore un !) est complètement différent ; au début, le problème était que la page Ap était appelée via une iframe dans Bp ; ayant pensé que le problème venait de là, j'ai supprimé l'iframe : j'appelle moi-même (de mon navigateur) la page Ap ; on a donc le form qui appelle par l'action la page Bp ; ça, ça marche ; par contre, au préalable Ap génère un array PHP que je transmets à Bp via un champ hidden du form puis, comme test, dans Bp, j'affiche le premier élément du tableau (echo "array0=".$array[0].'<br>') et ça m'affiche le dernier ! Comme le souci vient peut-être de la construction du tableau, la voici :
Code :
Est-ce que tu vois mon nouveau souci ?
__________________
Il vaut mieux viser la perfection et la manquer que viser l'imperfection et l'atteindre. - Bertrand Russell |
||
|
|
00
|
|
|
#5 |
![]() ![]() Inscription : septembre 2010 Messages : 7 156 ![]() |
au del
__________________
http://blog.stealth35.com/ |
|
|
00
|
|
|
#6 |
![]() ![]() Inscription : septembre 2010 Messages : 7 156 ![]() |
au delà de tout ça, si tu veux transmettre un tableau via un formulaire il faut utiliser es table de formulaire ...
http://www.php.net/manual/fr/faq.htm...aq.html.arrays
__________________
http://blog.stealth35.com/ |
|
|
00
|
|
|
#7 | ||||
|
Débutant
Laurent Webmaster Inscription : octobre 2006 Messages : 2 873 ![]() |
Au vu de ta réponse, j'ai viré le implode et le explode (pour transmettre une string) et transmis directement le tableau :
Code :
Code :
__________________
Il vaut mieux viser la perfection et la manquer que viser l'imperfection et l'atteindre. - Bertrand Russell |
||||
|
|
00
|
|
|
#8 |
![]() ![]() Inscription : septembre 2010 Messages : 7 156 ![]() |
foreach pour parcourir un table
__________________
http://blog.stealth35.com/ |
|
|
00
|
|
|
#9 | ||
|
Débutant
Laurent Webmaster Inscription : octobre 2006 Messages : 2 873 ![]() |
OK, mais le souci est au niveau de la construction de cette table, comme me le montre ce code :
Code :
__________________
Il vaut mieux viser la perfection et la manquer que viser l'imperfection et l'atteindre. - Bertrand Russell |
||
|
|
00
|
|
|
#10 |
![]() ![]() Inscription : septembre 2010 Messages : 7 156 ![]() |
count pas sizeof
__________________
http://blog.stealth35.com/ |
|
|
00
|
|
|
#11 |
![]() ![]() Développeuse PHP/Java Inscription : avril 2007 Messages : 3 663 ![]() |
PHP a tendance à faire des raccourcis qui sont pratiques quand on les connait et qui peuvent dérouter quand on les connait pas.
A savoir : on peut parfaitement faire $user[2] sur une chaine, PHP traitera la chaine comme si c'était un array, avec un caractère par ligne. Donc si ta chaine est $user = "celira", echo $user[2] va te renvoyer e. La question est donc : d'où vient ta variable $user à l'origine ? @stealth35 : il me semblait que sizeof était un alias de count. Il ya une différence ou c'est juste une question de propreté du code ? (personnellement j'utilise systématiquement count, mais ça m’intéresse de savoir
__________________
Modératrice PHP Aucun navigateur ne propose d'extension boule-de-cristal : postez votre code et vos messages d'erreurs. (Rappel : "ça ne marche pas" n'est pas un message d'erreur) Pour afficher votre code en couleurs : [CODE=php][/CODE] (bouton # de l'éditeur) |
|
|
00
|
|
|
#12 | ||
![]() ![]() Inscription : septembre 2010 Messages : 7 156 ![]() |
Citation:
Citation:
niveau code interne c'est juste 1 paramètre en plus a passer
__________________
http://blog.stealth35.com/ |
||
|
|
00
|
|
|
#13 | |||
|
Débutant
Laurent Webmaster Inscription : octobre 2006 Messages : 2 873 ![]() |
J'ai fini par trouver un gros bug dans la construction du tableau : je n'incrémentais pas l'indice, donc évidemment à la fin, le "tableau" ne valait que le dernier élément : ouf
Citation:
Code :
__________________
Il vaut mieux viser la perfection et la manquer que viser l'imperfection et l'atteindre. - Bertrand Russell |
|||
|
|
00
|
|
|
#14 | ||
![]() ![]() Développeuse PHP/Java Inscription : avril 2007 Messages : 3 663 ![]() |
Ah ben forcément, si tu n'incrémentes pas... Personnellement, j'aurais fait l'incrémentation à part, pour le cas où tu voudrais faire autre chose après ton echo (ou pour le cas où tu désactivais l'echo pour une quelconque raison...)
Code :
__________________
Modératrice PHP Aucun navigateur ne propose d'extension boule-de-cristal : postez votre code et vos messages d'erreurs. (Rappel : "ça ne marche pas" n'est pas un message d'erreur) Pour afficher votre code en couleurs : [CODE=php][/CODE] (bouton # de l'éditeur) |
||
|
|
00
|
|
|
#15 |
|
Débutant
Laurent Webmaster Inscription : octobre 2006 Messages : 2 873 ![]() |
Merci Celira ; tu as raison ; en réalité, cet echo n'existe plus dans le code, mais l'incrémentation reste liée à une instruction : $user[$ind++]=$lastname.'|'.$firstname;...
__________________
Il vaut mieux viser la perfection et la manquer que viser l'imperfection et l'atteindre. - Bertrand Russell |
|
|
00
|
Copyright © 2000-2012 - www.developpez.com