FAQ |
Kalender |
![]() |
#1 | ||
|
|||
Nykomling
|
Det är så att jag har nu suttit ett tag och klurat ut detta men till ingen lycka.
Jag använder mig utav en gratis webbformulär, där resultatet som du skrev in, kommer upp efter du skickat iväg filen. Problemet som jag har är att resultatet kommer upp på en ny sida, inte på den existerande sidan. Undrar om någon kan hjälpa mig att få den på samma sida. tack på förhand. Kod:
<!-- PHP easy-form --> <? // * Copyright (C) 2004 CentralFloridaVA.com. All rights reserved. // *PHPeasy-form version 1.1 // * Released 2004-10-02 // * This file is part of PHPeasy-form. // * PHPeasy-form is free software; you can redistribute it and/or modify // * it under the terms of the GNU General Public License as published by // * the Free Software Foundation; either version 2 of the License, or // * (at your option) any later version. // * PHPeasy-form is distributed in the hope that it will be useful, // * but WITHOUT ANY WARRANTY; without even the implied warranty of // * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. *See the // * GNU General Public License for more details. // * You should have received a copy of the GNU General Public License // * along with PHPeasy-form; if not, write to the Free Software // * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA *02111-1307 *USA // *Contact CentralFloridaVA.com at: // *http://www.CentralFloridaVA.com // ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ $name = $_POST["name"]; $address = $_POST["address"]; $city = $_POST["city"]; $state = $_POST["state"]; $zip = $_POST["zip"]; $phone = $_POST["phone"]; $email = $_POST["email"]; $comments = $_POST["comments"]; $today = date("M d, Y"); $recipient = "[email protected]"; $subject = "Formulärresultat"; $forminfo = "Name: $name\n Address: $address\n City: $city\n State: $state\n Zip: $zip\n Phone: $phone\n Email: $email\n Comments: $comments\n Form Submitted: $today\n\n"; $formsend = mail("$recipient", "$subject", "$forminfo", "From: $email\r\nReply-to:$email"); ?> <!-- end PHP easy-form --> <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"> <html> <head> <title>Kontakta oss</title> <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1"> </head> <body> <table width="100%" border="0" cellspacing="0" cellpadding="5"> *<tr> * *<td> <p align="left">Tack så mycket. Du har skickat denna information:</p> <p><? echo nl2br($forminfo); ?></p> *</tr> </table> </body> </html> |
||
![]() |
![]() |
![]() |
#2 | |||
|
||||
Har WN som tidsfördriv
|
Om man ska vara kvar på samma sida så kan du göra det med en IF sats.
Kolla då om ($comments = "") i så fall visar du formuläret och om inte så visar du tacksidan. |
|||
![]() |
![]() |
![]() |
#3 | ||
|
|||
Medlem
|
Lägg följande kod mellan <body> och </body>.
Kod:
<?php if ($_POST) { // Om man har skickat variabler med metoden POST echo '<table width="100%" border="0" cellspacing="0" cellpadding="5"> <tr> <td> <p align="left">Tack så mycket. Du har skickat denna information:</p> <p>' . nl2br($forminfo) . '</p> </tr> </table>'; } else { // Annars skriva ut formuläret echo <koden_för_formuläret>; } ?> Kod:
<form method="POST" action="filnamn.php"> Name: <input type="text" name="name"><br/> Address: <input type="text" name="address"><br/> .. .. </form> |
||
![]() |
![]() |
![]() |
#4 | ||
|
|||
Nykomling
|
Testade med din kod, och får på nåt sätt samma resultat.
Så här ser koden ut för formuläret (heter kontakta.php): Kod:
<h1>Kontakta oss</h1> <p id="note">Alla uppgifter som du lämnar här är konfidentiellt och överlämnas <u>inte</u> till en tredje part.</p> <form action="form-send.php" method="post"> <table width="100%" border="0" cellspacing="5" cellpadding="5"> <tr valign="top"> <td width="15%">Namn:</td> <td width="85%"> <input class="kantlinje" type="text" name="name"></td> </tr> <tr valign="top"> <td>Telefonnummer:</td> <td> <input class="kantlinje" type="text" name="phone"></td> </tr> <tr valign="top"> <td>Email address:</td> <td><input class="kantlinje" name="email" type="text"></td> </tr> <tr valign="top"> <td>Kommentarer:</td> <td> <textarea class="kantlinje" name="comments" cols="30" rows="5" id="comments"></textarea></td> </tr> <tr> <td width="15%" height="39"></td><td> <input class="kantlinje" type="submit" name="Submit" value="Skicka"> <input class="kantlinje" name="Reset" type="reset" id="Reset" value="Återställ"> </td> </tr> </table> </form> Kod:
<!-- PHP easy-form --> ............. <body> <?php if ($_POST) { // Om man har skickat variabler med metoden POST echo '<table width="100%" border="0" cellspacing="0" cellpadding="5"> <tr> <td> <p align="left">Tack så mycket. Du har skickat denna information:</p></td> <p>' . nl2br($forminfo) . '</p> </tr> </table>'; } else { // Annars skriva ut formuläret echo kontakta.php; } ?> </body> </html> |
||
![]() |
![]() |
![]() |
#5 | ||
|
|||
Medlem
|
ok, du ändrade inte riktigt som jag tänkt mig. Jag orkar inte fixa allt här nu (sitter på en sunkig laptop), men du kan börja med att ändra:
Kod:
<form action="form-send.php" method="post"> Kod:
<form action="kontakta.php" method="post"> om man skickat med variabler > skriv ut info annars > skriv ut formuläret |
||
![]() |
![]() |
![]() |
#6 | ||
|
|||
Nykomling
|
=), läste lite snabbt. Men efter att ha studerat så tror jag vad du menade:
Du menar att jag ska klippa ut all koder som jag har på kontakta.php och klistra in det där du skrev <koden_för_formuläret> Typ så här: Kod:
<h1>Kontakta oss</h1> <p id="note">Alla uppgifter som du lämnar här är konfidentiellt och överlämnas <u>inte</u> till en tredje part.</p> <form action="sida/kontakta.php" method="post"> <!-- PHP easy-form --> <? $today = date("M d, Y"); $recipient = "[email protected]"; $subject = "Web Form Results"; $forminfo = "Name: $name\n Address: $address\n City: $city\n State: $state\n Zip: $zip\n Phone: $phone\n Email: $email\n Comments: $comments\n Form Submitted: $today\n\n"; $formsend = mail("$recipient", "$subject", "$forminfo", "From: $email\r\nReply-to:$email"); ?> <!-- end PHP easy-form --> <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"> <html> <head> <title>Kontakta oss</title> <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1"> </head> <body> <?php if ($_POST) { // Om man har skickat variabler med metoden POST echo '<table width="100%" border="0" cellspacing="0" cellpadding="5"> <tr> <td> <p align="left">Tack så mycket. Du har skickat denna information:</p> <p>' . nl2br($forminfo) . '</p> </tr> </table>'; } else { // Annars skriva ut formuläret echo <form action="kontakta.php" method="post"> <table width="100%" border="0" cellspacing="5" cellpadding="5"> <tr valign="top"> <td width="15%">Namn:</td> <td width="85%"> <input class="kantlinje" type="text" name="name"></td> </tr> <tr valign="top"> <td>Telefonnummer:</td> <td> <input class="kantlinje" type="text" name="phone"></td> </tr> <tr valign="top"> <td>Email address:</td> <td><input class="kantlinje" name="email" type="text"></td> </tr> <tr valign="top"> <td>Kommentarer:</td> <td> <textarea class="kantlinje" name="comments" cols="30" rows="5" id="comments"></textarea></td> </tr> <tr> <td width="15%" height="39"></td><td> <input class="kantlinje" type="submit" name="Submit" value="Skicka"> <input class="kantlinje" name="Reset" type="reset" id="Reset" value="Återställ"> </td> </tr> </table> </form> ; } ?> </body> </html> |
||
![]() |
![]() |
![]() |
#7 | ||
|
|||
Medlem
|
Nåt sånt här borde bli bra om du döper skriptet till kontakta.php
Kod:
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"> <html> <head> <title>Kontakta oss</title> <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1"> </head> <body> <?php if ($_POST) { // Om man har skickat variabler med metoden POST $today = date("M d, Y"); $recipient = "[email protected]"; $subject = "Web Form Results"; $forminfo = "Name: $name\n Address: $address\n City: $city\n State: $state\n Zip: $zip\n Phone: $phone\n Email: $email\n Comments: $comments\n Form Submitted: $today\n\n"; $formsend = mail("$recipient", "$subject", "$forminfo", "From: $email\r\nReply-to:$email"); echo '<table width="100%" border="0" cellspacing="0" cellpadding="5"> <tr> <td> <p align="left">Tack så mycket. Du har skickat denna information:</p> <p>' . nl2br($forminfo) . '</p> </tr> </table>'; } else { // Annars skriva ut formuläret ?> <h1>Kontakta oss</h1> <p id="note">Alla uppgifter som du lämnar här är konfidentiellt och överlämnas <u>inte</u> till en tredje part.</p> <form action="kontakta.php" method="post"> <table width="100%" border="0" cellspacing="5" cellpadding="5"> <tr valign="top"> <td width="15%">Namn:</td> <td width="85%"> <input class="kantlinje" type="text" name="name"></td> </tr> <tr valign="top"> <td>Telefonnummer:</td> <td> <input class="kantlinje" type="text" name="phone"></td> </tr> <tr valign="top"> <td>Email address:</td> <td><input class="kantlinje" name="email" type="text"></td> </tr> <tr valign="top"> <td>Kommentarer:</td> <td> <textarea class="kantlinje" name="comments" cols="30" rows="5" id="comments"></textarea></td> </tr> <tr> <td width="15%" height="39"></td><td> <input class="kantlinje" type="submit" name="Submit" value="Skicka"> <input class="kantlinje" name="Reset" type="reset" id="Reset" value="Återställ"> </td> </tr> </table> </form> <?php } ?> </body> </html> |
||
![]() |
![]() |
![]() |
#8 | ||
|
|||
Nykomling
|
Tack så mycket för hjälpen. Nu fungerar den.
![]() En snabb sak till då jag testade scriptet, jag märkte att en person kan skicka "tomma fält" genom mailet. Nu undrar jag vilket som är bäst, använda javascript till att validera eller lägga till något färdig php-kod? |
||
![]() |
![]() |
![]() |
#9 | ||
|
|||
Flitig postare
|
Kombinera det. Först en kontroll med javascript och sen en kontroll på servern.
|
||
![]() |
![]() |
![]() |
#10 | ||
|
|||
Nykomling
|
Nu har jag lekt lite med olika scripts, och varje gång jag testar de för sig själv så fungerar dessa. Men när jag ska infoga det i koden som jag har så fungerar det inte.
![]() Jag skickas vidare till resultatsidan på vad jag skrivit. Kod:
<? $message = ""; $emailclass = "basictext"; $username = ""; if ($_POST['process'] == 1) { $pattern = '/.*@.*\..*/'; $email = $_POST['email']; $urlname = urlencode($$_POST['username']); if (preg_match($pattern, $_POST['email']) > 0) { // Here's where you would store // the data in a database... header( "location: thankyou.php?&username=$urlname"); } $message = "Please enter a valid email address."; $username = $_POST['name']; $emailclass = "errortext"; } ?> <html><title></title><head></head> <style> .basictext { font-family: Arial, Helvetica, sans-serif; font-size: 14px; color:#000066; } .errortext { font-family: Arial, Helvetica, sans-serif; font-size: 14px; color:#C00000; font-weight: bold; } .errortext.input {background-color:#009933} </style> <body> <form action="email.php" method="post"> <? if ($message != "") { print '<span class="errortext">'. $message."<span><br>\n"; } ?> <span class="<?print $emailclass; ?>"> Email address:</span> <span class="<?print $emailclass; ?>"> <input name="email" type="text" class="<? print $emailclass; ?>"></span><br> <? if ($message != "") { print '<span class="errortext">'. $message."<span><br>\n"; } ?> <span class="<?print $username; ?>"> Namn:</span> <span class="<?print $username; ?>"> <input name="name" type="text" class="<? print $username; ?>"></span><br> <input type="hidden" name="process" value="1"> <input type="submit" name="Button1" value="Sign up!"> </form> </body></html> |
||
![]() |
![]() |
Svara |
|
|