Check alle échte Black Friday-deals Ook zo moe van nepaanbiedingen? Wij laten alleen échte deals zien
Toon posts:

Array's gebruiken in GET formulier

Pagina: 1
Acties:

Verwijderd

Topicstarter
Ik gebruik op dit moment een formulier met POST die op de volgende pagina een query uitvoert waarna resultaten worden weergegeven. Het formulier bevat twee selectievakken die uit allebei een array bestaat omdat er meerdere waarde tegelijk kunnen worden gekozen.

Mijn probleem is dat als ik op de resultatenpagina weer terug wil via de terugknop van je browser dat de pagina is verlopen. Nu had ik op de Gathering of Tweakers al gezien dat je dat kunt oplossen door POST te vervangen naar GET. Maar als ik dan op submit klik verschijnt gewoon dezelfde pagina ipv de action die aan het formulier is gekoppeld. Nu had ik met een kennis gekeken naar de mogelijke oorzaak en wij stuiten op het feit dat misschien de array waarde te lang zijn in je url waardoor de action niet goed wordt uitgevoerd.

Om een lang verhaal kort te maken. Ik gebruik Array's in mijn formulier en ik wil toch af van "pagina is verlopen" als je terug wilt naar de vorige pagina. Iemand hier ervaring mee?

  • Woef
  • Registratie: Juni 2000
  • Niet online
Misschien een sessie gebruiken?
En daar alles naar toe schrijven.

[ Voor 36% gewijzigd door Woef op 05-01-2008 13:39 ]


Verwijderd

Topicstarter
Dus GET in je formulier toepassen, vervolgens de array's opslaan in een sessie en redirecten naar de resultatenpagina?

kan ik een array ook gewoon simpel in een sessie opslaan? $_SESSION['array'] = '$array'; ?

[ Voor 32% gewijzigd door Verwijderd op 05-01-2008 13:47 ]


  • Razr
  • Registratie: September 2005
  • Niet online
Je kan een formulier ook naar zichzelf laten posten, vervolgens wel controleren of er een POST is gedaan (en de waarden checken). En dan kun je gewoon op die pagina de data afhanelden/query's uitvoeren?

Evt. kun je daar dan ook meldingen weergeven mocht er iets niet goed ingevuld zijn, dan hoef je dus geeneens terug naar de vorige pagina.

  • FragFrog
  • Registratie: September 2001
  • Laatst online: 20-11 13:35
Verwijderd schreef op zaterdag 05 januari 2008 @ 13:43:
kan ik een array ook gewoon simpel in een sessie opslaan? $_SESSION['array'] = '$array'; ?
Je kan zelfs objecten (serialized) in een sessie opslaan mocht je dat willen ;)

Let er wel op dat je een redirect gebruikt anders krijg je nog steeds 'pagina verlopen' meldingen :)

@ hierboven: Kan, maar dan werkt de terug knop in je browser nog steeds niet he :)

[ Voor 9% gewijzigd door FragFrog op 05-01-2008 14:28 ]

[ Site ] [ twitch ] [ jijbuis ]


  • frickY
  • Registratie: Juli 2001
  • Laatst online: 10:33
Ik denk eerder dat je de submit van het formulier niet goed afvangt.
Als je op de ontvangende pagina nu dingen doet als;
PHP:
1
if(sizeof($_POST) > 0)

of
PHP:
1
if($_SERVER['REQUEST_METHOD'] == 'POST')

dan werkt dat natuurlijk niet meer, omdat je nu middels een GET-request werkt.

  • LiquidSmoke
  • Registratie: Maart 2001
  • Laatst online: 19-11 17:45
if($_SERVER['REQUEST_METHOD'] == 'GET')

Werkt toch ook?

  • frickY
  • Registratie: Juli 2001
  • Laatst online: 10:33
Om een GET-request af te vangen? Jazeker.

  • Cartman!
  • Registratie: April 2000
  • Niet online
Dat wordt met elke 'gewone' pagina opvraag met TRUE gevalideerd dus.

[ Voor 10% gewijzigd door Cartman! op 05-01-2008 15:09 ]


Verwijderd

Inderdaad Cartman :D Grappig. Ik zou zelf voor de multiple select list gaan in html.
http://readlist.com/lists...t/php-general/0/1122.html
http://readlist.com/lists...t/php-general/0/1123.html

Hopelijk helpt deze thread in precies detail wat ik eens functioneel heb gezien :)

  • Tanuki
  • Registratie: Januari 2005
  • Niet online
Dus... Zou je ons kunnen vertellen hoelang je query string is, waar je op zoekt en wat de gegevens zijn die je nodig hebt om te kunnen zoeken?

Dan kunnen we je natuurlijk veel beter helpen.

Iets als:
PHP:
1
2
3
4
5
6
<?php
if (isset($_GET['search']))
{
    // Ga zoeken met $_GET['search']
}
?>

... voldoet natuurlijk al om te kunnen zoeken.

PV: Growatt MOD5000TL3-XH + 5720wp, WPB: Atlantic Explorer v4 270LC, L/L: MHI SCM 125ZM-S + SRK 50ZS-W + 2x SRK 25ZS-W + SRK 20ZS-W Modbus kWh meter nodig?


Verwijderd

Cartman! schreef op zaterdag 05 januari 2008 @ 15:09:
Dat wordt met elke 'gewone' pagina opvraag met TRUE gevalideerd dus.
Ik geef de submit-button een value en controleer of deze klopt om te controleren of er POST-gegevens zijn. Werkt altijd correct.
Pagina: 1