Header functie met variabele in url
http://localhost:8080/Schapendb/WijzigSchaap.php?pstlevnr=200165508823
Als ik de pagina submit wordt deze niet ververst. Dit wil ik bereiken d.m.v. de header functie zodat wijzigingen op de pagina direct zichtbaar zijn na submitten.
Omdat de variabele '?pstlevnr=200165508823' ontbreekt verschijnt n.a.v. het volgende stukje script een foutmelding.
Hoe kan ik een pagina verversen met een variabele in de url ?
Een pagina wordt geopend, vanuit een andere pagina, met een variabele in de url nl. Als ik de pagina submit wordt deze niet ververst. Dit wil ik bereiken d.m.v. de header functie zodat wijzigingen op de pagina direct zichtbaar zijn na submitten.
Code (php)
Omdat de variabele '?pstlevnr=200165508823' ontbreekt verschijnt n.a.v. het volgende stukje script een foutmelding.
Code (php)
Hoe kan ik een pagina verversen met een variabele in de url ?
Gewijzigd op 26/07/2015 16:31:07 door Bas van de Ven
Quote:
Als ik de pagina submit wordt deze niet ververst. Dit wil ik bereiken d.m.v. de header functie zodat wijzigingen op de pagina direct zichtbaar zijn na submitten.
Euh, hoe/wanneer sla je dan je wijzigingen op?
Ik denk dat je eea wat beter kunt organiseren.
Je kunt na afloop van je verwerkstap iemand toch direct doorsturen naar een overzichts- of detailpagina? Ook zou je iemand kunnen terugsturen naar de toevoeg- of wijzigpagina op het moment dat je verstuurde informatie niet door de validatie heenkomt. Stroomlijn je formulier-flow wat meer, zou ik zeggen.
EDIT: om een voorbeeld te geven.
Plaatsen van nieuwe informatie:
formulier voor toevoegen
-- submit -->
verwerking:
validatie ok: sla data op, verwijs door met auto_increment id
validatie niet ok: terug naar formulier
Wijzigen van bestaande informatie:
formulier voor wijzigen (geeft id van item door in form action)
-- submit -->
verwerking:
validatie ok: verwijs door met doorgegeven id
validatie niet ok: terug naar formulier met doorgegeven id
Gewijzigd op 26/07/2015 17:14:55 door Thomas van den Heuvel
Veelal realiseer ik dit met de functie header echter nu wil ik een variabele in de url meegeven.
Ik dacht jou voorstel te begrijpen en heb in de form action een variable opgenomen.
Dus voor jou reactie :
Na jou reactie :
Waarschijnlijk begrijp ik je verkeerd want hiermee bereik ik niet mijn doelstelling.
Mijn opbouw code:
1. ophalen gegevens uit database
2. uitvoeren code : If (isset($_POST['knpSave']))
3. opbouw pagina (HTML)
Ik haal mijn doelstelling door stap 1 nog een keer uit te voeren tussen stap 2 en 3 echter moet dit anders kunnen volgens mij. Ps. stap 2 kan ik helaas niet voor stap 1 zetten.
Heb je nog ideeën / nadere toelichting ?
Toevoeging op 26/07/2015 19:14:19:
De query uit stap 1 zou ik kunnen splitsen in stap 1 en stap 2a
In stap 1 worden gegevens opgehaald t.b.v. controles in stap 2.
In stap 2a worden gegevens opgehaald voor weergave in stap 3.
Quote:
Na het submitten (en opslaan dus) zijn de gewijzigde gegevens niet zichtbaar op de pagina.
Welke pagina bedoel je hiermee?
Het klopt dat als je op pagina A je formulier hebt staan, en je submit naar pagina B, en daar blijkt, na validatie, het e.e.a. niet te kloppen, en je dus eigenlijk naar A terugmoet met de eerder ingevulde informatie - die verbeterd moet worden, dat je dan iets slims moet verzinnen om deze informatie weer terug te plaatsen. Je zou deze info tijdelijk in je sessie op kunnen slaan.
Als de validatie mislukt, zou je terug kunnen verwijzen naar het formulier met een "error flag", waarbij je probeert de informatie uit te lezen uit je sessie.
Het is overigens "beter" om te POSTen naar een apart script, wat je daarna weer redirect zodat je "dubbelposts" voorkomt bij het verversen van je pagina, zie dit WIKI artikel. Maar ja, daarvoor betaal je dus wel een (kleine) prijs.
Ik zal anders wel een voorbeeldje in elkaar zetten, dat praat wat makkelijker. Ook begrijp ik nog niet helemaal waar je vastloopt, of wat men wil dat er gebeurt.
Gewijzigd op 26/07/2015 21:09:50 door Thomas van den Heuvel