Avatar billede guybrush_lj Nybegynder
03. februar 2002 - 23:02 Der er 9 kommentarer og
1 løsning

Mail

Jeg har lavet et mail script med en formular som egentlig virker fint nok. Men nu vil jeg gerne have det til, når man klikker "Submit" at den så går til en ny side. Jeg har prøvet at ændre i "Action", men så virker scriptet ikke.... nogen forslag?
Avatar billede whatever Nybegynder
03. februar 2002 - 23:14 #1
Den skal vel først gå til en ny siden når mailen er sendt??? Eller hvad? Hvis ja, så indsæt en header("location: dinside.htm"); efter din mail-funktion.
Avatar billede tentakkel Nybegynder
03. februar 2002 - 23:15 #2
det kommer an på - hvad bruger du til at sende mailen med? - prøv at kom med koden
Avatar billede _michael_ Nybegynder
03. februar 2002 - 23:16 #3
Du kan gøre det sådan her:
Formular-side:
<center>
<table border="0">
<form NAME="kontakt" ACTION="kontakt-exe.php" METHOD="post">
    <tr>
    <td>Dit navn:</td>
    <td><input type="text" name="navn" size="18"></td>
    </tr>
   
    <tr>
    <td>Din email:</td>
    <td><input type="text" name="mail" size="18"></td>
    </tr>
    <tr>
    <td valign="top">Besked:</td>
    <td><textarea cols="30" rows="6" name="besked"></textarea></td>
    </tr>
    <tr>
    <td colspan="2" align="center"><br><input type="image" src="billede.gif" alt="Send" border="0"></td>
    </tr></form>
</table>
</center>

kontakt-exe.php
<?

// send en mail

$aok = 1;
if (! isset($navn)) $aok=0;
if (! isset($mail)) $aok=0;
if (! isset($besked)) $aok=0;

if (@aok) {
    mail("email@email.dk", "OVerskrift", "\n  Smart overskrift.\n\nJeg hedder: $navn\nOg min email er: $mail\n\nHer er min besked: $besked\n\n",     
            "From: $mail\nReply-To: $mail\nX-Mailer: PHP/" . phpversion());   
        header("Location: http://www.nyside.dk");
    } else {
        header("Location: enellerandensti.php");
?>
Avatar billede muddi Praktikant
03. februar 2002 - 23:46 #4
Det lyder underligt at den ikke kan virke fordi du ændrer action... bruger du post eller get som method?

Lad os se noget af din kode!!!
Avatar billede webmasterdk Praktikant
03. februar 2002 - 23:50 #5
du kan bare smide den her linie nederst i din kode, der virker fint for mig!
echo "<META HTTP-EQUIV=\"refresh\" CONTENT=\"0;url=sendt.htm\">";

skal bare rette sendt.htm
Avatar billede guybrush_lj Nybegynder
03. februar 2002 - 23:51 #6
<html>
<head>
<title>Test Mail Script</title>
</head>

<body>

<form method="post" action="done.php">

Recipient:<br>
<input type="text" name="recipient" size="20"><br><br>
Subject:<br>
<input type="text" name="subject" size="20"><br><br>
From:<br>
<input type="text" name="sender" size="20"><br><br>
Type:<br>
<SELECT name="class" size="1">

<option value="Norsker">Norsker</option>
<option value="Dansker">Dansker</option>
<option value="Svensker">Svensker</option>

</SELECT><br><br>
Message:<br>
<textarea rows="8" name="mainmessage" cols="31"></textarea><br><br>
<input type="submit" name="send" value="Send"

</form>

<?php

if ($class == Norsker) {
    $class2 = "Norsker";
} else if ($class == Dansker) {
    $class2 = "Dansker";
} else if ($class == Svensker) {
    $class2 = "Svensker";
}


$message = "Class: $class2\r\n$mainmessage";

$extra = "From: $sender\r\nReply-To: $sender\r\n";

mail ($recipient, $subject, $message, $extra)


?>

</body>
</html>


Alt det med If og Then var bare for at øve lidt.... er nu til PHP
Avatar billede muddi Praktikant
04. februar 2002 - 00:03 #7
Hmm... dine options med "svensker", "NORDMAND", "dansker" magler en name attribut ... eks.: name="nationalitet"

men det er næppe det der er fejlen *s*
Avatar billede muddi Praktikant
04. februar 2002 - 00:08 #8
Sorry... der skal ikke nogen name-attribut på option-tags...
Jeg har fjernet dit if/then, da det ikke gav nogen mening...
Virker denne kode ikke?

send.php
-----------------
<html>
<head>
<title>Test Mail Script</title>
</head>
<body>
<form method="post" action="done.php">
Recipient:<br>
<input type="text" name="recipient" size="20"><br><br>
Subject:<br>
<input type="text" name="subject" size="20"><br><br>
From:<br>
<input type="text" name="sender" size="20"><br><br>
Type:<br>
<SELECT name="class" size="1">
<option value="Norsker">Norsker</option>
<option value="Dansker">Dansker</option>
<option value="Svensker">Svensker</option>
</SELECT><br><br>
Message:<br>
<textarea rows="8" name="mainmessage" cols="31"></textarea><br><br>
<input type="submit" name="send" value="Send"
</form>
</body>
</html>

done.php:
--------------------
<?php
$message = "Class: $class\r\n$mainmessage";
$extra = "From: $sender\r\nReply-To: $sender\r\n";
mail ($recipient, $subject, $message, $extra)
?>
Avatar billede guybrush_lj Nybegynder
04. februar 2002 - 15:55 #9
Som sagt skal den når man trykker "Send" gå til en ny side... altså fra "done.php" til en anden. Gør den det i jeres?
Avatar billede guybrush_lj Nybegynder
04. februar 2002 - 17:25 #10
Ok... takker for svarende.. har fattet det nu :)

Og det med If/Then var bare for at øve lidt på PHP... så man bliver vant til det.... Thanks!
Avatar billede Ny bruger Nybegynder

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.

Loading billede Opret Preview
Kategori
Vi tilbyder markedets bedste kurser inden for webudvikling

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester