Précédent   Forum des professionnels en informatique > PHP > Langage > Formulaires
Formulaires Forum d'entraide sur les formulaires avec PHP. Avant de poster -> FAQ formulaires, Cours de formulaires et Sources de formulaires
Partagez cette discussion sur d'autres réseaux sociaux : Viadeo Twitter Google Facebook Digg Delicious MySpace Yahoo
Réponse Proposer ce sujet en actualité
 
Outils de la discussion
Publicité
'
Vieux 30/08/2007, 18h46   #1
Membre à l'essai
 
Inscription : mai 2004
Messages : 58
Détails du profil
Informations forums :
Inscription : mai 2004
Messages : 58
Points : 23
Points : 23
Par défaut Découpage de $_POST

Bonjour à tous,
je souhaiterai splitter la variable POST de mon formulaire afin d'obtenir une liste de nom de colonne "découpé"
en effet pour le moment je vais avoir des choses comme
Citation:
[h4] => -1 [h6] => -1 [h13] => -1
je souhaiterai pouvoir récupérer "4,6 et 13"
j'avais donc pensé à
Code :
1
2
3
4
5
6
7
$tabpost=split("h",$_POST);
      $j=1;
      for ($i=1;$i<=count($tabpost);$i++)
      {
        if (is_int($tabpost[$i]))
        {
                 .....
mais ca ne fonctionne pas
Ce que je souhaite faire est-il faisable ?
si oui comment ?
si non, existe-t-il une colonne "cachée" de $_POST ? (du style h4 est la colonne 1, h6 est la colonne 2 etc....)


je suis obligé de mettre le "h" devant les nombres car les colonnes avec le nombre existe déjà et le "h" defini les hidden des autres

Merci d'avance
hyipicai est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 30/08/2007, 22h06   #2
Membre Expert
 
Inscription : janvier 2005
Messages : 2 288
Détails du profil
Informations forums :
Inscription : janvier 2005
Messages : 2 288
Points : 2 287
Points : 2 287
tu peux faire une boucle sur ton tableau $_POST et faire un traitement spécial quand le nom du champ commence par h ?
Code :
1
2
3
4
5
6
7
8
foreach($_POST as $cle => $valeur)
{
// si champ hidden
if(substr($cle, 0, 1) == "h")
{
// traitement du hidden, tu peux récupérer la valeur avec un substr aussi
}
}
koopajah est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 31/08/2007, 09h18   #3
Membre à l'essai
 
Inscription : mai 2004
Messages : 58
Détails du profil
Informations forums :
Inscription : mai 2004
Messages : 58
Points : 23
Points : 23
je ne connais pas les valeurs possibles (enfin si entre 1 et 180 000 ^^)
et pour préciser $cle, il faut aussi connaitre la fin de celle ci non ?
hyipicai est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 31/08/2007, 09h23   #4
Membre Expert
 
Inscription : janvier 2005
Messages : 2 288
Détails du profil
Informations forums :
Inscription : janvier 2005
Messages : 2 288
Points : 2 287
Points : 2 287
Code :
1
2
3
4
5
6
7
8
foreach($_POST as $cle => $valeur)
{
// si champ hidden
if(substr($cle, 0, 1) == "h")
{
echo "Champ hidden trouvé, nom : " . $cle . " et valeur : " . $valeur. "<br/>";
}
}
testes ce code et tu verras bien ce que ca fait, c'est le meilleur moyen de comprendre. Si ca ne correspond pas a ce que tu cherches c'est que j'ai du mal comprendre!
koopajah est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 31/08/2007, 09h44   #5
Membre Expert
 
Inscription : octobre 2002
Messages : 1 141
Détails du profil
Informations personnelles :
Âge : 32
Localisation : France, Rhône (Rhône Alpes)

Informations forums :
Inscription : octobre 2002
Messages : 1 141
Points : 1 204
Points : 1 204
Envoyer un message via MSN à Raideman
Pour compléter ce que koopa a proposé, $_POST est en fait un tableau, comme tu l'as dit de la forme:
Code :
1
2
$_POST['h13']=1;
$_POST['h12']=2;
quand tu fais
Code :
foreach ($_POST as $cle=>$valeur)
,

tu vas parcourir tout le tableau post, et pour chaque élément tu auras cette
structure:

Code :
$_POST['$cle']=$valeur;
Donc toutes tes variables POST seront parcourus et tu pourras récupérer à la fois la valeur, et la clé sans rien avoir à préciser de plus de ton coté.
et tu auras donc :
Code :
1
2
3
4
foreach ($_POST as $cle=>$valeur){
echo $cle .":".$valeur."<br>";
}
//va afficher h13:1 et h12:2
Raideman est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 31/08/2007, 10h02   #6
Membre à l'essai
 
Inscription : mai 2004
Messages : 58
Détails du profil
Informations forums :
Inscription : mai 2004
Messages : 58
Points : 23
Points : 23
oki j'ai compris le truc

merci beaucoup ca marche
hyipicai est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 31/08/2007, 10h06   #7
Nouveau Membre du Club
 
Inscription : septembre 2006
Messages : 44
Détails du profil
Informations forums :
Inscription : septembre 2006
Messages : 44
Points : 26
Points : 26
Si tu veux récupérer une liste des clés modifiées tu peux essayer ceci

Code :
$sList = str_replace( 'h', '', implode( ',', (array_keys($_POST) ) ) );
crazyday est déconnecté   Envoyer un message privé Réponse avec citation 00
Réponse Proposer ce sujet en actualité Cette discussion est résolue.
Outils de la discussion



Fuseau horaire GMT +2. Il est actuellement 23h48.


 
 
 
 
Partenaires

Hébergement Web