[PHP] Array wil niet

Pagina: 1
Acties:

  • kaandorp
  • Registratie: November 1999
  • Laatst online: 03-09 22:36
Ik laat een html pagina genereren met een aantal checkboxen onderelkaar. Die checkboxen zijn users die wel of geen toegang krijgen.
De HTML ziet er als volgt uit:
code:
1
2
3
<input type=checkbox name=auth_users[] value=2>User1
<input type=checkbox name=auth_users[] value=4>User2
Etc....

Maar als ik dit submit krijg ik geen array terug.
PHP:
1
<?if (isset($auth_users)) {    echo "ja.";}?>

  • thomaske
  • Registratie: Juni 2000
  • Laatst online: 09-09 14:51

thomaske

» » » » » »

Wat als je dit even doet:
PHP:
1
<?print_r($auth_users);?>

de waarde van $auth_users is alleen gevuld als er minstens 1 checkbox is aangevinkt..

Brusselmans: "Continuïteit bestaat niet, tenzij in zinloze vorm. Iets wat continu is, is obsessief, dus ziekelijk, dus oninteressant, dus zinloos."


  • Grum
  • Registratie: Juni 2001
  • Niet online
Je code zegt nix over je probleem.

En verder: print_r($_GET); / print_r($_POST); / print_r($HTTP_GET_VARS); / print_r($HTTP_POST_VARS); / phpinfo();

  • Tim
  • Registratie: Mei 2000
  • Laatst online: 23-07 15:18

Tim

1. gebruik "
2. je kan volgens mij geen arrays gebruiken op deze manier..
3. Er zijn 2 checkboxes met dezelfde naam

  • Grum
  • Registratie: Juni 2001
  • Niet online
Op maandag 22 april 2002 15:10 schreef Timpie het volgende:
1. gebruik "
2. je kan volgens mij geen arrays gebruiken op deze manier..
3. Er zijn 2 checkboxes met dezelfde naam
1/ klein puntje
2/ niet denken jij ;)
3/ wat dan nog :?

  • DRvDijk
  • Registratie: Juni 2001
  • Laatst online: 08-09 17:10
Hij wil de waarde die doorgestuurd is van een <INPUT> automatisch in een array hebben denk ik.
Dus <INPUT NAME="bla[16]"> dat dat automatisch in de array $bla terechtkomt in het element [16], oftewel: $bla[16] :)

Hoe dat moet is mij ook een raadsel: Ik doe zoiets altijd via het PHP-script, maar het zou handig zijn om het direct te kunnen, dus wacht ook ik met spanning af ;)

edit:
Of beter nog: Toegevoegd aan een bestaande array (uit cookie of whatever).. <INPUT NAME="bla[]"> dat dat terechtkomt aan het eind van array $bla, dus op $bla[count($bla)] . Dat zou helemáál handig zijn! :D

  • LuCarD
  • Registratie: Januari 2000
  • Niet online

LuCarD

Certified BUFH

Op maandag 22 april 2002 15:12 schreef elviver het volgende:
Hij wil de waarde die doorgestuurd is van een <INPUT> automatisch in een array hebben denk ik.
Dus <INPUT NAME="bla[16]"> dat dat automatisch in de array $bla terechtkomt in het element [16], oftewel: $bla[16] :)

Hoe dat moet is mij ook een raadsel: Ik doe zoiets altijd via het PHP-script, maar het zou handig zijn om het direct te kunnen, dus wacht ook ik met spanning af ;)
Heb je het ooit geprobeerd?

Nee.... Snel doen.. Het werkt namelijk gewoon... :) Zet je bij je INPUT nog wel een type neer?

edit:

Dit was post 2000 :)

Programmer - an organism that turns coffee into software.


  • Janoz
  • Registratie: Oktober 2000
  • Laatst online: 20:58

Janoz

Moderator Devschuur®

!litemod

Op maandag 22 april 2002 15:12 schreef elviver het volgende:
Hij wil de waarde die doorgestuurd is van een <INPUT> automatisch in een array hebben denk ik.
Dus <INPUT NAME="bla[16]"> dat dat automatisch in de array $bla terechtkomt in het element [16], oftewel: $bla[16] :)

Hoe dat moet is mij ook een raadsel: Ik doe zoiets altijd via het PHP-script, maar het zou handig zijn om het direct te kunnen, dus wacht ook ik met spanning af ;)
Dat werkt gewoon hoor. Waneer je je form field als naam $array[1] geeft krijg je een array in je HTTP_*_VARS die bij sleutel 1 de waarde heeft. Laat je de sleutel weg (zoals bij de topicstarter) dan krijg je gewoon een array met oploppende sleutels (0,1,2,3,...)..

[edit] irri html rechten ook :)... krijg ik een <input> ipv een <input>

Ken Thompson's famous line from V6 UNIX is equaly applicable to this post:
'You are not expected to understand this'


  • DRvDijk
  • Registratie: Juni 2001
  • Laatst online: 08-09 17:10
Op maandag 22 april 2002 15:14 schreef LuCarD het volgende:
Nee.... Snel doen.. Het werkt namelijk gewoon... :) Zet je bij je INPUT nog wel een type neer?
Heu doing, ja, en een value, lijkt me ook aangenaam :P
Op maandag 22 april 2002 15:15 schreef Janoz het volgende:

[..]

Dat werkt gewoon hoor. Waneer je je form field als naam $array[1] geeft krijg je een array in je HTTP_*_VARS die bij sleutel 1 de waarde heeft. Laat je de sleutel weg (zoals bij de topicstarter) dan krijg je gewoon een array met oploppende sleutels (0,1,2,3,...)..
Ja, dat vroeg ik me dus af :) Maar aangezien het kénnerlijk werkt: *D Ikke gebruiken ga! :)

  • kaandorp
  • Registratie: November 1999
  • Laatst online: 03-09 22:36
Als alles doorstuur naar een script met print_r($HTTP_POST_VARS); dan krijg ik dit terug:
code:
1
Array ( [shortdesc] => xxx [longdesc] => [auth_users] => Array ( [0] => 2 [1] => 4 ) [submit] => Aanmaken )

Dus zo te zien is die auth_users er wel.

Doe ik nu print_r($auth_users); dan zie ik niks.... :(

  • kaandorp
  • Registratie: November 1999
  • Laatst online: 03-09 22:36
Denk dat ik er uit ben :9

Ik gebruik nu print_r($_POST[auth_users]); en dat werkt wel.
En dat komt meteen goed uit, want volgens Grum moet je altijd $_POST gebruiken :D

  • LuCarD
  • Registratie: Januari 2000
  • Niet online

LuCarD

Certified BUFH

Op maandag 22 april 2002 15:23 schreef kaandorp het volgende:
Denk dat ik er uit ben :9

Ik gebruik nu print_r($_POST[auth_users]); en dat werkt wel.
En dat komt meteen goed uit, want volgens Grum moet je altijd $_POST gebruiken :D
Volgens Grum moet je ook error_reporting(E_ALL) gebruiken....

En dat doe je nog niet... .

Programmer - an organism that turns coffee into software.


  • Grum
  • Registratie: Juni 2001
  • Niet online
kaandorp: En dat komt meteen goed uit, want volgens Grum moet je altijd $_POST gebruiken :D


Dan wil ik graag zien dat je me eventjes quote waar ik dat zeg, het is namelijk ONZIN.

  • kaandorp
  • Registratie: November 1999
  • Laatst online: 03-09 22:36
Op maandag 22 april 2002 15:25 schreef LuCarD het volgende:

[..]

Volgens Grum moet je ook error_reporting(E_ALL) gebruiken....

En dat doe je nog niet... .
Heb hem meteen in mijn header gezet ;)
Deed het altijd wel, maar was het ff vergeten.

Geeft altijd wel een voldaan gevoel als je script dan nog steeds goed werkt :P

  • DRvDijk
  • Registratie: Juni 2001
  • Laatst online: 08-09 17:10
Op maandag 22 april 2002 15:27 schreef Grum het volgende:
kaandorp: En dat komt meteen goed uit, want volgens Grum moet je altijd $_POST gebruiken :D


Dan wil ik graag zien dat je me eventjes quote waar ik dat zeg, het is namelijk ONZIN.
Je hebt gelijk: Het ís onzin.. Alleen ONZIN komt er zo uit van: Het hooft nooit. En da's ook weer niet waar!

Je moet het gebruiken als je wilt dat de variabelen van een POST-form komen (hence the name :P). Het is bijvoorbeeld beter (voor de user beterder dan voor de webmaster denk ik) om passwords niet via de URL mee te sturen maar via een POST-form (ook weer een open deur, maar goed).

  • Grum
  • Registratie: Juni 2001
  • Niet online
Je mist het punt. Het ging om het gebruik van $_POST of $HTTP_POST_VARS en dan zou ik gezegd hebben dat je ALTIJD $_POST moet gebruiken ... en dat is dus ONZIN.

  • DRvDijk
  • Registratie: Juni 2001
  • Laatst online: 08-09 17:10
Oowwwwwwwww........ Als dat alles is.. Dan was ik een andere discussie aan het voeren

  • Grum
  • Registratie: Juni 2001
  • Niet online
Je trapt alleen maar open deuren in met je mono(loog)-discussie

  • kaandorp
  • Registratie: November 1999
  • Laatst online: 03-09 22:36
Jongens..Jongens.. rustig aan...

Ik bedoelde alleen maar te zeggen dat ik meende te herinneren dat Grum ooit eens gezegd had dat het beter was $_POST OF(!) $HTTP_POST_VARS te gebruiken met het oog op de veiligheid. En dat klonk idd wel aannemelijk.

;)
Pagina: 1