2010-10-27 8 views
-1

Possible en double:
How do i Loop through the hidden field items and put in Session using PHPComment puis-je boucle à travers ce caché format champ

J'ai un caché champ qui contient ce format qui contient l'ensemble des lignes séparées par « ; » (point-virgule) et chaque ligne contient un nom de colonne séparé par ':' (deux points) et chaque valeur de colonne séparés par ',' (virgule) donc mon format serait ENO: 123, ENAME: XYZ, SAL: 1200; ENO: 598, ENAME: AIR, SAL: 1300; qui est ce qui est stocké dans le champ caché

Alors, comment puis-je saisir chaque colonne comme ENO, ENAME et SAL leurs valeurs pour un nombre de lignes écrites dans le champ caché donc j'ai ma propre fonction de session personnalisée où je peux définir la clé et valeur .So sur la boucle des valeurs Je devrais être en mesure de mettre MyCustomSessionFunction ('ENAME', ??????). Comment dois-je remplir cela.

Je n'ai pas des réponses fournies plus tôt .Peut quelqu'un s'il vous plaît aidez-moi

$hiddenformat = $_POST['hiddenfield']; 



    string(80) "ENO:1000,ENAME:B,SAL:10;ENO:1000,ENAME:S,SAL:100;" 

quand je vardump (hiddenformat de $) Je reçois le format ci-dessus .Comment dois-je exploser et boucle et attribuer à chaque valeur à mon fonction de la session personnalisée

 foreach($outer_array as $outer_key => $inner_array) 
    { 
    foreach($inner_array as $key => $value) 
    { 

    } 
    } 
+0

Veuillez regarder la mise en forme (et l'orthographe). Utilisez la fenêtre d'aperçu. Appuyez sur CTRL-K pour mettre en forme le code correctement. – EboMike

+2

N'est-ce pas fondamentalement la même chose que vous avez demandé ici? http://stackoverflow.com/questions/4035591/how-do-i-loop-through-the-hidden-field-items-and-put-in-session-using-php –

+1

et ici? http://stackoverflow.com/questions/4037213/how-do-i-iterate-through-this-loop-get-each-item-separately. Poser la même question encore et encore et n'est pas acceptable. –

Répondre

0

Ouais, c'était. C'est juste pour dire que tout autour de ça, vous devez exploser() par ";" et dans la boucle, utilisez le code de Marc, car il y a plusieurs jeux de données dans la chaîne.

3
$hiddenformat = $_POST['hiddenfield']; 
$parts = explode(',', $hiddenformat); 

foreach($parts as $part) { 
    $bits = explode(':', $part); 
    ... 
} 

Compte tenu d'un hiddenformat de $ de ENO:1000,ENAME:B,SAL:..., le premier exploser va diviser la ligne à chaque virgule , Vous donnant une gamme de pièces de $ qui ressemble à:

$parts = array(
    0 => 'ENO:1000', 
    1 => 'ENAME:B', 
    2 => 'SAL:..... 
); 

Yuu utiliser foreach pour boucler sur ce tableau de pièces $, et de diviser la partie $ à chaque deux points (:). Donc, à chaque étape, $ BITS ressembler à:

$bits = array(
    0 => 'ENO', 
    1 => '1000' 
) 

puis sur la prochaine itération

$bits = array(
    0 => 'ENAME', 
    1 => 'B' 
) 

et ainsi de suite. Ce que vous faites avec ces morceaux individuels dépend de vous.

Et oui, tout cela était présent dans les réponses aux autres questions. Vous avez juste dû faire un peu de travail pour tout mettre ensemble.