php mail funktion

Fragen zu allen anderen Programmiersprachen.
Benutzeravatar
zigapeda
Beiträge: 1753
Registriert: 06.03.2005 17:22
Wohnort: Kaufbeuren
Kontaktdaten:

php mail funktion

Beitrag von zigapeda »

Hi Leute

nach dieser fehlermeldung "Parse error: parse error, unexpected T_STRING in /home/www/htdocs/zigapeda.de/kontakt-senden.php on line 21" müsste in der Zeile "mail("mail@zigapeda.de", "Kontakt - Homepage", $_REQUEST['nachricht'], "Von:".$_REQUEST['email']);" ein fehler sein. Wo ist der? ich kann ihn nicht finden?
kluger Mann + kluge Frau = Romanze | dummer Mann + dumme Frau = Schwangerschaft
kluger Mann + dumme Frau = Affäre | dummer Mann + kluge Frau = Shopping <)
the one and only
Beiträge: 696
Registriert: 26.09.2004 20:17
Kontaktdaten:

Beitrag von the one and only »

Du könntest uns ja den Code deiner Mailfunktion geben den du wie ich dich kenne 1 zu 1 aus meiner Mailfunktion übernommen hast :twisted: . Dann würden wir wesentlich mehr wissen.
Benutzeravatar
Lukaso
Beiträge: 720
Registriert: 08.09.2004 18:51
Wohnort: Oberkirch
Kontaktdaten:

Beitrag von Lukaso »

Hallo,

das "Von:".$_REQUEST['email'], kann schon mal gar nicht sein! Da kommt eingentlich der header hin!

probier mal volgendes:

Code: Alles auswählen

        $header = "MIME-Version: 1.0\r\nContent-type: text/html; charset=iso-8859-1\r\nFrom: " . $_POST['email'] . " <" . $_POST['email'] . ">\r\n";
        mail("mail@zigapeda.de", "Kontakt - Homepage", $_POST['nachricht'], $header);
o.g. genannter Code funtzt bei mir 100%ig! Es könnte auch sein das der Fehler oberhalb liegt, PHP hats nicht so mit genauen zeilenangaben!

MFG Lukaso
Nextgen Guild Wars Fanseite: Guild Wars Tactics (Pseudo-Admin + Developer)
"Das Fluchen ist die einzige Sprache, die jeder Programmierer beherrscht." - Unbekannter Autor
Benutzeravatar
zigapeda
Beiträge: 1753
Registriert: 06.03.2005 17:22
Wohnort: Kaufbeuren
Kontaktdaten:

Beitrag von zigapeda »

das dort der header hinkommt ist mir schon klar mit email ist ja auch die email adresse gemeint. jetzt hab ich das gleiche mit $_post['nachricht'] usw. ausprobiert und es funktioniert immer noch nicht.
Hier könnt ihr es euch anschauen
kluger Mann + kluge Frau = Romanze | dummer Mann + dumme Frau = Schwangerschaft
kluger Mann + dumme Frau = Affäre | dummer Mann + kluge Frau = Shopping <)
the one and only
Beiträge: 696
Registriert: 26.09.2004 20:17
Kontaktdaten:

Beitrag von the one and only »

Ohne Source können wir nichts damit anfangen, also bitte posten <)
Benutzeravatar
zigapeda
Beiträge: 1753
Registriert: 06.03.2005 17:22
Wohnort: Kaufbeuren
Kontaktdaten:

Beitrag von zigapeda »

Code: Alles auswählen

<html>
<head>
  <meta content="text/html; charset=ISO-8859-15"
 http-equiv="content-type">
  <title>zigapeda.de - Email</title>
  <meta content="zigapeda" name="author">
</head>
<body style="color: rgb(0, 0, 255); background-color: rgb(255, 204, 0);"
 alink="#33ff33" link="#33ccff" vlink="#009900">
<br>
<script language="php">
if($_POST['abschicken'])
{
if(empty($_POST['name']) || empty($_POST['email']) || empty($_POST['nachricht']))
{
echo ("Bitte gehen sie <a href=\"javascript:history.back();\">zurück</a> und füllen alle Felder aus!
}
else
{
$header = "MIME-Version: 1.0\r\nContent-type: text/html; charset=iso-8859-1\r\nFrom: " . $_POST['email'] . " <" . $_POST['email'] . ">\r\n";
mail("mail@zigapeda.de", "Kontakt - Homepage", $_POST['nachricht'], $header]);
}
}
else
{
echo"Ein Fehler ist aufgetreten. Bitte gehen Sie auf diese <a href=\"kontakt.php\">Seite</a>.";
}
</script>
<br>
</body>
</html>
kluger Mann + kluge Frau = Romanze | dummer Mann + dumme Frau = Schwangerschaft
kluger Mann + dumme Frau = Affäre | dummer Mann + kluge Frau = Shopping <)
Benutzeravatar
bluejoke
Beiträge: 1244
Registriert: 08.09.2004 16:33
Kontaktdaten:

Beitrag von bluejoke »

Ich denke dieser Zeilenumbruch von Line 22 auf Line 23 ist unzulässig, bin mir aber nicht sicher.

EDIT: Außerdem ist dieses Formular nicht gerade Userfreundlich
Bitte gehen sie zurück [...]
Ich bin Ausländer - fast überall
Windows XP Pro SP2 - PB 4.00
Benutzeravatar
zigapeda
Beiträge: 1753
Registriert: 06.03.2005 17:22
Wohnort: Kaufbeuren
Kontaktdaten:

Beitrag von zigapeda »

Das ist kein Zeilen umbruch, das wird nur in zwei zeilen aufgeteilt weil das browser fenster zu klein ist.
kluger Mann + kluge Frau = Romanze | dummer Mann + dumme Frau = Schwangerschaft
kluger Mann + dumme Frau = Affäre | dummer Mann + kluge Frau = Shopping <)
the one and only
Beiträge: 696
Registriert: 26.09.2004 20:17
Kontaktdaten:

Beitrag von the one and only »

Der Zeilenumbruch ist denk ich Auflösungsbedingt und im Grunde nicht vorhanden.

Was soll denn das if($_POST['abschicken']) usw? Wenn die Seite aufgerufen wird gehe ich doch davon aus dass irgendwer auf "Abschicken" oder so geklickt hat also muss man das doch gar nicht überprüfen oder für was ist das da?

Ich würds so machen:

Code: Alles auswählen


if(empty($HTTP_POST_VARS["name"]) || empty($HTTP_POST_VARS["email"]) || empty($HTTP_POST_VARS["nachricht"]))
{
echo ("Bitte gehen sie <a href=\"javascript:history.back();\">zurück</a> und füllen alle Felder aus!
}
else
{
$header = "MIME-Version: 1.0\r\nContent-type: text/html; charset=iso-8859-1\r\nFrom: " . $HTTP_POST_VARS["email"] . " <" . $HTTP_POST_VARS["email"'] . ">\r\n";
mail("mail@zigapeda.de", "Kontakt - Homepage", $HTTP_POST_VARS["nachricht"], $header]);
}

Abgesehen davon, wieso frägst du den User nach seinem Namen? Der wird doch sowieso net mit geschickt :?
Benutzeravatar
Lukaso
Beiträge: 720
Registriert: 08.09.2004 18:51
Wohnort: Oberkirch
Kontaktdaten:

Beitrag von Lukaso »

@zigapeda & the one and only
zigapeda hat geschrieben:

Code: Alles auswählen

echo ("Bitte gehen sie <a href="javascript:history.back();">zurück</a> und füllen alle Felder aus!
*hust*

Die Zeile ist schon totaler blödsinn, keinwunder das es Fehler gibt!! Eine ( die da nicht hinkommt und kein abschließendes ".

ersetze die zeile mal mit ...

Code: Alles auswählen

echo "Bitte gehen sie <a href="javascript:history.back();">zurück</a> und füllen alle Felder aus!"; 


@the one and only
Benutze lieber $_POST bzw. $_REQUEST!! -> Zitat aus dem PHP-Handbuch:
<?php
// Seit PHP 4.1.0 verfügbar

echo $_POST['benutzername'];
echo $_REQUEST['benutzername'];

import_request_variables('p', 'p_');
echo $p_benutzername;

// Seit PHP 3 verfügbar. Ab PHP 5.0.0 können diese langen
// vordefinierten Variablen mit der Anweisung register_long_arrays
// deaktiviert werden.

echo $HTTP_POST_VARS['benutzername'];

// Verfügbar, falls die PHP-Anweisung register_globals = on. Ab
// PHP 4.2.0 ist der standardmäßige Wert von register_globals = off.
// Es ist nicht empfehlenswert, diese Methode zu verwenden, bzw. sich
// darauf zu verlassen.

echo $benutzername;
?>


MFG Lukaso


PS: Gewöhne dich an einrückungen! Da wird man ja blind beim lesen :mrgreen:
Nextgen Guild Wars Fanseite: Guild Wars Tactics (Pseudo-Admin + Developer)
"Das Fluchen ist die einzige Sprache, die jeder Programmierer beherrscht." - Unbekannter Autor
Antworten