Seite 1 von 1

formular schickt keine kopie an mich

Verfasst: 07.02.2009, 16:57
von croxxx69
hallo,

habe ein formular auf meiner homepage, doch habe diesen code der eigentlich mir eine kopie des formulars zuschicken soll wenn einer das formular einsendet:

$empfaenger= "xxxx@xxx.com,yyyyy@yyyyy.de";

ist dieser code ok?

Verfasst:
von

Verfasst: 07.02.2009, 19:11
von [btk]tobi
Ja der Code ist OK, der weißt einer Variable einen String zu 8) Wenn du wissen willst warum keine Mails verschickt wurden musst du schon den Rest des Scripts posten. So kannst du die Variable in der mail Funktion übrigens nicht verwenden, aber das war ja nicht deine Frage.


Gruß Tobi

Verfasst: 07.02.2009, 20:07
von catcat
Ehm... btktobi:
Wenn Du nicht bald die 2 Rechtschreibfehler aus der Titelzeile Deiner Sig machst, dann klebe ich ein Tesaband drüber^^

Verfasst:
von
SEO Consulting bei ABAKUS Internet Marketing
Erfahrung seit 2002
  • persönliche Betreuung
  • individuelle Beratung
  • kompetente Umsetzung

Jetzt anfragen: 0511 / 300325-0.


Verfasst: 08.02.2009, 02:05
von croxxx69
hier ist das formular:
https://www.kava.site50.net/Knjiga%20o%20kavi.html

der code... mal schauen, weil es mehrere sind...

Code: Alles auswählen

<?php

//erstmal Variablen definieren
$pagename="Knjiga o kavi.html";
$error=$name=$adresa=$email=$message="";

// an wen geht die Mail ?
$empfaenger= "xxxxxxx@gmx.de";

if&#40;isset&#40;$_POST&#91;'domail'&#93;&#41;&#41; &#123;
    // es wurde abschicken gedrückt, also erst mal die Felder holen
    $name=get_magic_quotes_gpc&#40;&#41; ? stripslashes&#40;$_POST&#91;'name'&#93;&#41; &#58; $_POST&#91;'name'&#93;;
    $adresa=get_magic_quotes_gpc&#40;&#41; ? stripslashes&#40;$_POST&#91;'adresa'&#93;&#41; &#58; $_POST&#91;'adresa'&#93;;
    $mjesto=get_magic_quotes_gpc&#40;&#41; ? stripslashes&#40;$_POST&#91;'mjesto'&#93;&#41; &#58; $_POST&#91;'mjesto'&#93;;
	$email=get_magic_quotes_gpc&#40;&#41; ? stripslashes&#40;$_POST&#91;'email'&#93;&#41; &#58; $_POST&#91;'email'&#93;;
    $telefon=get_magic_quotes_gpc&#40;&#41; ? stripslashes&#40;$_POST&#91;'telefon'&#93;&#41; &#58; $_POST&#91;'telefon'&#93;;
	$br=get_magic_quotes_gpc&#40;&#41; ? stripslashes&#40;$_POST&#91;'br'&#93;&#41; &#58; $_POST&#91;'br'&#93;;
	
    //Form-Attacken verhindern &#40;suche nach \r\n oder \n&#41;
    if&#40;strpos&#40;$name,"\r\n"&#41;>0 || strpos&#40;$name,"\n"&#41;>0&#41; &#123;
        DebugAttack&#40;substr&#40;$name,strpos&#40;$name,"\r\n"&#41;&#41;&#41;;
        $name="";
    &#125;
    if&#40;strpos&#40;$adresa,"\r\n"&#41;>0 || strpos&#40;$adresa,"\n"&#41;>0&#41; &#123;
        DebugAttack&#40;substr&#40;$adresa,strpos&#40;$adresa,"\r\n"&#41;&#41;&#41;;
        $adresa="";
    &#125;
	if&#40;strpos&#40;$mjesto,"\r\n"&#41;>0 || strpos&#40;$mjesto,"\n"&#41;>0&#41; &#123;
        DebugAttack&#40;substr&#40;$mjesto,strpos&#40;$mjesto,"\r\n"&#41;&#41;&#41;;
        $mjesto="";
    &#125;	
    if&#40;strpos&#40;$email,"\r\n"&#41;>0 || strpos&#40;$email,"\n"&#41;>0&#41; &#123;
        DebugAttack&#40;substr&#40;$email,strpos&#40;$email,"\r\n"&#41;&#41;&#41;;
        $email="";
    &#125;
    if&#40;strpos&#40;$telefon,"\r\n"&#41;>0 || strpos&#40;$telefon,"\n"&#41;>0&#41; &#123;
        DebugAttack&#40;substr&#40;$telefon,strpos&#40;$telefon,"\r\n"&#41;&#41;&#41;;
        $telefon="";
    &#125;
	if&#40;strpos&#40;$br,"\r\n"&#41;>0 || strpos&#40;$br,"\n"&#41;>0&#41; &#123;
        DebugAttack&#40;substr&#40;$br,strpos&#40;$br,"\r\n"&#41;&#41;&#41;;
        $br="";
    &#125;
    //Message setzt sich aus allen Eingaben zusammen
    $message=get_magic_quotes_gpc&#40;&#41; ? stripslashes&#40;$_POST&#91;'message'&#93;&#41; &#58; $_POST&#91;'message'&#93;;
    
    // wir setzen einen Flag, um Fehler zu registrieren
    $ok=true;
    //jetzt werden die Felder überprüft
    if &#40;strlen&#40;$name&#41;<5&#41; // Ime mora imati minimalno 5 slova
    &#123;
        $err&#91;0&#93;=true; //Fehler merken
        $ok=false;    //Fehlerflag setzen
        $error.='Molimo da upišete vaše ime i prezime. &#40;minimalno 5 slova&#41;<br>'; // Fehlertext
    &#125;
      if &#40;strlen&#40;$adresa&#41;<3&#41; // Adresa mora imati minimalno 3 slova
    &#123;
        $err&#91;3&#93;=true; //Fehler merken
        $ok=false;    //Fehlerflag setzen
        $error.='Molimo da upišete vašu adresu. &#40;minimalno 3 slova&#41;<br>'; // Fehlertext
    &#125;
	  if &#40;strlen&#40;$mjesto&#41;<3&#41; // Mjesto mora imati minimalno 3 slova
    &#123;
        $err&#91;4&#93;=true; //Fehler merken
        $ok=false;    //Fehlerflag setzen
        $error.='Molimo da upišete vaš poštanski broj i mjesto. &#40;minimalno 3 slova&#41;<br>'; // Fehlertext
    &#125;
	  if &#40; &#40;!&#40;eregi&#40;'^&#91;a-z0-9_\.-&#93;+@&#91;a-z0-9_-&#93;+\.&#91;a-z0-9_\.-&#93;+$',$email&#41;&#41;&#41; && &#40;strlen&#40;$email&#41;>0&#41; || $email==""&#41;
    &#123;
        //email-Adresse ist ungültig
        $err&#91;1&#93;=true;
        $ok=false;
        $error.='Molimo da provjerite dali ste dobro upisali e-mail adresu.<br>';
    &#125;
     if &#40;strlen&#40;$telefon&#41;<6&#41; // Mjesto mora imati minimalno 3 slova
    &#123;
        $err&#91;5&#93;=true; //Fehler merken
        $ok=false;    //Fehlerflag setzen
        $error.='Molimo da upišete vaš telefonski broj ili broj mobitela. &#40;minimalno 6 slova&#41;<br>'; // Fehlertext
    &#125;
	 if &#40;strlen&#40;$br&#41;<1&#41; // Mjesto mora imati minimalno 3 slova
    &#123;
        $err&#91;6&#93;=true; //Fehler merken
        $ok=false;    //Fehlerflag setzen
        $error.='Molimo da upišete koliko knjiga želite naru&#263;iti. <br>'; // Fehlertext
    &#125;
    // ist alles ok ? dann senden
    if&#40;$ok&#41;
    &#123;
        //Mail komponieren
        $mailheader="From&#58; Narudzbenica@kava.hr\r\nX-Mailer&#58; PHP/" . phpversion&#40;&#41;. "\r\nX-Sender-IP&#58; ".$_SERVER&#91;'REMOTE_ADDR'&#93;."\r\nContent-Type&#58; text/html; charset=ISO-8859-1;";
        $message=nl2br&#40;"Ime&#58; $name\nEmail&#58; <a href=\"mailto&#58;$email\">$email</a>\nAdresa&#58; $adresa\nPošt. broj i mjesto&#58; $mjesto\nTelefon&#58; $telefon\nBroj knjiga&#58; $br\n<hr>$message"&#41;;
        $subject="Narudzbenica za knjigu od ".date&#40;"d.m.Y"&#41;;
        if &#40;@mail&#40;$empfaenger, $subject, $message, $mailheader&#41;&#41; &#123;
            //Alles ok, Seite neuladen &#40;Reloadsperre&#41;
            header&#40;"Location&#58;$pagename?success"&#41;;
            //falls kein Header gesendet werden kann, dann mit javascript
            //echo '<script type="text/javascript">document.location.href="'.$pagename.'?success"</script>';
            exit;
        &#125; else &#123;
            $error='<h3>Greška kod slanja nastala</h3>';
        &#125;
    &#125; else &#123;
        // Greška nastala
        $error='<h3>Greška nastala</h3><p class="error">'.$error.'</p>';
    &#125;
&#125;
?>
hoffe das genügt?!


lieben gruß!

Re: formular schickt keine kopie an mich

Verfasst: 08.02.2009, 11:46
von Mork vom Ork
croxxx69 hat geschrieben:$empfaenger= "xxxx@xxx.com,yyyyy@yyyyy.de";
[…]
if (@mail($empfaenger, $subject, $message, $mailheader)) {
PHPs mail()-Funktion soll mehrere Empfänger verarbeiten können. Vielleicht probierst du es erst einmal mit deiner Adresse alleine und dann mit zwei von deinen Adressen (falls du keine zweite zur Hand hast: mailinator.com).
Du solltest unbedingt auch einen Blick in das Fehlerprotokoll deines Servers werfen! Funktionen mit vorangestelltem @ dazu zu zwingen, Fehlermeldungen zu unterdrücken, ist davon abgesehen auch alles andere als schlau. Fehlermeldungen sind als Hilfe gedacht.

Falls du nicht möchtest, dass der andere Empfänger der Mail nicht weiß, dass du eine Kopie bekommen hast, verwende die BCC-Option, anstatt deine Adresse als normalen Empfänger einzufügen. Ersetze die Zeile, die mit $mailheader= beginnt (gleich nach //Mail komponieren, durch folgende:

Code: Alles auswählen

$mailheader = "From&#58; Narudzbenica@kava.r\r\n";
$mailheader .= "X-Sender-IP&#58; ".$_SERVER&#91;'REMOTE_ADDR'&#93;."\r\n";
$mailheader .= "Content-Type&#58; text/html; charset=ISO-8859-1\r\n";
$mailheader .= "BCC&#58; deine@e.mail.adresse";
Und last but not least: Mails werden im Deutschen nicht komponiert. Musik wird komponiert, Mails werden zusammengestellt oder erstellt. Aber das nur am Rande :)

Verfasst: 08.02.2009, 13:17
von croxxx69
hi,

es ging einmal alles so wie es sein soll. nur jetzt wieder nicht. keine ahnung ob ich was dran verändert habe oder nicht?! aber habe es mit nur 1 mail versucht, aber geht auch nicht...
und zu: ,,Fehlerprotokoll deines Servers werfen!" habe ich versucht zu finden, doch habe es leider nicht gefunden...
hier mein menü
Bild

meinst du vielleicht in myphp menü? kenn mich leider nicht so gut aus

Verfasst: 08.02.2009, 22:18
von Mork vom Ork
croxxx69 hat geschrieben:aber habe es mit nur 1 mail versucht, aber geht auch nicht...
Entferne zumindest den Klammeraffen vor mail().
,,Fehlerprotokoll deines Servers werfen!" habe ich versucht zu finden, doch habe es leider nicht gefunden...
Frage deinen Hoster. Das Protokoll ist unverzichtbar, dort wird fast alles vermerkt, was bei dir schiefgeht - und solche Sachen möchtest du doch sicher beheben.

Verfasst: 08.02.2009, 22:24
von ins0
mail() in der PHP Version unter 4.3 ist nicht Case Sensitive! Schick mal als header mit:

Code: Alles auswählen

$mailheader .= 'Cc&#58; ichbineinekopie@blablup.com' . "\r\n";