php.de

Zurück   php.de > Webentwicklung > PHP Einsteiger > PHP Tipps 2009

 
 
LinkBack Themen-Optionen Thema bewerten
Alt 06.01.2009, 14:30  
Neuer Benutzer
 
Registriert seit: 05.11.2008
Beiträge: 7
UncleB befindet sich auf einem aufstrebenden Ast
UncleB eine Nachricht über ICQ schicken
Standard Mail Funktion funzt nicht

Tag Leutz,

Ich habe im WWW ein kontaktformular gefunden, es nach meinen Ansprüchen angepasst, aber es will nicht Funktionieren, die Fehler und Erfolgsausgabe funzt einwandfrei, aber die Mail wird nicht versendet, weis jemand wieso?
Mein Code:
PHP-Code:
<?php
function checkPost($arrPost){
  if (empty(
$arrPost['nachname'])){
    
$error.= "<li>Kein Nachname angegeben</li>";
  }
  if (empty(
$arrPost['vorname'])){
    
$error.="<li>Kein Vorname angegeben</li>";
  }

  if (empty(
$arrPost['email'])){
    
$error.="<li>Keine E-Mail Adresse angegeben</li>" ;
  }

  if (empty(
$arrPost['kommentar'])){
    
$error.="<li>Keinen Kommentar geschrieben</li>";
  }

  if (!empty(
$error)){
    print 
"$error";
    
//print $formular;
  
}else{
    print 
"Kontaktformular erfolgreich versendet";

    
$strEmail '
    Formular:

    Nachname:   '
.$arrPost['nachname'].'
    Vorname:    '
.$arrPost['vorname'].'
    E-mail:     '
.$arrPost['email'].'

    -------------------------------
    Kommentar:  '
.$arrPost['kommentar'].'
    -------------------------------

    IP:         '
.$arrPost['ip'].'';

    
$responder_nachricht='
    Ihre Anfrage wird bearbeitet!'
;

    echo(
$strEmail);

    
mail($email_adresse$betreff$email$header);
    
mail($responder_email$betreff$responder_nachricht$header_responder);

  }
}

// Falls ein Ajax-Request abgesetzt wurde
if(isset($_POST['submit_js'])){
    
checkPost($_POST);
  exit;
}
?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"
     "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<html>
<head>
<title>Unbenanntes Dokument</title>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
</head>
<body>
<script type="text/javascript">
var req; // public reg

function send_form(form, url, fnc_onreadystatechange){
    var form_params = document[form].elements;
    if (!params)
        var params = '';

    for(var i=0; i<form_params.length; i++){
        if (document[form].elements[i].value && document[form].elements[i].name) {
            params += document[form].elements[i].name + '=' + document[form].elements[i].value + '&';
        }
    }
    req = null; // nicht mehr private
    try {
        req = new ActiveXObject("Msxml2.XMLHTTP");
    }
    catch (e) {
        try {
            req = new ActiveXObject("Microsoft.XMLHTTP");
        }
        catch (e) {
            try {
                req = new XMLHttpRequest();
            }
            catch (e) {
            }
        }
    }
    if (req == null)
        throw new Error('XMLHttpRequest not supported');

    req.open("POST", url, true);
    req.setRequestHeader("Content-type", "application/x-www-form-urlencoded");
    req.send(params);

    req.onreadystatechange = fnc_onreadystatechange;

    //return req.responseText;
}

function formular (form, url, objBtn){
  objBtn.name = "submit_js";

    send_form (form, url, function()
    {
        //console.info('Hallo, das hier sollte man dann in Firebug sehen... ca. 4 mal, wennd as Formular abgesendet wurde');
        if (req.readyState == 4) {// wenn die Abfrage fertig ist, sollte in jeder Funktion vorhanden sein!

            document.getElementById('formular_send_info').innerHTML = req.responseText;
        }
    });
}
</script>

<style type="text/css">

#formular_send_info
{
    margin-bottom: 40px;
    padding: 5px;
    list-style:none;
}
#kontakt
{
    padding: 0px 0px 0px 50px;
}
    
</style>
<div id="formular_send_info">
    <h5>Kontaktformular</h5>
<li>Hier können Sie Kontakt mit der Vorstandschaft aufnehmen, ihre Nachricht wird umgehend an die dafür zuständige Person weitergeleitet und beantwortet. Oder schreiben sie uns einfach eine E-Mail <a href="mailto:info@sv-forsting.de">info@sv-forsting.de</a></li>
</div>
<div id="kontakt">
<?php
$nachname 
$_POST['nachname'];
$vorname $_POST['vorname'];
$responder_email $_POST['email'];
$kommentar $_POST['kommentar'];
$ip $_SERVER['REMOTE_ADDR'];
$header_responder 'From: hab@ich.net';
                      
'Reply-To: hab@ich.net';
                      
'X-Mailer: PHP/' phpversion();

$header 'From: kontaktformular@sv-forsting.de';
          
'X-Mailer: PHP/' phpversion();

$email_adresse "unger85@gmail.com";
$betreff "E-Mail von hab-ich-net-Website";


$formular="
<form name=\"Kontaktformular\" action=\"kontakt.php\" name=\"action\" method=\"post\">\n
<label for=\"nachname\" class=\"erstes\">Vorname:<input type=\"text\" size=\"30\" name=\"vorname\"></label>
<label for=\"nachname\" class=\"erstes\">Nachname:<input type=\"text\" size=\"30\" name=\"nachname\"></label>
<label for=\"email\">E-Mail Adresse:<input type=\"text\" size=\"30\" name=\"email\"></label>
<label for=\"kommentar\" class=\"erstes\">Nachricht:<textarea name=\"kommentar\"></textarea></label>\n
<input type=\"submit\" name=\"submit\" onclick=\"formular('Kontaktformular', 'kontakt.php', this);return false;\" value=\"Abschicken\" class=\"senden\">\n
</form>"
;

if(!isset(
$_POST['submit']))
{
    print 
$formular;
}
else {
  
checkPost($_POST);
  print 
"<h2>Neue Seite</h2>";
  print 
$formular;
}

?>
</div>
</body>
</html>
Dankeschön
UncleB ist offline  
Sponsor Mitteilung
PHP Code Flüsterer

Registriert seit: 21.08.2005
Beiträge: 4682
PHP-Kenntnisse:
Fortgeschritten

Alt 06.01.2009, 14:33  
Erfahrener Benutzer
 
Registriert seit: 28.03.2008
Beiträge: 1.847
HPR1974 wird schon bald berühmt werden
Standard

wo wird denn $email_adresse gesetzt? innerhalb der Funktion jedenfalls nicht, also ist die var leer und dein mail geht ins nirvana, bzw wirft wohl einen fehler den Du Dir aber nicht anzeigen lässt.
Warum eigentlich nicht???
HPR1974 ist offline  
Alt 06.01.2009, 14:37  
Neuer Benutzer
 
Registriert seit: 05.11.2008
Beiträge: 7
UncleB befindet sich auf einem aufstrebenden Ast
UncleB eine Nachricht über ICQ schicken
Standard

Die variable ist übern eigentlichen Formular gesetzt?
UncleB ist offline  
Alt 06.01.2009, 14:40  
Erfahrener Benutzer
 
Benutzerbild von David
 
Registriert seit: 05.09.2007
Beiträge: 5.044
David wird schon bald berühmt werden
Standard

Na dann schau Dir doch mal an, was da passiert
PHP-Code:
//  echo($strEmail); 
echo "<pre>Debug: 
    mail($email_adresse, $betreff, $email, $header);
    mail($responder_email, $betreff, $responder_nachricht, $header_responder);
</pre>"
;

$a mail($email_adresse$betreff$email$header);
$b mail($responder_email$betreff$responder_nachricht$header_responder);

var_dump($a$b); 
David ist offline  
Alt 06.01.2009, 14:41  
Erfahrener Benutzer
 
Registriert seit: 28.03.2008
Beiträge: 1.847
HPR1974 wird schon bald berühmt werden
Standard

aber eben nicht in Deiner Funktion checkPost($arrPost)
HPR1974 ist offline  
Alt 06.01.2009, 15:05  
Neuer Benutzer
 
Registriert seit: 05.11.2008
Beiträge: 7
UncleB befindet sich auf einem aufstrebenden Ast
UncleB eine Nachricht über ICQ schicken
Standard

Ach ich steig da bald nich mehr durch, hab nich viel mit PHP oder Coding am Hut, hatte mir ein einfaches Formular geschrieben ohne irgendner eigenen Funktion, hab es einem bekannten gezeigt der zufällig hier war, und bekamm das Script zurück
Also is das alles
PHP-Code:
$nachname $_POST['nachname'];
$vorname $_POST['vorname'];
$responder_email $_POST['email'];
$kommentar $_POST['kommentar'];
$ip $_SERVER['REMOTE_ADDR'];
$header_responder 'From: hab@ich.net';
                      
'Reply-To: hab@ich.net';
                      
'X-Mailer: PHP/' phpversion();

$header 'From: kontaktformular@sv-forsting.de';
          
'X-Mailer: PHP/' phpversion();

$email_adresse "unger85@gmail.com";
$betreff "E-Mail von hab-ich-net-Website"
Eigentlich hinfällig und muss mit in die Funktion oder
UncleB ist offline  
 


Themen-Optionen
Thema bewerten
Thema bewerten:

Forumregeln
Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are an
Gehe zu

Ähnliche Themen
Thema Autor Forum Antworten Letzter Beitrag
Probleme mit der mail() Funktion Kein Genie PHP Tipps 2006 2 22.10.2006 16:37
Bei mail() Funktion automatisch "Signatur" anhänge WTB PHP Tipps 2006 14 15.05.2006 13:13
Funktion Mail() verwenden bendigo PHP Tipps 2006 2 05.05.2006 11:44
mail - Funktion u. Klasse Stümper PHP Tipps 2006 7 02.03.2006 22:06
PHP mail funktion beinflussen greenrover PHP-Fortgeschrittene 11 17.02.2006 19:30
(schnellere) Funktion zum Zusammenfassen von CSS PHP-Fortgeschrittene 21 08.08.2005 16:47
email versenden mit funktion mail() PHP Tipps 2005 6 20.05.2005 17:38
Mit der PHP mail() Funktion eine HTMl mail verschicken? PHP Tipps 2005 6 09.05.2005 07:13
[Erledigt] Mail() Funktion Fehler PHP-Fortgeschrittene 13 19.04.2005 13:56
Mail Funktion mit Variablen aus einem Formular PHP Tipps 2005 2 17.03.2005 14:21
mail() Funktion - Liefert TRUE jedoch .... PHP Tipps 2005 21 23.02.2005 11:54
[Erledigt] Problem bei Massenmails versenden mit der Funktion mail PHP-Fortgeschrittene 3 19.01.2005 13:36
mail() funzt nich PHP Tipps 2005 1 16.01.2005 17:03
mail funktion funzt net es kommt ein fehler phpfortgeschrittener PHP Tipps 2004 4 29.08.2004 01:07
mail funktion PHP Tipps 2004 9 11.08.2004 13:52

Besucher kamen über folgende Suchanfragen bei Google auf diese Seite
neuer kommentar xhtml 1.0 strict, $arr_post[, online neuer kommentar xhtml 1.0 strict, formular php mail funktion, unger85@gmail.com, kontaktformular mit mailfunktion

Alle Zeitangaben in WEZ +2. Es ist jetzt 20:05 Uhr.




Powered by vBulletin® Version 3.7.2 (Deutsch)
Copyright ©2000 - 2012, Jelsoft Enterprises Ltd.
Search Engine Optimization by vBSEO 3.2.0
Aprilia-Forum, Aquaristik-Forum, Liebeskummer-Forum, Zierfisch-Forum, Geizkragen-Forum