[PHP/HTML] Form

Pagina: 1
Acties:
  • 106 views sinds 30-01-2008
  • Reageer

Onderwerpen


Acties:
  • 0 Henk 'm!

Verwijderd

Topicstarter
Ik schets even een voorbeeldje:

Stel je hebt in één bestand 6 losse fomulieren die mbv van een switch met elkaar doorverbonden worden ....

In het eerste formulier staat dit:
code:
1
2
3
4
        <form name="form1" method="post" action="advies.php?target=stap2">
        <input type="hidden" name="achternaam1" value="11111">
        <input type="submit" name="Submit2" value="Ja, ik ga akkoord met de voorwaarden ">
        </form>


In stap twee is een nog een form met een aantal velden die je moet invullen, voor de rest geen hidden forms ...

De variabelen van form 1 worden gezonden naar form 2, variabelen van forms 2 naar form 3.

Wanneer ik in form twee, dit neerzet:

PHP:
1
2
3
<?
echo "$achternaam1";
?>


komt er niks in beeld ....

ziet iemand wat ik fout doe?

[ Voor 62% gewijzigd door Verwijderd op 08-02-2003 21:41 ]


Acties:
  • 0 Henk 'm!

Verwijderd

1: $achternaam1 = $_POST['achternaam1'];
2: echo $achternaam1; (hoeven geen quotes om)
als dit niet werkt:
3: $achternaam1 = $HTTP_POST_VARS['achternaam1'];

[ Voor 82% gewijzigd door Verwijderd op 08-02-2003 21:49 ]


Acties:
  • 0 Henk 'm!

  • Kees
  • Registratie: Juni 1999
  • Laatst online: 13:09

Kees

Serveradmin / BOFH / DoC
Staat register_globals toevallig op off?

probeer eens: echo "$_POST[achternaam1]";

"Een serveradmin, voluit een serveradministrator, is dan weer een slavenbeheerder oftewel een slavendrijver" - Rataplan


Acties:
  • 0 Henk 'm!

  • simon
  • Registratie: Maart 2002
  • Laatst online: 11:40
Als je even een link naar een file met phpinfo(); geeft kunnen we meer te weten komen :)

|>


Acties:
  • 0 Henk 'm!

Verwijderd

Simon schreef op 08 February 2003 @ 21:44:
Als je even een link naar een file met phpinfo(); geeft kunnen we meer te weten komen :)
Waarom? Je ziet toch zo al dat dit met globals te maken heeft...

Acties:
  • 0 Henk 'm!

Verwijderd

Topicstarter
hmmmz ... een beetje vergeten erbij te vermelden, maar het bestand bestaat uit een kleine 3000 regels.

Deze regels doet 't ... bedankt

PHP:
1
2
3
<?
echo "$_POST[achternaam1]";
?>

[ Voor 47% gewijzigd door Verwijderd op 08-02-2003 21:52 ]


Acties:
  • 0 Henk 'm!

  • simon
  • Registratie: Maart 2002
  • Laatst online: 11:40
Verwijderd schreef op 08 February 2003 @ 21:50:
hmmmz ... een beetje vergeten erbij te vermelden, maar het bestand bestaat uit een kleine 3000 regels.
In een klein form kan ik dmv het voorbeeld gewoon alles laten weergegeven, maar nu opeens gaat dit fout ...

Is er een betere.handigere manier om variabelen zonder database op te slaan?
Het lijkt me gezonder om je bestand toch wat 'beperkter' te houden qua grote, verder zou je variabelen in text files kunnen opslaan..

|>


Acties:
  • 0 Henk 'm!

Verwijderd

Verwijderd schreef op 08 februari 2003 @ 21:50:
hmmmz ... een beetje vergeten erbij te vermelden, maar het bestand bestaat uit een kleine 3000 regels.
In een klein form kan ik dmv het voorbeeld gewoon alles laten weergegeven, maar nu opeens gaat dit fout ...

Is er een betere.handigere manier om variabelen zonder database op te slaan?
De enige andere manier om gegevens op te slaan zijn .txt of andere files, maar dan is een database evenveel moeite.
Zet in php.ini
code:
1
register_globals = On

Doet ie dat wel weer gewoon?

[ Voor 8% gewijzigd door Verwijderd op 08-02-2003 21:52 ]


Acties:
  • 0 Henk 'm!

  • Osiris
  • Registratie: Januari 2000
  • Niet online
Btw... Een script.php?var=waarde kan toch helemaal niet als 'action' bij een form? Of ben ik nou n00b?

Acties:
  • 0 Henk 'm!

Verwijderd

Osiris schreef op 08 February 2003 @ 21:52:
Btw... Een script.php?var=waarde kan toch helemaal niet als 'action' bij een form? Of ben ik nou n00b?
Dat kan best, ik zie geen reden waarom dat niet zou kunnen?
Ik maak zelf ook gebruik van dit soort actions...

Acties:
  • 0 Henk 'm!

Verwijderd

Topicstarter
Osiris, dit kan mbv van een switch:

code:
1
2
3
4
5
6
case "stap3":
    stap3();
        break;
case "stap31":
    stap31();
        break;


hiermee geef ik de stappen aan, bijv document.ph?target=stap31 ... dan komt hij bij function31/stap31 waar een code staat ...


----

Het rare btw is dat ik opeens
PHP:
1
2
3
4
5
6
7
<?
echo "$_POST[achternaam1]";

// ipv

echo "$_POST['achternaam1']";
?>


moet gebruiken ... in het begin van het document, gebruik ik gewoon echo "$_POST['achternaam1']"; en dan doet ie het ...

[ Voor 10% gewijzigd door Verwijderd op 08-02-2003 21:56 ]


Acties:
  • 0 Henk 'm!

Verwijderd

Topicstarter
Ok, even terug naar het voorbeeld ....
Er zijn 6 forms ... lopende van 1 t/m 6 .... De variabelen van form 1 worden gezonden naar form 2, variabelen van forms 2 naar form 3 ... maar de variabelen van form1 niet, die blijven in twee steken ...

Ik merk dat ik wanneer ik variabelen in form 2 wil weergeven, dat dit lukt, maar bijv niet wanneer ik dit in form3 wil doen ....

Moet dit via hidden fields of zijn de variabelen die van form 1 naar form2 zijn gezonden en niet verder ook anders te benaderen?

Acties:
  • 0 Henk 'm!

Verwijderd

Je moet niet
echo "$_POST['achternaam1']"; doen...het moet zo:
echo $_POST['achternaam1']; ZONDER QUOTES!!

Acties:
  • 0 Henk 'm!

Verwijderd

Topicstarter
Ok, maar dan doen de variabelen van form 1 het in form 3 nog niet .... jammer genoeg

Acties:
  • 0 Henk 'm!

  • Minos111
  • Registratie: Augustus 2002
  • Laatst online: 05-03-2012
Probeer het gewoon met een extra hidden field joh. Niet de mooiste oplossing, wel effectief.

<input type='hidden' name='achternaam1' value='<? echo $achternaam1; ?>'>

Daarnaast kun je de variabele ook meenemen in een session-variabele

Acties:
  • 0 Henk 'm!

Verwijderd

Ja, je moet natuurlijk wel elke keer weer die gegevens meesturen he...aan het eind heb je dus 32^x hidden fields :p

Acties:
  • 0 Henk 'm!

Verwijderd

Topicstarter
als het goed is doet die dat automatisch ... of ik ben verkeerd ingelicht ...
Pagina: 1