Paules-PC-Forum.de Anzeige:

Microsoft Windows Intune: PC-Verwaltung und -Sicherheit in der Cloud: Updateverwaltung, Anti-Virus und vieles mehr!


Zurück   Paules-PC-Forum.de > Programmierung > PHP/MySQL

PHP/MySQL Alles rund um die Programmiersprache PHP sowie MySQL.

EM-Tippspiel

Paule bei Facebook


Paule bei Twitter


Letzte Forenthemen
Gehe zum ersten neuen Beitrag PPF - Spiel "Wörter weiter...
Aufrufe: 26887, Antworten: 4218
Gehe zum ersten neuen Beitrag Algorithmen Teil IV...
Aufrufe: 3321, Antworten: 122
Gehe zum ersten neuen Beitrag Von Live CD Windowspfad...
Aufrufe: 299, Antworten: 19
Gehe zum ersten neuen Beitrag Bundesliga-Tippspiel Saision...
Aufrufe: 7635, Antworten: 185
Gehe zum ersten neuen Beitrag Captur 2.2 (Snow Leo)
Aufrufe: 19, Antworten: 0
Gehe zum ersten neuen Beitrag Captur 2.3 (Lion)
Aufrufe: 20, Antworten: 0
Gehe zum ersten neuen Beitrag Acer Aspire 8745ZG fährt...
Aufrufe: 54, Antworten: 6
Gehe zum ersten neuen Beitrag Rechner fährt herunter,...
Aufrufe: 144, Antworten: 9
Gehe zum ersten neuen Beitrag avs4you_com Lizenz oder Abo?
Aufrufe: 69, Antworten: 4
Gehe zum ersten neuen Beitrag PPF - Shoppingwahn
Aufrufe: 50939, Antworten: 1395
Zeige:





Antwort
 
LinkBack Themen-Optionen Ansicht
Alt 25.11.2010, 12:59   #1 (Direktlink)
Stammuser
 
Registriert seit: 05.08.2005
Beiträge: 427
Standard kontaktformular in php

Hallo, habe ein Kontaktformular in php
Dazu habe ich die Datei gesendet.php

Das Problem ist nun, dass wenn ich das Formular abschicken will die Meldung kommt Bitte füllen Sie erst alle Felder aus.

Die Dateien sind hier : Handelsberatung gesendet.php und kontakt.php

Irgenwas muss ich da übersehen haben aber was ?

---------------------------------------------------------
if(empty($_POST['firma']) ||($_POST['name']) || empty($_POST['strasse']) || empty($_POST['adresse']) || empty($_POST['telefonnummer']) || empty($_POST['mitarbeiter']) || empty($_POST['Stelle']) || empty($_POST['email']))
{
echo "<p align=\"center\">Bitte füllen Sie erst alle Felder aus! <a href=\"javascript:history.back();\">zurück</a></p>";
}
else if (!checkEmail( $_POST['email'] ))
{
echo"<p align=\"center\">Bitte geben Sie eine gültige Emailadresse ein! <a href=\"javascript:history.back();\">zurück</a></p>";
}
else
{
$betreff = $_POST['betreff'];
$bezug = $_POST['bezug'];
$raum = $_POST['raum'];
$mitarbeiter = $_POST['mitarbeiter'];
$filialen = $_POST['filialen'];
$firma = $_POST['firma'];
$name = $_POST['name'];
$strasse = $_POST['strasse'];
$adresse = $_POST['adresse'];
$telefonnummer = $_POST['telefonnummer'];
$email = $_POST['email'];
$ausgabe = $_POST['Stelle'];
$str = stripslashes ( $ausgabe );
$text ="
<html><head><title>Onlinekontakt</title></head>
<body><p>Dies ist eine Onlinekontakt über die Webseite
<a href=\"http://www.handelsberatung.de/Kontakt.php\"> http://www.handelsberatung.de.de</a> </p>
<table border=1><tr><td>&nbsp;</td><td style=\"background-color: lavenderblush;\"><b>Angaben zur Anfrage</b></td></tr>
<tr><td>Suche </td><td>$betreff</td></tr>
<tr><td>bezug </td><td>$bezug</td></tr>
<tr><td>Das Projekt ist im Raum</td><td>$raum</td></tr>
<tr><td>Infos Hilfe Tipps</td><td>$str</td></tr>
<tr><td>Anzahl Filialen</td><td>$filialen</td></tr>
<tr><td>Anzahl Mitarbeiter</td><td>$mitarbeiter</td></tr>
</td></tr>
<tr><td>&nbsp;</td><td style=\"background-color: lavenderblush;\"><b>Angaben zur Person</b></td></tr>
<tr><td>Anrede</td><td>$anrede</td></tr>
<tr><td>Firma </td><td>$firma</td></tr>
<tr><td>Vorname Nachname </td><td>$name</td></tr>
<tr><td>Strasse / Nr. </td><td>$strasse</td></tr>
<tr><td>PLZ / Ort </td><td>$adresse</td></tr>
<tr><td>Telefon</td><td>$telefonnummer</td></tr>
<tr><td>eMail-Adresse</td><td>$email</td></tr>
</table></body></html>";
$Mailbetreff = $_POST['name'];
$Mailbetreff .= ": ";
$Mailbetreff .= $_POST['betreff'];
$header = "From: $email\n";
$header .= "MIME-Version: 1.0\n";
$header .= "Content-Type: multipart/mixed; boundary=\"" . md5( "MIME-Boundary" ) . "\";\n";
$header .= "This is a multi-part message in MIME format -- Dies ist eine mehrteilige Nachricht im MIME-Format\n";
$header .= "--" . md5( "MIME-Boundary" ) . "\n";
$header .= "Content-Type: text/html; charset=\"ISO-8859-1\";\n";
$header .= "Content-Transfer-Encoding: 8bit \n";
$header .= "$text \n";
if($_FILES['anhang']['type'] != '') {
$header .= "--" . md5( "MIME-Boundary" ) . "\n";
$header .= "Content-Type: ";
$header .= $_FILES['anhang']['type'];
$header .= "; name=";
$header .= $_FILES['anhang']['name'];
$header .= "\n";
$header .= "Content-Transfer-Encoding: base64";
$header .= "\n";
$header .= "Content-Disposition: attachment; filename=";
$header .= $_FILES['anhang']['name'];
$header .= "\n\n";
$Dateiinhalt = fread(fopen($_FILES['anhang']['tmp_name'], "r"), $_FILES['anhang']['size']);
$header .= chunk_split(base64_encode($Dateiinhalt));
$header .= "\n";
}
else
$header .= "--" . md5( "MIME-Boundary" ) . "\n";
mail($Empfaenger, $Mailbetreff, "" , $header) ;
echo "<h1>Bestätigung</h1><h2>Ihr Formular wurde übermittelt</h2>
<p id=\"oben\">
extrabreit ist offline   Mit Zitat antworten
Werbung

Windows 7 Tipps und Tricks in Bildern

Alt 25.11.2010, 17:58   #2 (Direktlink)
Super-Moderator
 
Benutzerbild von Freaky
 
Registriert seit: 30.12.2002
Ort: Stuttgarter Kreis
Beiträge: 11.722
Standard

Dann würde ich mal den folgenden Bereich überprüfen:
Zitat:
if(empty($_POST['firma']) ||($_POST['name']) || empty($_POST['strasse']) || empty($_POST['adresse']) || empty($_POST['telefonnummer']) || empty($_POST['mitarbeiter']) || empty($_POST['Stelle']) || empty($_POST['email']))
Hier überprüfst du die Post-Variablen aus deiner Kontaktformular. Wenn eines der Felder "firma", "name", "strasse", "adresse", "telefonnummer", "mitarbeiter", "Stelle" oder "email" leer ist, wird die entsprechende Fehlermeldung ausgegeben.

Eine der Variablen war leer. Vielleicht hast du dich auch einfach in der Seite des Formulars vertippt, und eines der Felder hat nicht den selben Namen wie oben angegeben (unterschiedliche Schreibweise?!)?
__________________
Freaky ist offline   Mit Zitat antworten
Alt 26.11.2010, 17:35   #3 (Direktlink)
Stammuser
 
Registriert seit: 05.08.2005
Beiträge: 427
Standard

Formular gesendet
Zitat:
if(empty($_POST['firma']) ||($_POST['name']) || empty($_POST['strasse']) || empty($_POST['adresse']) || empty($_POST['telefonnummer']) || empty($_POST['mitarbeiter']) || empty($_POST['betreff'])|| empty($_POST['bezug'])|| empty($_POST['raum'])|| empty($_POST['stelle'])|| empty($_POST['filialen'])|| empty($_POST['anhang'])||($_POST['text'])||($_POST['str'])|| empty($_POST['email']))

$betreff = $_POST['betreff'];
$bezug = $_POST['bezug'];
$raum = $_POST['raum'];
$mitarbeiter = $_POST['mitarbeiter'];
$filialen = $_POST['filialen'];
$firma = $_POST['firma'];
$name = $_POST['name'];
$strasse = $_POST['strasse'];
$adresse = $_POST['adresse'];
$telefonnummer = $_POST['telefonnummer'];
$email = $_POST['email'];
$ausgabe = $_POST['ausgabe'];
$text = $_POST['text'];
$stelle = $_POST['stelle'];
$Dateianhang = $_POST['anhang'];
$str = stripslashes ( $ausgabe );

Alle Angaben habe ich auch im kontakt Formular
Zitat:
<td><select name="betreff" size="1"><option>
<td><select name="bezug" size="1"><option>
<td><select name="raum" size="1"> <option>
<td><input name="anhang" size="50" type="file">
<td><input name="filialen" size="15" type="text">
<td><select name="mitarbeiter" size="1">
<td><select name="anrede" size="1">
<td><input name="firma" size="45" type="text">
<td><input name="name" size="45" type="text">
<td><input name="strasse" size="45" type="text">
<td><input name="adresse" size="45" type="text">
<td><input name="telefonnummer" size="30" type="text">
<td><input name="email" size="45" type="text">
<td><textarea name="Stelle" cols="45" rows="5" id="editor">
funktioniert leider immer noch nicht *heul*

neue fehlermeldung:
Zitat:
Parse error: syntax error, unexpected '{' in /homepages/26/d13353337/htdocs/handelsber/gesendet.php on line 46
In Zeile 46 steht :
Zitat:
{
echo "<p align=\"center\">Bitte füllen Sie erst alle Felder aus! <a href=\"javascript:history.back();\">zurück</a></p>";
}
else if (!checkEmail( $_POST['email'] ))
{

Geändert von extrabreit (26.11.2010 um 17:51 Uhr)
extrabreit ist offline   Mit Zitat antworten
Alt 26.11.2010, 18:00   #4 (Direktlink)
Super-Moderator
 
Benutzerbild von Freaky
 
Registriert seit: 30.12.2002
Ort: Stuttgarter Kreis
Beiträge: 11.722
Standard

Machen wir mal ne Ausgabe, um zu sehen wo es klemmt...

Ändere deinen PHP-Code mal ab, indem du das von mir blau hinzugefügte in deinen Quellcode kopierst (an die gleiche Stelle!). Anschließend nochmal versuchen und mir mitteilen, was denn ausgegeben wurde und was nicht:

Zitat:
Zitat von extrabreit Beitrag anzeigen
---------------------------------------------------------
if(empty($_POST['firma']) ||($_POST['name']) || empty($_POST['strasse']) || empty($_POST['adresse']) || empty($_POST['telefonnummer']) || empty($_POST['mitarbeiter']) || empty($_POST['Stelle']) || empty($_POST['email']))
{
echo "<p align=\"center\">Bitte füllen Sie erst alle Felder aus! <a href=\"javascript:history.back();\">zurück</a></p>";
echo "Übermittelte Daten: Firma: $_POST['firma'], Name: $_POST['name'], Strasse: $_POST['strasse'], Adresse: $_POST['adresse'], Telefonnnummer: $_POST['telefonnummer'], Mitarbeiter: $_POST['mitarbeiter'], Stelle: $_POST['Stelle'], Email: $_POST['email'] - Ende";
}
else if (!checkEmail( $_POST['email'] ))
{
echo"<p align=\"center\">Bitte geben Sie eine gültige Emailadresse ein! <a href=\"javascript:history.back();\">zurück</a></p>";
}
...
__________________
Freaky ist offline   Mit Zitat antworten
Alt 26.11.2010, 18:07   #5 (Direktlink)
Super-Moderator
 
Benutzerbild von Freaky
 
Registriert seit: 30.12.2002
Ort: Stuttgarter Kreis
Beiträge: 11.722
Standard

Zitat:
Parse error: syntax error, unexpected '{' in /homepages/26/d13353337/htdocs/handelsber/gesendet.php on line 46
Ja ich glaube dir fehlt noch ein "}" Zeichen.

Edit: Nein da habe ich falsch gedacht... Kontrolliere mal die Anzahl deiner "{" und "}". Vermutlich hast du irgendwo eines vergessen, es muss nicht in der angegebenen Zeile sein sondern kann überall sein

Edit: Code wieder entfernt...
__________________
Freaky ist offline   Mit Zitat antworten
Werbung

Windows 7 Tipps und Tricks in Bildern

Alt 26.11.2010, 19:01   #6 (Direktlink)
Stammuser
 
Registriert seit: 05.08.2005
Beiträge: 427
Standard

Zitat:
Zitat von Freaky Beitrag anzeigen
Ja ich glaube dir fehlt noch ein "}" Zeichen.

Kontrolliere mal die Anzahl deiner "{" und "}". Vermutlich hast du irgendwo eines vergessen, es muss nicht in der angegebenen Zeile sein sondern kann überall sein
Auwaia, und wie finden??

ich hab ja auf einer anderen HP ein ähnliches Formular und hab mir dort mal die Gesendet Datei angesehen und die "{" anzahl verglichen ...stimmt alles

Geändert von extrabreit (26.11.2010 um 19:15 Uhr)
extrabreit ist offline   Mit Zitat antworten
Alt 26.11.2010, 19:03   #7 (Direktlink)
Super-Moderator
 
Benutzerbild von Freaky
 
Registriert seit: 30.12.2002
Ort: Stuttgarter Kreis
Beiträge: 11.722
Standard

Wie schon gesagt:

Zitat:
Zitat von Freaky Beitrag anzeigen
Kontrolliere mal die Anzahl deiner "{" und "}".
__________________
Freaky ist offline   Mit Zitat antworten
Alt 26.11.2010, 19:35   #8 (Direktlink)
Stammuser
 
Registriert seit: 05.08.2005
Beiträge: 427
Standard

Zitat:
Zitat von extrabreit Beitrag anzeigen

ich hab ja auf einer anderen HP ein ähnliches Formular und hab mir dort mal die Gesendet Datei angesehen und die "{" anzahl verglichen ...stimmt alles
die gesendet php sieht jetzt so aus:
Zitat:
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"
"http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
<meta name="description" content="Formular wurde gesendet">
<title>Formular wurde gesendet</title>
<style type="text/css">
body {align: center;color: #000000;background-color: #C0C0C0;font-family: Helvetica,Arial,sans-serif;margin: 0.3em 15em 0.3em 15em;padding: 1em;}
h1 {font-size: 1.5em;margin: 0 0 0 0;padding: 0.3em;text-align: center;color: #000080;background-color: #C0C0C0;}
h2 {font-size: 1.3em;margin: 0 0 0 0;padding: 0.3em;text-align: center;color: #FFFFFF;background-color: #002B59;}
p#oben {text-align: center;font-family: Helvetica,Arial,sans-serif;font-size: 0.9em;color: #000000;background-color: #FFFFFF;margin: 0 0 0 0;padding: 1em 0.3em 2em 0.3em;}
div#formular {margin: 0 0 0 0;padding: 0.3em;font-family: Helvetica,Arial,sans-serif;font-size: 0.8em;color: #000000;background-color: #FFFFFF;}
p#unten{font-size: 0.8em;margin: 0 0 0 0;padding: 0.3em;}
p#fuss {font-size: 0.8em;margin: 0 0 0 0;padding: 0.3em;text-align: center;color: #FFFFFF;background-color: #002B59;}
</style>
</head>
<body>
<?php
error_reporting(E_ALL);
$Empfaenger = "info@xxxxxxxxx.de";
function checkEmail( $email )
{
$nonascii = "\x80-\xff";
$nqtext = "[^\\\\$nonascii\015\012\"]";
$qchar = "\\\\[^$nonascii]";
$normuser = '[a-zA-Z0-9][a-zA-Z0-9_.-]*';
$quotedstring = "\"(?:$nqtext|$qchar)+\"";
$user_part = "(?:$normuser|$quotedstring)";
$dom_mainpart = '[a-zA-Z0-9][a-zA-Z0-9._-]*\\.';
$dom_subpart = '(?:[a-zA-Z0-9][a-zA-Z0-9._-]*\\.)*';
$dom_tldpart = '[a-zA-Z]{2,5}';
$domain_part = "$dom_subpart$dom_mainpart$dom_tldpart";
$pattern = "$user_part\@$domain_part";

if (!preg_match( "/^$pattern$/", $email ))
{
return FALSE;
}
else
{
return TRUE;
}
}
if(empty($_POST['firma']) ||($_POST['name']) || empty($_POST['strasse']) || empty($_POST['adresse']) || empty($_POST['telefonnummer']) || empty($_POST['mitarbeiter']) || empty($_POST['betreff'])|| empty($_POST['bezug'])|| empty($_POST['raum'])|| empty($_POST['stelle'])|| empty($_POST['filialen'])||($_POST['text']|| empty($_POST['anhang'])|| empty($_POST['email']))
{
echo "<p align=\"center\">Bitte füllen Sie erst alle Felder aus! <a href=\"javascript:history.back();\">zurück</a></p>";
}
else if (!checkEmail( $_POST['email'] ))
{
echo"<p align=\"center\">Bitte geben Sie eine gültige Emailadresse ein! <a href=\"javascript:history.back();\">zurück</a></p>";
}
else
{
$betreff = $_POST['betreff'];
$bezug = $_POST['bezug'];
$raum = $_POST['raum'];
$mitarbeiter = $_POST['mitarbeiter'];
$filialen = $_POST['filialen'];
$firma = $_POST['firma'];
$name = $_POST['name'];
$strasse = $_POST['strasse'];
$adresse = $_POST['adresse'];
$telefonnummer = $_POST['telefonnummer'];
$email = $_POST['email'];
$ausgabe = $_POST['ausgabe'];
$stelle = $_POST['stelle'];
$Dateianhang = $_POST['anhang'];
$str = stripslashes ( $ausgabe );
$text = "

<html><head><title>Onlinekontakt</title></head>
<body><p>Dies ist eine Onlinekontakt über die Webseite
<a href=\"http://www.handelsberatung.de/Kontakt.php\"> http://www.handelsberatung.de.de</a> </p>
<table border=1><tr><td>&nbsp;</td><td style=\"background-color: lavenderblush;\"><b>Angaben zur Anfrage</b></td></tr>
<tr><td>Suche</td><td>$betreff</td></tr>
<tr><td>bezug</td><td>$bezug</td></tr>
<tr><td>Das Projekt ist im Raum</td><td>$raum</td></tr>
<tr><td>Anzahl Mitarbeiter</td><td>$mitarbeiter</td></tr>
<tr><td>Anzahl Filialen</td><td>$filialen</td></tr>
<tr><td>datenanhang</td><td>$anhang</td></tr>
<tr><td>Infos Hilfe Tipps</td><td>$str</td></tr>
</td></tr>
<tr><td>&nbsp;</td><td style=\"background-color: lavenderblush;\"><b>Angaben zur Person</b></td></tr>
<tr><td>Anrede</td><td>$anrede</td></tr>
<tr><td>Firma </td><td>$firma</td></tr>
<tr><td>Vorname Nachname</td><td>$name</td></tr>
<tr><td>Strasse / Nr.</td><td>$strasse</td></tr>
<tr><td>PLZ / Ort</td><td>$adresse</td></tr>
<tr><td>Telefon</td><td>$telefonnummer</td></tr>
<tr><td>eMail-Adresse</td><td>$email</td></tr>
</table></body></html>";
$Mailbetreff = $_POST['name'];
$Mailbetreff .= ": ";
$Mailbetreff .= $_POST['betreff'];
$header = "From: $email\n";
$header .= "MIME-Version: 1.0\n";
$header .= "Content-Type: multipart/mixed; boundary=\"" . md5( "MIME-Boundary" ) . "\";\n";
$header .= "This is a multi-part message in MIME format -- Dies ist eine mehrteilige Nachricht im MIME-Format\n";
$header .= "--" . md5( "MIME-Boundary" ) . "\n";
$header .= "Content-Type: text/html; charset=\"ISO-8859-1\";\n";
$header .= "Content-Transfer-Encoding: 8bit \n";
$header .= "$text \n";
if($_FILES['anhang']['type'] != '') {
$header .= "--" . md5( "MIME-Boundary" ) . "\n";
$header .= "Content-Type: ";
$header .= $_FILES['anhang']['type'];
$header .= "; name=";
$header .= $_FILES['anhang']['name'];
$header .= "\n";
$header .= "Content-Transfer-Encoding: base64";
$header .= "\n";
$header .= "Content-Disposition: attachment; filename=";
$header .= $_FILES['anhang']['name'];
$header .= "\n\n";
$Dateiinhalt = fread(fopen($_FILES['anhang']['tmp_name'], "r"), $_FILES['anhang']['size']);
$header .= chunk_split(base64_encode($Dateiinhalt));
$header .= "\n";
}
else
$header .= "--" . md5( "MIME-Boundary" ) . "\n";
mail($Empfaenger, $Mailbetreff, "" , $header) ;
echo "<h1>Bestätigung</h1><h2>Ihr Formular wurde übermittelt</h2>
<p id=\"oben\">
<b> Vielen Dank für Ihr Interesse<br>
Ihre Eingabe wurde erfolgreich gesendet.<br>
Ich werde so bald wie möglich Kontakt mit Ihnen aufnehmen.</b><br><br>
Zurück zum <a href=\"http://www.xxxxxxxx.de.de/kontakt.php\"> Formular </a><br>
oder zur <a href=\"http://www.xxxxxxxxx.de\"> Startseite </a>
</p>

}
?>
</body>
</html>
extrabreit ist offline   Mit Zitat antworten
Antwort

  Paules-PC-Forum.de > Programmierung > PHP/MySQL

Lesezeichen

Themen-Optionen
Ansicht

Forumregeln
Es ist Ihnen erlaubt, neue Themen zu verfassen.
Es ist Ihnen erlaubt, auf Beiträge zu antworten.
Es ist Ihnen nicht erlaubt, Anhänge hochzuladen.
Es ist Ihnen nicht erlaubt, Ihre 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


Ähnliche Themen
Thema Autor Forum Antworten Letzter Beitrag
Kontaktformular einbauen schnullibulli Homepagegestaltung 8 05.07.2011 09:39
PHP - Kontaktformular Goebi PHP/MySQL 2 08.11.2008 22:57
PHP Kontaktformular Frage Webmaster Leo PHP/MySQL 13 06.01.2008 07:57
Kontaktformular in PHP Webmaster Leo Homepagegestaltung 6 28.10.2007 11:44
PHP Kontaktformular Trasher PHP/MySQL 5 19.11.2004 17:49



Alle Zeitangaben in WEZ +2. Es ist jetzt 02:36 Uhr.


Powered by vBulletin® Version 3.8.7 (Deutsch)
Copyright ©2000 - 2012, vBulletin Solutions, Inc.
Powered by vBCMS® 2.7.0 ©2002 - 2012 vbdesigns.de
(c) Paules-PC-Forum.de

::: Impressum :::

Search Engine Optimization by vBSEO 3.3.2