Récupérer la value d'un input hidden
Fermé
eve20100
-
24 sept. 2009 à 19:37
Reivax962 Messages postés 3672 Date d'inscription jeudi 16 juin 2005 Statut Membre Dernière intervention 11 février 2021 - 2 oct. 2009 à 23:40
Reivax962 Messages postés 3672 Date d'inscription jeudi 16 juin 2005 Statut Membre Dernière intervention 11 février 2021 - 2 oct. 2009 à 23:40
A voir également:
- Récupérer la value d'un input hidden
- Recuperer message whatsapp supprimé - Guide
- Comment récupérer un compte facebook piraté - Guide
- Recuperer video youtube - Guide
- Récupérer mon compte facebook désactivé - Guide
- Impossible de récupérer mon compte gmail - Guide
9 réponses
Reivax962
Messages postés
3672
Date d'inscription
jeudi 16 juin 2005
Statut
Membre
Dernière intervention
11 février 2021
1 011
2 oct. 2009 à 23:40
2 oct. 2009 à 23:40
Ah... Oui, normalement on n'a qu'une seule balise html et body dans une page web... Je ne sais pas comment peut réagir le navigateur s'il y en a plusieurs, et notamment je ne garantis pas que le onload soit bien effectué !
Autre solution, à la fin de ton fichier, rajoute ça :
<script language="javascript">fct_afficher()</script>
Autre solution, à la fin de ton fichier, rajoute ça :
<script language="javascript">fct_afficher()</script>
Reivax962
Messages postés
3672
Date d'inscription
jeudi 16 juin 2005
Statut
Membre
Dernière intervention
11 février 2021
1 011
24 sept. 2009 à 21:19
24 sept. 2009 à 21:19
Bonjour,
Le code que tu fournis est bien le code PHP de la page, et pas le code HTML vu par le navigateur ? Si oui, cela me parait compliqué, en php, de récupérer cette valeur.
Si non, il faudrait que tu nous montres le code PHP de 1.inc.php, il y a peut-être moyen de trouver quelque chose.
Autre piste : pourquoi souhaites-tu récupérer ce code ? Est-ce pour un traitement à faire nécessairement côté serveur ? Si ce que tu veux faire est faisable côté client (affichage, calcul simple sans lien avec une base de données), tu peux facilement récupérer cette valeur en javascript de la façon suivante :
var idrayon = getElementsByName("idrayon")[0].value;
Le [0] implique que la valeur que tu recherches soit la première à porter le nom "idrayon" dans ta page. S'il y en a d'autres, il faudra adapter.
Voilà, j'espère que je t'aide un peu...
Xavier
Le code que tu fournis est bien le code PHP de la page, et pas le code HTML vu par le navigateur ? Si oui, cela me parait compliqué, en php, de récupérer cette valeur.
Si non, il faudrait que tu nous montres le code PHP de 1.inc.php, il y a peut-être moyen de trouver quelque chose.
Autre piste : pourquoi souhaites-tu récupérer ce code ? Est-ce pour un traitement à faire nécessairement côté serveur ? Si ce que tu veux faire est faisable côté client (affichage, calcul simple sans lien avec une base de données), tu peux facilement récupérer cette valeur en javascript de la façon suivante :
var idrayon = getElementsByName("idrayon")[0].value;
Le [0] implique que la valeur que tu recherches soit la première à porter le nom "idrayon" dans ta page. S'il y en a d'autres, il faudra adapter.
Voilà, j'espère que je t'aide un peu...
Xavier
Nico_
Messages postés
1219
Date d'inscription
vendredi 29 décembre 2006
Statut
Membre
Dernière intervention
15 mars 2016
189
24 sept. 2009 à 21:19
24 sept. 2009 à 21:19
bonsoir,
<?php
$idrayon = htmlspecialchars($_POST['idrayon']); // variable avec la valeur de idrayon
?>
bonne soirée
<?php
$idrayon = htmlspecialchars($_POST['idrayon']); // variable avec la valeur de idrayon
?>
bonne soirée
Bonsoir,
Merci pour les réponses.
J'avais essayé la variable POST, mais comme le résultat est sur la même page, et non transmis à une autre, ça ne fonctionne pas.
Je viens d'essayer la petite fonction java, mais je fais peut-être une erreur dans le code.
<SCRIPT language="Javascript">
<head>
<!--
function fct_afficher(){
var num_rayon = getElementsByName("idrayon")[0].value;
}
fct_afficher();
//-->
</head>
</SCRIPT>
est-ce qu'il me manque quelque chose ?
Sinon, ce que j'ai affiché est bien le code de la page (n).inc.php
Cela est généré par Boutika premium, un logicel probablement développé sous Windev (car j'ai tout un dossier avec des ndx et des fic). Ces pages comprennt la description de l'article, le prix, la photo, etc...
Je n'ai pas la main (à part manuellement, une par une), pour ajouter du code à ces pages.
Ma seule possibilité est d'agir sur Produits.php, dans laquelle est inclue (n).inc.php
ci-dessous le code complet de la page Produits.php
<?php
session_start();
include("conf.inc.php");
include("liste_rayons.inc.php");
include("./outils/outils.php");
include("constantes.inc.php");
include("rayons.inc.php");
include("panier.inc.php");
include("header.inc.php");
include("navigation2.inc.php");
include("footer.inc.php");
include("contenu_droit.inc.php");
include ("liste_rayons_ariane.inc.php");
if (isset($_GET["prod"])){
include("./produits/".$_GET["prod"].".inc.php");
}
else {
header("location: index.php?".gestion_session());
}
$contenu_central='
<script type="text/javascript">
function sendData(la_selection,le_div) {
var url = \'liste_option.php\';
var parametres = la_selection;
var myAjax = new Ajax.Updater(
le_div,
url,
{
method: \'post\',
parameters: parametres
}
);
}
</script>'.$contenu_produit_en_cours;
include("sommaire.inc.php");
include("structure.ariane.inc.php");
?>
------------------
peut-être y verrez-vous plus clair.
En tout cas merci et bonne soirée
Merci pour les réponses.
J'avais essayé la variable POST, mais comme le résultat est sur la même page, et non transmis à une autre, ça ne fonctionne pas.
Je viens d'essayer la petite fonction java, mais je fais peut-être une erreur dans le code.
<SCRIPT language="Javascript">
<head>
<!--
function fct_afficher(){
var num_rayon = getElementsByName("idrayon")[0].value;
}
fct_afficher();
//-->
</head>
</SCRIPT>
est-ce qu'il me manque quelque chose ?
Sinon, ce que j'ai affiché est bien le code de la page (n).inc.php
Cela est généré par Boutika premium, un logicel probablement développé sous Windev (car j'ai tout un dossier avec des ndx et des fic). Ces pages comprennt la description de l'article, le prix, la photo, etc...
Je n'ai pas la main (à part manuellement, une par une), pour ajouter du code à ces pages.
Ma seule possibilité est d'agir sur Produits.php, dans laquelle est inclue (n).inc.php
ci-dessous le code complet de la page Produits.php
<?php
session_start();
include("conf.inc.php");
include("liste_rayons.inc.php");
include("./outils/outils.php");
include("constantes.inc.php");
include("rayons.inc.php");
include("panier.inc.php");
include("header.inc.php");
include("navigation2.inc.php");
include("footer.inc.php");
include("contenu_droit.inc.php");
include ("liste_rayons_ariane.inc.php");
if (isset($_GET["prod"])){
include("./produits/".$_GET["prod"].".inc.php");
}
else {
header("location: index.php?".gestion_session());
}
$contenu_central='
<script type="text/javascript">
function sendData(la_selection,le_div) {
var url = \'liste_option.php\';
var parametres = la_selection;
var myAjax = new Ajax.Updater(
le_div,
url,
{
method: \'post\',
parameters: parametres
}
);
}
</script>'.$contenu_produit_en_cours;
include("sommaire.inc.php");
include("structure.ariane.inc.php");
?>
------------------
peut-être y verrez-vous plus clair.
En tout cas merci et bonne soirée
Vous n’avez pas trouvé la réponse que vous recherchez ?
Posez votre question
Reivax962
Messages postés
3672
Date d'inscription
jeudi 16 juin 2005
Statut
Membre
Dernière intervention
11 février 2021
1 011
26 sept. 2009 à 11:09
26 sept. 2009 à 11:09
Bonjour,
En effet, il manque des choses.
Quand tu mets
Tout ce que tu fais, c'est assigner la valeur de idrayon à la variable num_rayon.
Ensuite, il faut en faire ce que tu veux... Si tu veux l'afficher quelque part, par exemple, il faut prévoir à l'endroit où tu veux l'afficher une zone spécifique.
Par exemple :
Le javascript :
Dans le code html :
Voilà !
Xavier
En effet, il manque des choses.
Quand tu mets
function fct_afficher(){ var num_rayon = getElementsByName("idrayon")[0].value; }
Tout ce que tu fais, c'est assigner la valeur de idrayon à la variable num_rayon.
Ensuite, il faut en faire ce que tu veux... Si tu veux l'afficher quelque part, par exemple, il faut prévoir à l'endroit où tu veux l'afficher une zone spécifique.
Par exemple :
Le javascript :
function fct_afficher(){ var num_rayon = getElementsByName("idrayon")[0].value; document.getElementById("span_idrayon").innerHTML = num_rayon; }
Dans le code html :
[blabla...] L'id du rayon du produit est <span id="span_idrayon"></span> [blabla...]
Voilà !
Xavier
graffx
Messages postés
6506
Date d'inscription
jeudi 22 mars 2007
Statut
Contributeur
Dernière intervention
24 mars 2019
1 975
26 sept. 2009 à 12:14
26 sept. 2009 à 12:14
Je voudrai rectifier un de tes dires a propos de $_POST['idrayon'], meme si il est sur la meme page que la tratitement, il faut pourtant mettre ca.
Que cela sois vers une autre page ou tout dans la meme pour recuperer la valeur d' un champs formulaire POST and ony POST :)
Que cela sois vers une autre page ou tout dans la meme pour recuperer la valeur d' un champs formulaire POST and ony POST :)
Reivax962
Messages postés
3672
Date d'inscription
jeudi 16 juin 2005
Statut
Membre
Dernière intervention
11 février 2021
1 011
26 sept. 2009 à 12:36
26 sept. 2009 à 12:36
Non, parce qu'elle ne cherche pas à récupérer une variable issue d'un formulaire : elle cherche à récupérer une valeur écrite dans un fichier html inclus à son script php, toujours côté serveur donc : cette page n'a encore jamais vu la couleur du navigateur client !
La solution la plus radicale consisterait à parser la page incluse, mais ce n'est pas forcément simple ni fiable si les page n.inc.php n'ont pas toutes la même tête.
C'est pour ça que je voulais savoir si le besoin de cette valeur était gérable côté client (parce qu'un peu de javascript simple suffit alors), ou si des calculs côté serveur étaient voulus.
La solution la plus radicale consisterait à parser la page incluse, mais ce n'est pas forcément simple ni fiable si les page n.inc.php n'ont pas toutes la même tête.
C'est pour ça que je voulais savoir si le besoin de cette valeur était gérable côté client (parce qu'un peu de javascript simple suffit alors), ou si des calculs côté serveur étaient voulus.
Reivax, merci pour ta réponse.
J'ai testé la chose suivante dans ma page produits.php :
$contenu_central='
<script type="text/javascript">
function fct_afficher(){
var num_rayon = getElementsByName("idrayon")[0].value;
document.getElementById("span_idrayon").innerHTML = num_rayon;
}
function sendData(la_selection,le_div) {
var url = \'liste_option.php\';
var parametres = la_selection;
var myAjax = new Ajax.Updater(
le_div,
url,
{
method: \'post\',
parameters: parametres
}
);
}
</script>
le numéro va s\'afficher : <span id="span_idrayon"></span>'.$contenu_produit_en_cours;
include("sommaire.inc.php");
include("structure.ariane.inc.php");
?>
mais malheureusement, aucun numéro ne s'affiche :-(
comme ça à première vue, il doit manquer quelque chose entre les balises span. Mais quoi ???
(j'ai essayé num_rayon, mais évidemment, ça me l'a pris comme du texte...)
Je n'ai pas non plus de message d'erreur, le reste de la page fonctionne correctement.
Je sais que je suis blonde, mais si vous pouvez m'aider encore un peu..., ce serait super, car là, je surchauffe.
Merci et bonne soirée
Eve
J'ai testé la chose suivante dans ma page produits.php :
$contenu_central='
<script type="text/javascript">
function fct_afficher(){
var num_rayon = getElementsByName("idrayon")[0].value;
document.getElementById("span_idrayon").innerHTML = num_rayon;
}
function sendData(la_selection,le_div) {
var url = \'liste_option.php\';
var parametres = la_selection;
var myAjax = new Ajax.Updater(
le_div,
url,
{
method: \'post\',
parameters: parametres
}
);
}
</script>
le numéro va s\'afficher : <span id="span_idrayon"></span>'.$contenu_produit_en_cours;
include("sommaire.inc.php");
include("structure.ariane.inc.php");
?>
mais malheureusement, aucun numéro ne s'affiche :-(
comme ça à première vue, il doit manquer quelque chose entre les balises span. Mais quoi ???
(j'ai essayé num_rayon, mais évidemment, ça me l'a pris comme du texte...)
Je n'ai pas non plus de message d'erreur, le reste de la page fonctionne correctement.
Je sais que je suis blonde, mais si vous pouvez m'aider encore un peu..., ce serait super, car là, je surchauffe.
Merci et bonne soirée
Eve
Reivax962
Messages postés
3672
Date d'inscription
jeudi 16 juin 2005
Statut
Membre
Dernière intervention
11 février 2021
1 011
30 sept. 2009 à 20:24
30 sept. 2009 à 20:24
Bonjour Ève,
Désolé, je n'ai pas été assez complet.
Il manque quelque chose : un appel à la fonction que tu as définie, fct_afficher() !
Tu peux le mettre dans la balise <body>, de cette façon :
<body onload="fct_afficher()">
Bon courage !
Xavier
Désolé, je n'ai pas été assez complet.
Il manque quelque chose : un appel à la fonction que tu as définie, fct_afficher() !
Tu peux le mettre dans la balise <body>, de cette façon :
<body onload="fct_afficher()">
Bon courage !
Xavier
Bonsoir,
Je te remercie beaucoup pour ces précisions, mais après avoir tourné dans tous les sens, ça ne fonctionne pas : la value de mon idrayon n'affiche rien.
Ci-dessous un extrait de la page html que j'obtiens :
Comme il y a plusieurs include, j'ai plusieurs balises <html></html> et <body></body>
Le code Javascript est placé après là où il doit s'afficher. Est-ce que ça (et les balises à répétition) peuvent gêner ?
Manque-t-il encore quelque chose ?
Merci encore !
Eve
Je te remercie beaucoup pour ces précisions, mais après avoir tourné dans tous les sens, ça ne fonctionne pas : la value de mon idrayon n'affiche rien.
Ci-dessous un extrait de la page html que j'obtiens :
<html> <body onload="fct_afficher()"> <br> <a href="http://www.monsite.com">Accueil</a> > nom du produit L'id du rayon du produit est <span id="span_idrayon"></span> </body> </html> <script type="text/javascript"> function sendData(la_selection,le_div) { var url = 'liste_option.php'; var parametres = la_selection; var myAjax = new Ajax.Updater( le_div, url, { method: 'post', parameters: parametres } ); } function fct_afficher(){ var num_rayon = getElementsByName("idrayon")[0].value; document.getElementById("span_idrayon").innerHTML = num_rayon; } </script>
Comme il y a plusieurs include, j'ai plusieurs balises <html></html> et <body></body>
Le code Javascript est placé après là où il doit s'afficher. Est-ce que ça (et les balises à répétition) peuvent gêner ?
Manque-t-il encore quelque chose ?
Merci encore !
Eve