Toon posts:

[PHP] Variabelen meesturen

Pagina: 1
Acties:

Verwijderd

Topicstarter
Allen,

Ik stuit op een probleem bij het maken van een formulier:

Ik heb de pagina index.php, waar het formulier in staat. In dit script is een ander script, functie.php, geinclude. Op het moment dat ik index.php verstuur roep ik deze dus ook weer aan(form action=index.php). Deze loopt dus nog een keer index.php en functie.php langs en alle velden worden gecontroleerd op fouten.

Als er fouten in zitten word het formulier nog een keer gedisplayed en anders(= geen fouten) ga ik met behulp van een meta-tag naar de pagina index2.php. Het probleem is nu als volgt:

In dit script heb ik ook de array nodig van pagina 1. Ik heb geprobeerd dit via de url mee te geven, maar dit werkt helaas niet(array geformat met base64_encode() en serialize(). De string is blijkbaar te lang, want ik krijg de index.php terug en als ik dan in de bron kijk zie ik een enorme string staan.

Nu zoek ik dus een manier om deze gegevens wel over te hevelen naar die andere pagina. Heeft iemand misschien een oplossing voor me? Ik heb helaas geen beschikking over een database.

Alvast bedankt!

  • Nielsz
  • Registratie: Maart 2001
  • Niet online
sessies?

Verwijderd

Topicstarter
Nooit mee gewerkt. Is ook denk ik geen optie want het _moet_ op iedere pc werken...

Verwijderd

Verwijderd schreef op 04 oktober 2002 @ 16:27:
[...]
Nooit mee gewerkt. Is ook denk ik geen optie want het _moet_ op iedere pc werken...
ga eerst s wat documentatie over sessies lezen dan, voordat je een oordeel geeft ;)

Verwijderd

Topicstarter
Verwijderd schreef op 04 oktober 2002 @ 16:29:
[...]


ga eerst s wat documentatie over sessies lezen dan, voordat je een oordeel geeft ;)
Sessions werkt toch ook via cookies?. Als iemand deze uit heeft staan, dan werkt het dus niet. Bedankt voor je reactie :)

  • drm
  • Registratie: Februari 2001
  • Laatst online: 09-06-2025

drm

f0pc0dert

bah sessies :r

dit is veel eenvoudiger: een include (of andersoortige template maken) met daarin het formulier:
HTML:
1
2
3
4
<form ...>
   <input ... name="name" value="<?=$entry [ 'name' ]?>" />
   <!-- etc... -->
</form>


die includen bij het form met daarvoor initialisatie van een lege array, of een array met default waarden:
PHP:
1
2
3
4
5
$entry = array (
   'name' => '',
   'date'  => 'dd-mm-yyyy'
   /* etc... */
);


Wanneer het form gesubmit wordt:

PHP:
1
2
3
4
$entry = array (
   'name' => $_POST [ 'name' ]
   /* ... etc... */
);


en het form weer includen.

Veel eenvoudiger dan sessies, en je hergebruikt tenminste een beetje je code. Je zou het zelfs kunnen gebruiken voor het editten van informatie. Is gewoon een kwestie van genoeg informatie in het formulier stoppen :Y)

hth :)

edit:
wellicht ten overvloede, dit systeempje is ook heel eenvoudig generiek te maken voor allerlei soorten formulieren. Het enige wat je vast hoeft te leggen is de form-velden, hun type, en evt. nog wat parameters. Met de nodige foreach loopjes heb je dan je code redelijk compact, en eenvoudig aan te passen :)

edit2:
:X :X :X * drm leest voor geen meter. never mind :P

Music is the pleasure the human mind experiences from counting without being aware that it is counting
~ Gottfried Leibniz


  • Kawa
  • Registratie: Juni 2001
  • Laatst online: 31-08 15:13
sessies zijn server side. je gebruikt ze om een waarde van een variabele te behouden zodat deze door de hele site gebruikt kan worden. Denk aan de username van iemand.

Verwijderd

_/-\o_

  • drm
  • Registratie: Februari 2001
  • Laatst online: 09-06-2025

drm

f0pc0dert

om toch nog maar even na mijn nutteloze post terug te komen op sessies, je kunt sessies ook zonder cookies doen. 't enige wat in het cookie opgeslagen wordt is een ID, waarmee de user geidentificeerd wordt. Je kunt zelf een sessie-handler implementeren, zodat alles opgeslagen wordt zoals jij het wilt. Zie hiervoor uiteraard de manual :)

Music is the pleasure the human mind experiences from counting without being aware that it is counting
~ Gottfried Leibniz

Pagina: 1