[php] van een aantal vars naar een array

Pagina: 1
Acties:

Onderwerpen


Acties:
  • 0 Henk 'm!

  • RSD
  • Registratie: Maart 2001
  • Laatst online: 08-02-2017
Ik heb een formulier die variabel is middels javascript. Bij post worden er dus een verschillend aantal waarden gepost. De geposte waarden zitten in variabelen en zijn iets in de strekking van, $antwoord1, $antwoord2, $antwoord3 etc... de 1 en de 2 en de 3 ... zijn dus oplopend en kunnen varieren.

Nu wil ik de waarden van die variabelen in een array stoppen, maar hoe doe ik dat ? Is daar een snelle manier voor?

Ik hoop dat ik het duidelijk heb uitgelegd.

Acties:
  • 0 Henk 'm!

  • Gonadan
  • Registratie: Februari 2004
  • Laatst online: 22:05

Gonadan

Admin Beeld & Geluid, Harde Waren
RSD schreef op dinsdag 11 april 2006 @ 15:39:
Ik heb een formulier die variabel is middels javascript. Bij post worden er dus een verschillend aantal waarden gepost. De geposte waarden zitten in variabelen en zijn iets in de strekking van, $antwoord1, $antwoord2, $antwoord3 etc... de 1 en de 2 en de 3 ... zijn dus oplopend en kunnen varieren.

Nu wil ik de waarden van die variabelen in een array stoppen, maar hoe doe ik dat ? Is daar een snelle manier voor?

Ik hoop dat ik het duidelijk heb uitgelegd.
Als je die formuliervelden dezelfde naam geeft in je html/javascript dan wordt het toch al een array? :)

Look for the signal in your life, not the noise.

Canon R6 | 50 f/1.8 STM | 430EX II
Sigma 85 f/1.4 Art | 100-400 Contemporary
Zeiss Distagon 21 f/2.8


Acties:
  • 0 Henk 'm!

  • b19a
  • Registratie: September 2002
  • Niet online
Even zoeken had je het volgende opgeleverd:

HTML:
1
<input name="antwoord[0]" /> <input name="antwoord[1]" /> <input name="antwoord[3]" />

PHP:
1
$_POST['antwoord'][0]; $_POST['antwoord'][1]; $_POST['antwoord'][2];

Acties:
  • 0 Henk 'm!

  • RSD
  • Registratie: Maart 2001
  • Laatst online: 08-02-2017
Maar in het posten van arrays zat toch een bug?

Acties:
  • 0 Henk 'm!

  • Gonadan
  • Registratie: Februari 2004
  • Laatst online: 22:05

Gonadan

Admin Beeld & Geluid, Harde Waren
RSD schreef op dinsdag 11 april 2006 @ 16:01:
Maar in het posten van arrays zat toch een bug?
Ik weet van niets, maar ja ik post ook bijna nooit arrays ;)

PHP:
1
2
3
4
5
6
7
<input name=antwoord /><input name=antwoord /><input name=antwoord />

...

$_POST['antwoord'][0];
$_POST['antwoord'][1];
$_POST['antwoord'][2];


werkt volgens mij ook.

Als je zonder array posten wilt doe je toch gewoon dit:
:+ :+ :+ :+ :+

Dat moet volgens mij ook kunnen (typfouten daar gelaten) :)

[ Voor 47% gewijzigd door Gonadan op 11-04-2006 16:12 ]

Look for the signal in your life, not the noise.

Canon R6 | 50 f/1.8 STM | 430EX II
Sigma 85 f/1.4 Art | 100-400 Contemporary
Zeiss Distagon 21 f/2.8


Acties:
  • 0 Henk 'm!

  • Michali
  • Registratie: Juli 2002
  • Laatst online: 29-05 22:54
Geen idee wat de persoon hierboven me nou probeert, naar dat werkt iig niet. Het is niet eens geldige PHP syntax.

Gewoon naar BoukeHaarsma luisteren, er zit geen bug in.

Probeer dit maar eens:
PHP:
1
2
3
4
5
6
7
<? var_dump($_POST); ?>
<form method="post">
<input type="text" name="test[0]"/>
<input type="text" name="test[1]"/>
<input type="text" name="test[2]"/>
<input type="submit"/>
</form>

[ Voor 41% gewijzigd door Michali op 11-04-2006 16:08 ]

Noushka's Magnificent Dream | Unity


Acties:
  • 0 Henk 'm!

  • Gonadan
  • Registratie: Februari 2004
  • Laatst online: 22:05

Gonadan

Admin Beeld & Geluid, Harde Waren
Michali schreef op dinsdag 11 april 2006 @ 16:07:
Geen idee wat de persoon hierboven me nou probeert, naar dat werkt iig niet. Het is niet eens geldige PHP syntax.
OI? Doe eens lief :'(

Wat doe ik fout dan? (PHP is erg lang geleden)
Ik dacht dat die bovenste optie ook mogelijk was. :?

Edit:
Die onderste was een hersenkronkel, negeer die maar.
Ik wilde een looptje gebruiken maar je kan variabelenamen niet generiek gebruiken geloof ik :)
Hangt weer van de taal af :)

[ Voor 24% gewijzigd door Gonadan op 11-04-2006 16:14 ]

Look for the signal in your life, not the noise.

Canon R6 | 50 f/1.8 STM | 430EX II
Sigma 85 f/1.4 Art | 100-400 Contemporary
Zeiss Distagon 21 f/2.8


Acties:
  • 0 Henk 'm!

  • Norm2782
  • Registratie: September 2003
  • Laatst online: 06-12-2016

Norm2782

Norm Trooper

je kan het zo gek maken als je wil. (associative) multidimensionale arrays kan je ook posten met een html form:

<input type="text" name="name[level1][level2a][]" value="vala1" />
<input type="text" name="name[level1][level2a][]" value="vala1" />
<input type="text" name="name[level1][level2b][]" value="valb1" />
<input type="text" name="name[level1][level2b][]" value="valb2" />

of

<input type="text" name="name[0][0][]" value="vala1" />
<input type="text" name="name[0][0][]" value="vala1" />
<input type="text" name="name[0][1][]" value="valb1" />
<input type="text" name="name[0][1][]" value="valb2" />

etc

[ Voor 29% gewijzigd door Norm2782 op 11-04-2006 16:20 ]

Norm 2782, why are you here?


Acties:
  • 0 Henk 'm!

  • Scott
  • Registratie: December 2004
  • Laatst online: 22:46

Scott

Ik ben, dus ik tweak

En mocht je toch geen voorstander zijn van het posten van een array, kan het altijd zo nog:

PHP:
1
2
3
4
5
$aantal = 10; // aantal antwoorden

for ($i = 1; $i <= $aantal; $i++) {
    $array[] = ${'antwoord'.$i};
}


Zo heb je per antwoord een item in $array

Acties:
  • 0 Henk 'm!

  • Gonadan
  • Registratie: Februari 2004
  • Laatst online: 22:05

Gonadan

Admin Beeld & Geluid, Harde Waren
ScottB schreef op dinsdag 11 april 2006 @ 16:21:
En mocht je toch geen voorstander zijn van het posten van een array, kan het altijd zo nog:

PHP:
1
2
3
4
5
$aantal = 10; // aantal antwoorden

for ($i = 1; $i <= $aantal; $i++) {
    $array[] = ${'antwoord'.$i};
}


Zo heb je per antwoord een item in $array
Zoiets bedoelde ik ja.
Maar dan while gebruiken en gewoon stoppen zodra er ééntje niet bestaat, dan heb je ze blijkbaar allemaal gehad :)

Look for the signal in your life, not the noise.

Canon R6 | 50 f/1.8 STM | 430EX II
Sigma 85 f/1.4 Art | 100-400 Contemporary
Zeiss Distagon 21 f/2.8


Acties:
  • 0 Henk 'm!

  • Michali
  • Registratie: Juli 2002
  • Laatst online: 29-05 22:54
Gewoon een array posten en niet moeilijk gaan doen. :P Variabele variabelen heb je zelden nodig. (Alleen bij het aanroepen van nog onbekende methoden van een class, of het aanmaken van een class zonder de naam direct te weten.)

Noushka's Magnificent Dream | Unity

Pagina: 1