php.de

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

 
 
LinkBack Themen-Optionen Thema bewerten
Alt 12.02.2009, 15:45  
Neuer Benutzer
 
Registriert seit: 12.02.2009
Beiträge: 3
Rccar befindet sich auf einem aufstrebenden Ast
Standard Mail Script versendet keine Mails nach Xampp installation

Hallo Liebe PHP Community
Dieses Script:
PHP-Code:
<?php
define 
('MAILTO'"test@test.de"); // Empfänger hier eintragen
define ('MAILFROM'"Kontaktformular"); // ggfls. Absender hier eintragen
define ('CHARSET'"ISO-8859-15"); // Zeichenkodierung ggfls. anpassen
$Pflichtfelder = array('Nachricht'); // ggfls. weitere Pflichtfelder angeben


$AddHeader 'Content-Type: text/plain; charset='.CHARSET;
if(
MAILFROM$AddHeader .= chr(13).chr(10).'From: '.MAILFROM;

if(
$Formular_abgeschickt = !empty($_POST)) {
  
$Formular_leer trueset_magic_quotes_runtime(0);
  
$_POST array_map('Formular_Daten'$_POST);
}
function 
Formular_Daten($val) {
  global 
$Formular_leer;
  if(
is_array($val)) return array_map('Formular_Daten'$val);
  if(
get_magic_quotes_gpc()) $val stripslashes($val);
  if(
$val trim($val)) $Formular_leer false;
  return 
$val;
}

function 
Formular_Pflichtfeld($Feldname) {
  return isset(
$_POST[$Feldname]) && trim($_POST[$Feldname]);
}

function 
Formular_neu($log='.htPOSTdata.txt') {
  if(
file_exists($log) && is_readable($log)
   && 
file_get_contents($log) == print_r($_POST,true))
  return 
false;
  if(
$handle=@fopen($log'w')) {
    
fwrite($handleprint_r($_POST,true)); fclose($handle);
  }
  return 
true;
}

function 
Formular_Check() {
  global 
$Formular_leer$Pflichtfelder;
  
$Fehler '';
  if(
$Formular_leer$Fehler 'Keine Daten eingetragen.';
  else {
    foreach (
$_POST as $key => $val) {
      if(!
is_array($val)) { // kein Array gleichnamiger Checkboxen
        
if(in_array($key$Pflichtfelder) && !Formular_Pflichtfeld($key)) {
          if(
$Fehler$Fehler .= '<br />';
          
$Fehler .= 'Pflichtfeld "' $key '" nicht ausgefüllt.';
        }
      }
    }
    if(!
$Fehler && !Formular_neu()) $Fehler 'Nachricht war bereits verschickt.';
  }
  return 
$Fehler;
}

function 
Formular_Eingabe($Feldname) {
  if(isset(
$_POST[$Feldname])) echo htmlspecialchars($_POST[$Feldname]);
}
?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"
 "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="de" lang="de">
<head>
  <title>Kontaktformular</title>
  <meta http-equiv="Content-Type" content="text/html; charset=<?php echo CHARSET?>" />
</head>
<body>
<h1>Kontakt</h1>

<?php
if($Formular_abgeschickt) {
  if(
$Formular_Fehler Formular_Check())
    echo 
'<p class="Meldung" id="Fehler">',$Formular_Fehler,'</p>';
  elseif(@
mail(MAILTO"Nachricht"print_r($_POST,true), $AddHeader))
    echo 
'<p class="Meldung" id="OK">Nachricht verschickt.</p>';
  else echo 
'<p class="Meldung" id="Fehler">Server-Fehler !</p>';
}
?>

<form action="<?php echo $_SERVER['SCRIPT_NAME']; ?>" method="post"
 enctype="multipart/form-data" accept-charset="<?php echo CHARSET?>">
  <fieldset><legend>Kontaktformular</legend>
    <p>
      <label for="Name">Ihr Name:</label>
      <input name="Name" id="Name" size="66"
       value="<?php Formular_Eingabe('Name'); ?>" />
    </p>
    <p>
      <label for="Nachricht">Nachricht:</label>
      <textarea name="Nachricht" id="Nachricht" rows="5" cols="50"><?php
       Formular_Eingabe
('Nachricht'); ?></textarea>
    </p>
    <p><input type="submit" value="abschicken" /></p>
  </fieldset>
</form>

</body>
</html>
  //ENDE E-mail Script
?>

HTML ENDE hiereinfügen
versendet seit eine xampp installation keine mails mehr.
Wenn man auf "abschicken" drückt kommt nur der Fehler"Server Fehler"
Das Script läuft auf einem Windows 2003 Server.
Die Mails werden nur im eigenen Netz versendet(Intranet)
Vielleicht könnt ihr mir weiter helfen
vielen dank
greets
Rccar ist offline  
Sponsor Mitteilung
PHP Code Flüsterer

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

Alt 12.02.2009, 16:14  
Erfahrener Benutzer
 
Registriert seit: 06.11.2008
Beiträge: 212
stayInside befindet sich auf einem aufstrebenden Ast
Standard

Mailserver aktiviert? Weil XAMPP hat soweit ich weiss nichtmal einen o_O oder?
stayInside ist offline  
Alt 12.02.2009, 16:17  
Erfahrener Benutzer
 
Benutzerbild von JEGO
 
Registriert seit: 01.12.2003
Beiträge: 2.555
PHP-Kenntnisse:
Anfänger
JEGO wird schon bald berühmt werden
Standard

und helfen könnte dir auch die "@" aus den script vor mail(); zu entfernen. Dann bekommt man auch ne fehlermeldung die aussagekräftig ist.
__________________
Gruß JEGO

Ein PHP Script tut, was Du schreibst, nicht was Du willst.
JEGO ist offline  
Alt 13.02.2009, 07:18  
Neuer Benutzer
 
Registriert seit: 12.02.2009
Beiträge: 3
Rccar befindet sich auf einem aufstrebenden Ast
Standard

das komische ist das genau so das script schon funktioniert hat.
ohne mailserver und mit dem "@"

Edit:Hab es jetzt das script editiert und das "@" wegemacht ---> Script versendet keine Mails

Geändert von Rccar (13.02.2009 um 07:29 Uhr).
Rccar ist offline  
Alt 13.02.2009, 08:31  
Erfahrener Benutzer
 
Benutzerbild von JEGO
 
Registriert seit: 01.12.2003
Beiträge: 2.555
PHP-Kenntnisse:
Anfänger
JEGO wird schon bald berühmt werden
Standard

Am Anfang vom Script schreib das noch rein.

PHP-Code:
error_reporting(E_ALL); 
Zitat:
das komische ist das genau so das script schon funktioniert hat.
ohne mailserver und mit dem "@"
Also ohne Mailserver kein Mailversand. Entweder einen fremden benutzen oder einen eigenen. Was steht in der php.ini ? Wie verarbeitet php die mail(); Funktion bei dir?
__________________
Gruß JEGO

Ein PHP Script tut, was Du schreibst, nicht was Du willst.
JEGO ist offline  
Alt 13.02.2009, 12:22  
moderatives Dielektrikum
 
Benutzerbild von nikosch
 
Registriert seit: 21.05.2008
Beiträge: 35.987
PHP-Kenntnisse:
Fortgeschritten
nikosch hat eine strahlende Zukunftnikosch hat eine strahlende Zukunftnikosch hat eine strahlende Zukunftnikosch hat eine strahlende Zukunftnikosch hat eine strahlende Zukunftnikosch hat eine strahlende Zukunftnikosch hat eine strahlende Zukunftnikosch hat eine strahlende Zukunftnikosch hat eine strahlende Zukunftnikosch hat eine strahlende Zukunftnikosch hat eine strahlende Zukunft
Standard

Zitat:
versendet seit eine xampp installation keine mails mehr.
..
Das Script läuft auf einem Windows 2003 Server.
Was auch immer das jetzt heißt. Läufts nun in Xampp, liefs vorher woanders? In einer anderen Xampp Version. In einer echten Konfiguration aus Apache/PHP kann es schon sein, dass da auch ein Mailserver konfiguriert war.
__________________
--
One pixel is still too big. Please make it smaller. ASAP.

Initiative Mittelstand.
Die wichtigste Gestaltungsregel im Screendesign ist Pi mal Daumen des Arbeitgebers.
--
nikosch ist offline  
Alt 13.02.2009, 13:23  
Neuer Benutzer
 
Registriert seit: 05.02.2009
Beiträge: 21
BumpyJohnson befindet sich auf einem aufstrebenden Ast
Standard

Xampp hat grundlegend kein Mailserver konfiguriert, was die anderen auch schon an gesprochen ist und wie es aussieht ist das wohl dein Problem.

Ich selbst benutze Xampp auf meinem Xp-Rechner und habe mir als Mailserver einfach schnell Hamster installiert. So kann man die ganzen Mail-Funktionen schnell testen.

Volkers Hamsterseiten

good luck, b.j.
BumpyJohnson ist offline  
Alt 13.02.2009, 13:33  
Erfahrener Benutzer
 
Benutzerbild von litterauspirna
 
Registriert seit: 24.04.2008
Beiträge: 3.172
PHP-Kenntnisse:
Anfänger
litterauspirna sorgt für eine eindrucksvolle Atmosphärelitterauspirna sorgt für eine eindrucksvolle Atmosphäre
litterauspirna eine Nachricht über ICQ schicken
Standard

Zitat:
Zitat von BumpyJohnson Beitrag anzeigen
Xampp hat grundlegend kein Mailserver konfiguriert
Das ist totaler Unsinn,die neuen Versionen haben Standartmäßig Mercury mit dabei. Dazu muss in der php.ini beim Mailversand einfach etwas umgestellt werden. Wo genau weis ich jetzt nicht aus dem Kopf. Dann muss man im Mercury in der Config einfach ein paar User mal anlgene. Dann das Mailprogramm deiner Wahl nehmen z.B. was bei Windows dabei ist, ist Outlook Express und dort Konten anglegen mir folgenden Adressen testuser@localhost.

Habe das jetzt bei mir mal raus gesucht. Folgendermasen musst du vorgehen.

Du gehst in das Verzeichnis wo du dein xampp hin installiert hast. Da gehst in den Ordner appache,dann in den Ordner bin und da suchst nach der php.ini. Die öffnest du dann und drückst mal srtg und F und dann gibst in das Scuhfeld mal sendmail ein und da machst dann dann folgene Änderungen.
Code:
[mail function]
; For Win32 only.
SMTP = localhost
smtp_port = 25
; For Win32 only.
sendmail_from = Admin@localhost 
Das tust du dann speichern. Der Admin@localhost steht im Mercury als vorconfigurierter User. In die Liste kommst du im Mercury folgender masen.

Du gehst über das xampp Controlpanel bei aktivierten Mercury auf den Button Admin. Da gehst oben im Menu auf Configuration -> Manage Local Users und da siehst den dann drin stehen. Dort kannst dann auch mehrere User hinzufügen.

Du musst dann nur darauf achten das du Appache schon gestartet hast bevor du Mercury startest.

Das war es schon.
__________________
Aus dem Dynamo Lande kommen wir. Trinken immer reichlich kühles Bier. Und dann sind wir alle voll, die Stimmung ist so toll. Aus dem Dynamo Lande kommen wir.
http://www.lit-web.de

Geändert von litterauspirna (13.02.2009 um 13:43 Uhr).
litterauspirna ist offline  
Alt 13.02.2009, 13:34  
Neuer Benutzer
 
Registriert seit: 12.02.2009
Beiträge: 3
Rccar befindet sich auf einem aufstrebenden Ast
Standard

ja davor lief es in einer konfiguration zwischen Php/apache
aber weil ich xampp komfortabler fand hab ich xampp installiert
ich hab grad mein chef gefragt.
es war hundertprozentig kein mailserver installiert
Rccar ist offline  
Alt 13.02.2009, 14:24  
Supermoderator HD
 
Benutzerbild von Manko10
 
Registriert seit: 16.03.2008
Beiträge: 8.706
PHP-Kenntnisse:
Fortgeschritten
Manko10 hat eine strahlende ZukunftManko10 hat eine strahlende ZukunftManko10 hat eine strahlende ZukunftManko10 hat eine strahlende ZukunftManko10 hat eine strahlende ZukunftManko10 hat eine strahlende ZukunftManko10 hat eine strahlende ZukunftManko10 hat eine strahlende ZukunftManko10 hat eine strahlende ZukunftManko10 hat eine strahlende ZukunftManko10 hat eine strahlende Zukunft
Standard

Bei XAMPP für Windows ist stets Mercury Mail dabei, auch wenn der meiner Meinung nach nichts taugt und ohne manuelle Konfiguration, wie litter sie beschrieben hat, nicht läuft.
Bei der Direktive
Code:
sendmail_from = Admin@localhost
kann es übrigens auch Probleme geben. Sollte der Kram nicht laufen, solltest du die Zeile auskommentieren.
__________________
Refining Linux Advent Calendar series “24 Outstanding ZSH Gems
Manko10 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
gleiches script triggern mit und ohne Variablenübergabe steve_2000 PHP Tipps 2008 2 04.12.2008 17:34
PJHP Script Mail Versand läuft nicht mehr Lordcyber PHP Tipps 2008 8 23.09.2008 12:45
[Erledigt] str_replace funktioniert nach neuer Xampp Installation nicht mehr! stallone PHP Tipps 2008 26 25.05.2008 14:50
Script Installation Zapfhome Datenbanken 2 27.03.2008 05:23
Registrierungs Script - Mail senden usw. geht nur teilweise! CHRIS PHP Tipps 2006 8 26.07.2006 13:49
mail script Cheesy92 PHP Tipps 2006 11 21.07.2006 15:16
Mail Function mir XAMPP LP PHP Tipps 2006 13 30.05.2006 07:59
mail() und boundary Problem Gef PHP Tipps 2006 4 02.03.2006 00:47
Suche Script für Mails ! PHP Tipps 2006 14 05.02.2006 20:28
[Erledigt] Verzögerung durch included Script? Umgehen? PHP Tipps 2005-2 4 10.07.2005 19:26
mail() versucht die Mails als wwwrun an den SMTP Server zu l Server, Hosting und Workstations 3 15.06.2005 11:25
Nach Xampp Installation... PHP Tipps 2004 2 21.07.2004 16:27

Besucher kamen über folgende Suchanfragen bei Google auf diese Seite
xampp mail versenden, xampp mail senden, xampp mails verschicken, xampp windows mail, xampp email, php versendet keine mails, xampp email senden, xampp mail funktion, mercury versendet keine mails, xampp mail localhost, xampp emails versenden, http://www.php.de/php-einsteiger/51758-mail-script-versendet-keine-mails-nach-xampp-installation.html, xampp mails versenden, xampp email versenden, xampp php mail function, xampp versendet keine mails, email xampp, xampp php mail funktion, mail versenden xampp, xampp php mail versenden

Alle Zeitangaben in WEZ +2. Es ist jetzt 18:22 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