hightow Skrevet 5. mars 2009 Del Skrevet 5. mars 2009 Fersking på php her! Jeg har laget en webside med en form og bruker php for å sende mail. Istedet for at brukeren blir sendt til en blank side etter at en har trykket på submit-knappen, vil jeg heller at den samme siden skal få beholde "fokus" (... eller helst den samme siden men med alle felt blanket ut og en tekst under som sier at meldingen er sendt...). Hva slags elementær kode må jeg taste for å få det til? Lenke til kommentar
AlecTBM Skrevet 5. mars 2009 Del Skrevet 5. mars 2009 tja, en header("location:") (google og php.net) skulle vell fikse biffen husk ob_start(); øverst i på siden Lenke til kommentar
ZeRKoX Skrevet 6. mars 2009 Del Skrevet 6. mars 2009 Eventuelt kan du ha skjema å scriptet som sender i samme fil, så legger du til i toppen f.eks: <?php if(isset($_GET['mailtekst'])) { //Kode som sender mail her echo '<p>Mailen er sendt</p>; } //sendmailskjema her... ?> Detteer ikke testet, bare skrevet her og nå, men jeg ser ikke hvorfor det ikke skal virke. Håper du ser poenget Lenke til kommentar
Atrius Skrevet 6. mars 2009 Del Skrevet 6. mars 2009 (endret) Eventuelt kan du ha skjema å scriptet som sender i samme fil, så legger du til i toppen f.eks: <?php if(isset($_GET['mailtekst'])) { //Kode som sender mail her echo '<p>Mailen er sendt</p>; } //sendmailskjema her... ?> Detteer ikke testet, bare skrevet her og nå, men jeg ser ikke hvorfor det ikke skal virke. Håper du ser poenget Det skal funke ja. Men ville nok hatt en mailvalidering i tillegg her, så du ikke får masse mailerdeamons hvis folk bare trykker på skjema.. //Sjekker om skjema er aktivert if(isset($_POST['sendmail'])){ mail($to,$header,$content); echo "Mailen er sendt!"; } else{ //hvis skjema ikke er aktivert ?> <form action="sammefil.php" method="post"> <input type="text" name="Fra"><br /> <input type="text" name="til"><br /> <input type="text" name="melding"><br /> <textarea cols="40" rows="6"></textarea><br /> <input type="submit" name="SendMail" value="Send Mail"><br /> </form> <? } Tror jeg skal funke.. Endret 6. mars 2009 av Atrius Lenke til kommentar
ZeRKoX Skrevet 6. mars 2009 Del Skrevet 6. mars 2009 (endret) Ville ikke hatt den else-en siden han ville at skjemaet skulle reloades etter at mailen er sendt... //Sjekker om skjema er aktivert if(isset($_POST['sendmail'])){ //deklarering av variabler ($to = $_POST['til'] o.lign.) mail($to,$header,$content); echo "Mailen er sendt!";} ?> <form action="sammefil.php" method="post"> <input type="text" name="Fra"><br /> <input type="text" name="til"><br /> <input type="text" name="melding"><br /> <textarea cols="40" rows="6"></textarea><br /> <input type="submit" name="SendMail" value="Send Mail"><br /> </form> Endret 6. mars 2009 av obrestad Lenke til kommentar
Atrius Skrevet 6. mars 2009 Del Skrevet 6. mars 2009 Ville ikke hatt den else-en siden han ville at skjemaet skulle reloades etter at mailen er sendt... //Sjekker om skjema er aktivert if(isset($_POST['sendmail'])){ //deklarering av variabler ($to = $_POST['til'] o.lign.) mail($to,$header,$content); echo "Mailen er sendt!";} ?> <form action="sammefil.php" method="post"> <input type="text" name="Fra"><br /> <input type="text" name="til"><br /> <input type="text" name="melding"><br /> <textarea cols="40" rows="6"></textarea><br /> <input type="submit" name="SendMail" value="Send Mail"><br /> </form> Det er sant. Et annet tips, er at jeg ville brukt IMAP istedet for php mail funksjonen, men det er bare meg Lenke til kommentar
ymsefisen Skrevet 9. mars 2009 Del Skrevet 9. mars 2009 if (isset($_POST['sendmail'])) { //send mail... whatever header('Location: '.$samme_url_som_du_er_paa_naa); exit; } Alltid avslutte scriptet etter at du har sendt en Location header, ellers blir de fleste nettleserne forvirra dersom det kommer mere søppel i etterkant. Lenke til kommentar
Anbefalte innlegg
Opprett en konto eller logg inn for å kommentere
Du må være et medlem for å kunne skrive en kommentar
Opprett konto
Det er enkelt å melde seg inn for å starte en ny konto!
Start en kontoLogg inn
Har du allerede en konto? Logg inn her.
Logg inn nå