12. oktober 2007 - 13:18Der er
9 kommentarer og 1 løsning
php forståelse
uhm en lille en =)
1. jeg har en form hvori feltet "juhuu" er 2. jeg submitter den form og åbner en anden side der tester om "juhuu" er udfyldt 3. "juhuu" er udfyldt og efter testen vil jeg sende indholdet af "juhuu" videre til en side 3...
For at gøre det skal jeg så have inholdet af "juhuu" ind i en ny form eller kan jeg bruge noget andet på side to?
Du kan sende den videre via querystring, altså i url-baren, efter sidens sti, hvis det ikke gør noget folk kan se den.
Men det virkelige spørgsmål er vel: Hvorfor tester du ikke bare for om den er udfyldt og viser den på samme side? Altså springer side 2 over, og går direkte til side 3, hvor du først tester for om den er udfyldt, og hvis den er, udskriver den. Det er normal praksis, og det andet er unødigt besværligt.
Jeg har min form på side 1, der kan jeg så "submit" eller "hent oplysninger" (fordi man kan skrive tlf nr ind og hente alle oplysninger derudfra).
Trykker man submit loader den samme side igen hvor den så gør følgende:
if(hentoplysninger){ script der henter oplysninger, derefter viser inholdet på siden}; else if(submit){tester om form er udfyldt korrekt, hvis "ja", sender data viddere til en post.php der sender data med mail}; else {vis siden som default};
for at tjecke på samme side skal man så bare i form skrive action="tjeck" og så kører den automatisk bare videre ned ad siden? eller hvordan vil du gøre det?
nej ok det kan jeg godt se... grunden til at jeg har lavet en post.php er fordi det er lidt mere overskueligt så der ikke kommer 400 linier kode =)
Men du vil mene det er bedst sådan?
Bare for en god ordens skyld kan man ikke sende data videre til side 3 som jeg skrev først uden at putte det hele i adresse linien,.. for der er nok 9-10 ting der skal med og det er jo lidt vildt og ser skørt ud =)
Hvis det er fordi mail-koden fylder for meget, kan du godt have den liggende i en anden fil, og så bare inkludere den på siden.
if ($juhuu) { include("mail.php"); funktion_der_ligger_i_mail_php("parameter"); echo '<div>E-mail afsendt!</div>'; }
Ellers kan du gemme tingene i en session, og hente dem igen på den næste side. Men det er dårlig praksis - specielt fordi dine brugere jo så skal vise en ekstra side, og dem med langsomt net skal vente længere tid.
Altid holde det til så få sideskift som muligt, uden at miste overskuelighed :)
Fair, fair. Det sker også nogle gange for mig. Specielt fordi jeg bor på Østerbro.
Men held og lykke med det :)
Synes godt om
Ny brugerNybegynder
Din løsning...
Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.