29. december 2004 - 13:33
Der er
6 kommentarer og 1 løsning
Mailsender med betingelser.
Jeg har en form, som bliver sendt som email vha et PHP-script. Jeg kunne godt tænke mig at få sat nogle betingelser på, så den f.eks. ikke bliver sendt hvis visse felter er tomme. Desuden må den gerne komme med en bekræftelse på at beskeden er sendt. Jeg ved at det er noget med if, else, og sidst echo - med en masse {'er og lige så mange }'er. Så er det vidst også noget med nogle !'er, men hvordan de skal sættes sammen og hvordan det skal gøres, ved jeg ikke. Koden ser sådan ud: <?php @extract($_POST); $efternavn = stripslashes($efternavn); $fornavn = stripslashes($fornavn); $email = stripslashes($email); $emne = stripslashes($emne); $onske1 = stripslashes($onske1); $onske2 = stripslashes($onske2); $onske3 = stripslashes($onske3); $kodeord = stripslashes($kodeord); mail("min@mail.dk","Emne: " . $emne,"Efternavn: " . $efternavn . "\r\nFornavn: " . $fornavn . "\r\nØnske1 : " . $onske1 . "\r\nØnske2: " . $onske2 . "\r\nØnske3: " . $onske3 . "\r\nKodeord: " . $kodeord ,"From:" . $email); header("location:log.php"); ?> Nogen der kan hjælpe?
Annonceindlæg fra Barco
29. december 2004 - 13:52
#1
jeg har lavet noget lignende. det er til et logon script, men skulle gerne virke alligevel: if ($variabelX == "" OR $VariabelY == "" OR $VariabelZ == "") { print(" <script language='javascript'> location.href='log.php'; </script>"); } else { blah blah blah } Hvis det ikke virker med OR, så lav en: if ($variabelX == "") { print(" <script language='javascript'> location.href='log.php'; </script>"); } elseif ($variabelY == "") { print(" <script language='javascript'> location.href='log.php'; </script>"); } else { blah blah blah } du kan altid tilføje flere elseif()ere Håber du kan bruge det til noget ;)
29. december 2004 - 13:57
#2
Prøver lige lidt...
29. december 2004 - 14:02
#3
<?php @extract($_POST); $efternavn = stripslashes($efternavn); $fornavn = stripslashes($fornavn); $email = stripslashes($email); $emne = stripslashes($emne); $onske1 = stripslashes($onske1); $onske2 = stripslashes($onske2); $onske3 = stripslashes($onske3); $kodeord = stripslashes($kodeord); if ( ! empty( $onske1 ) // ! empty( $variabel ) giver sand hvis // variabelen findes og indeholder noget && ! empty( $kodeord ) // && giver sand hvis både betingelse før og efter er sand && ! empty( $email ) ) { // denne kodeklump udføres hvis $onske1, $kodeord og $email alle har en værdi mail( "min@mail.dk" ,"Emne: " . $emne ,"Efternavn: " . $efternavn . "\r\nFornavn: " . $fornavn . "\r\nØnske1 : " . $onske1 . "\r\nØnske2: " . $onske2 . "\r\nØnske3: " . $onske3 . "\r\nKodeord: " . $kodeord ,"From:" . $email ); } else { // denne kodeklump udføres hvis en af dem ikke har en værdi //... } header("location:log.php"); ?>
29. december 2004 - 14:04
#4
hov... glemte lige den sidste med bekræftigelsen... det er bare efter din: mail("min@mail.dk","Emne: " . $emne,"Efternavn: " . $efternavn . "\r\nFornavn: " . $fornavn . "\r\nØnske1 : " . $onske1 . "\r\nØnske2: " . $onske2 . "\r\nØnske3: " . $onske3 . "\r\nKodeord: " . $kodeord ,"From:" . $email); header("location:log.php"); echo 'Mailen er sendt!'; Så hvis vi lige laver en opsumering i hvordan din side evt skal se ud så er mit forslag: <?php @extract($_POST); $efternavn = stripslashes($efternavn); $fornavn = stripslashes($fornavn); $email = stripslashes($email); $emne = stripslashes($emne); $onske1 = stripslashes($onske1); $onske2 = stripslashes($onske2); $onske3 = stripslashes($onske3); $kodeord = stripslashes($kodeord); if ($efternavn == "" OR $fornavn == "" OR $email == "" OR $emne == "" OR $onske1 == "" OR $onske2 == "" OR $onske3 == "" OR $kode == "") { print(" <script language='javascript'> location.href='log.php'; </script>"); } else {
29. december 2004 - 14:05
#5
hov... der var en send knap :P fortsættelse: mail("min@mail.dk","Emne: " . $emne,"Efternavn: " . $efternavn . "\r\nFornavn: " . $fornavn . "\r\nØnske1 : " . $onske1 . "\r\nØnske2: " . $onske2 . "\r\nØnske3: " . $onske3 . "\r\nKodeord: " . $kodeord ,"From:" . $email); header("location:log.php"); echo 'Mailen er sendt'; } ?>
29. december 2004 - 14:05
#6
Yes! Tak skal du have! Jeg kan godt få det til at virke nu! Bare læg et svar! Tak skal du have!
29. december 2004 - 14:07
#7
det var da så lidt :D
Vi tilbyder markedets bedste kurser inden for webudvikling