php.de

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

 
 
LinkBack Themen-Optionen Thema bewerten
Alt 20.03.2009, 16:40  
Neuer Benutzer
 
Registriert seit: 13.02.2009
Beiträge: 6
jersey befindet sich auf einem aufstrebenden Ast
Standard [Erledigt] Kontaktformular kommt nicht vollständig in Email-Eingang an

Hallo *winke*
ich hoffe mir kann jemand helfen. Ich stehen vollkommen auf dem Schlauch und probiere jetzt mittlerweile seit Tagen mein Kontaktformular zum laufen zu bekommen.

Ich habe ein umfangreiches Kontaktformular in .html geschrieben und möchte dies jetzt gerne durch PHP verarbeiten lassen.
Das Problem ist, er verschickt das Formular, aber in meinem Posteingang kommen nur der Absendername und der Betreff an.

Alle weiteren Daten aus dem Formular fehlen jedoch! Kann mir bitte jemand helfen? Ich bin neu auf dem Gebiet PHP, ich habe schon alles versucht aber ich komme alleine leider nicht weiter.

Was mache ich für einen Fehler?

Als erstes die Formularfeld aus der html-Datei:


<form action="firma_eintragen.php" method="post" name="Firma eintragen">

<select name="rubrik[]" size="20" multiple="multiple">
<option>Auto &amp; Verkehr</option>
<option>Auto</option>
<option>Auto/Auspuffanlagen</option>
<option>Fahrzeuge</option>
<option>Fahrzeuge/Anhänger</option>
<option>Motorrad, Zweirad</option>
<option>Motorrad, Zweirad/Zubehör</option>
</select>

<table border="0" cellpadding="0" cellspacing="3">
<tr>
<td align="right">Firma</td>
<td><input name="firma" type="text" size"50" maxlength="50"</td>
</tr>
<tr>
<td align="right">Vorname</td>
<td><input name="vorname" type="text" size="30" maxlength="30"</td>
</tr>
<tr>
<td align="right">Nachname</td>
<td><input name="nachname" type="text" size="30" maxlength="30"</td>
</tr>
<tr>
<td align="right">Strasse</td>
<td><input name="strasse" type="text" size="30" maxlength="30"</td>
</tr>
<tr>
<td align="right">Hausnummer</td><td><input name="hausnummer" type="text" size="10" maxlength="10"</td><p>
</tr>
<tr>
<td align="right">Postleitzahl</td>
<td><input name="postleitzahl" type="text" size="5" maxlength="5"</td>
</tr>
<tr>
<td align="right">Ort</td><td><input name="ort"
type="text" size="30" maxlength="30"</td>
</tr>
<tr>
<td align="right">Land</td>
<td><select name="land" size="1">
<option>Deutschland</option>
<option>Schweiz</option>
<option>&Ouml;sterreich</option>
</select></td></tr>
<tr>
<td align="right">Telefon</td>
<td><input name="telefon" type="text" size="20" maxlength"20"</td>
</tr>
<tr>
<td align="right">Telefax</td>
<td><input name="telefax" type="text" size="20" maxlength="20"</td>
</tr>
<tr>
<td align="right">Email</td>
<td><input name="email" type="text" size="50" maxlength="50"</td>
</tr>
<tr>
<td align="right">Webseite</td>
<td><input name="webseite" type="text" size="50" maxlenght="50"</td>
</tr>
</table>
<p><input type="radio" name="eintragungsmethode" value="kostenloser eintrag">Kostenloser Eintrag<br>
<input type="radio" name="eintragungsmethode" value="kostenpflichtiger eintrag">Kostenpflichtiger Eintrag</p>
<p><input type="radio" name="einträge" value="1 eintrag">1 Eintrag<br>
<input type="radio" name="einträge" value="2 einträge">2 Einträge<br>
<input type="radio" name="einträge" value="3 einträge">3 Einträge</br></p/>

<input name="titel" type="text" size="50" maxlenght="50">Titel der Webseite</textarea>

<textarea name="beschreibung" type="text" cols="50" rows="5">Beschreibung der Firma</textarea>

<textarea name="keywörter" type="text" cols="50" rows="5">Keywörter</textarea>
<p>
</p>
<tr>
<td><input type="radio" name="agb" value="agb">Ich habe die<a href="agb.htm"> AGB </a>gelesen und akzeptiert
</td>
</tr>
<td>
<input type="submit" value="Absenden">
<input type="reset" value="Abbrechen">


Und jetzt das was ich bisher in php geschrieben habe:

PHP-Code:
<?php
include "config.php";
// wurde auf ABSCHICKEN geklickt?
if(isset($_POST['submit']))
{
}
if(empty(
$_POST['rubrik']))
{
echo
"Bitte gehen Sie zurück und wählen Sie mindestens eine Rubrik für Ihren Eintrag aus<br/>";
}
if(empty(
$_POST['firma']))
{
echo
"Bitte gehen Sie zurück und geben Sie Ihren Firmennamen an<br/>";
}
if(empty(
$_POST['vorname']))
{
echo
"Bitte gehen Sie zurück und tragen Sie Ihren Vornamen ein<br/>";
}
if(empty(
$_POST['nachname']))
{
echo
"Bitte gehen Sie zurück und tragen Sie Ihren Nachnamen ein<br/>";
}
if(empty(
$_POST['strasse']))
{
echo
"Bitte gehen Sie zurück und tragen Sie Ihre Strasse ein<br/>";
}
if(empty(
$_POST['hausnummer']))
{
echo
"Bitte gehen Sie zurück und tragen Sie Ihre Hausnummer ein<br/>";
}
if(empty(
$_POST['postleitzahl']))
{
echo
"Bitte gehen Sie zurück und tragen Sie Ihre Postleitzahl ein<br/>";
}
if(empty(
$_POST['ort']))
{
echo
"Bitte gehen Sie zurück und tragen Sie Ihren Wohnort ein<br/>";
}
if(empty(
$_POST['land']))
{
echo
"Bitte gehen Sie zurück und wählen Sie Ihre Heimatland<br/>";
}
if(empty(
$_POST['telefon']))
{
echo
"Bitte gehen Sie zurück und geben Sie Ihre Telefonnummer an<br/>";
}
if(empty(
$_POST['telefax']))
{
echo
"Bitte gehen Sie zurück und geben Sie Ihre Telefaxnummer an<br/>";
}
if(empty(
$_POST['email']))
{
echo
"Bitte gehen Sie zurück und geben Sie Ihre Email-Adresse ein<br/>";
}
if(empty(
$_POST['webseite']))
{
echo
"Bitte gehen Sie zurück und tragen Sie Ihre Webseite ein<br/>";
}
if(empty(
$_POST['eintragungsmethode']))
{
echo
"Bitte gehen Sie zurück und wählen Sie den kostenlosen oder kostenpflichtigen Eintrag<br/>";
}
if(empty(
$_POST['einträge']))
{
echo
"Bitte gehen Sie zurück und wählen Sie die Anzahl der gewünschten Einträge<br/>";
}
if(empty(
$_POST['titel']))
{
echo
"Bitte gehen Sie zurück und wählen Sie einen Titel für Ihren Eintrag<br/>";
}
if(empty(
$_POST['beschreibung']))
{
echo
"Bitte gehen Sie zurück und beschreiben Sie Ihr Angebot und Ihr Unternehmen<br/>";
}
if(empty(
$_POST['keywörter']))
{
echo
"Bitte gehen Sie zurück und tragen Sie wichtige Keywörter ein, die Ihr Angebot am besten beschreiben<br/>";
}
if(empty(
$_POST['agb']))
{
echo
"Bitte gehen Sie zurück und akzeptieren Sie unsere AGB";
}
if(empty(
$fehler))
{
$name $_POST['nachname'];
$betreff ='Formular Branchenbuch';
$absender $_POST['email'];
$text $_POST['rubrik'];
$text $_POST['firma'];
$text $_POST['vorname'];
$text $_POST['nachname'];
$text $_POST['strasse'];
$text $_POST['hausnummer'];
$text $_POST['postleitzahl'];
$text $_POST['ort'];
$text $_POST['land'];
$text $_POST['telefon'];
$text $_POST['telefax'];
$text $_POST['email'];
$text $_POST['webseite'];
$text $_POST['eintragungsmethode'];
$text $_POST['einträge'];
$text $_POST['titel'];
$text $_POST['beschreibung'];
$text $_POST['keywörter'];
$text $_POST['agb'];
mail($deinemailadresse$name$betreff$absender$text);
echo
"Ihre Nachricht wurde erfolgreich verschickt";
}
?>
jersey ist offline  
Sponsor Mitteilung
PHP Code Flüsterer

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

Alt 20.03.2009, 16:55  
Moderator
 
Registriert seit: 06.06.2008
Beiträge: 4.945
PHP-Kenntnisse:
Fortgeschritten
Wolla ist ein wunderbarer AnblickWolla ist ein wunderbarer AnblickWolla ist ein wunderbarer AnblickWolla ist ein wunderbarer AnblickWolla ist ein wunderbarer AnblickWolla ist ein wunderbarer AnblickWolla ist ein wunderbarer Anblick
Wolla eine Nachricht über ICQ schicken
Standard

$text wird immer wieder neu überschrieben.

Du wolltest vielleicht schreiben:

$text .= $_POST['hausnummer'] . "\n";
$text .= $_POST['postleitzahl'] . "\n";

(mit Punkt vor dem =)

Generell solltest du keine mails mit mail() absetzen, sondern eine fertige Mailklasse nehmen, z.B. phpmailer. Das erspart dir künftig viel Arbeit und ist auch sicherer.
Wolla ist offline  
Alt 20.03.2009, 19:34  
Neuer Benutzer
 
Registriert seit: 13.02.2009
Beiträge: 6
jersey befindet sich auf einem aufstrebenden Ast
Standard

Hallo,

vielen Dank für Deine Antwort. Ich habe die Datei jetzt einmal umgeschrieben, aber ich erhalte leider immer noch ein leeres Formular. Er gibt immer nur die Mail-Adresse des Absenders aus und den Betreff.

Woran kann es denn noch liegen? Vielleicht an meinem Provider? Ich meine ich hätte einmal gelesen dass es an den Einstellungen für Global Arrays liegen kann, weil einige Provider diese auf Off stehen haben?
Das wäre vielleicht noch einen Versucht wert, aber wie kann ich diese auf ON stellen?
jersey ist offline  
Alt 20.03.2009, 19:55  
Moderator
 
Registriert seit: 06.06.2008
Beiträge: 4.945
PHP-Kenntnisse:
Fortgeschritten
Wolla ist ein wunderbarer AnblickWolla ist ein wunderbarer AnblickWolla ist ein wunderbarer AnblickWolla ist ein wunderbarer AnblickWolla ist ein wunderbarer AnblickWolla ist ein wunderbarer AnblickWolla ist ein wunderbarer Anblick
Wolla eine Nachricht über ICQ schicken
Standard

wenn du in die erste Zeile ein

print_r($_POST)

schreibst, dann siehst du, welche Daten ankommen.

Dann machst du noch unter die mail()-Zeile

echo $text;

und dann weißt du schon mehr.
Wolla ist offline  
Alt 20.03.2009, 20:55  
Neuer Benutzer
 
Registriert seit: 13.02.2009
Beiträge: 6
jersey befindet sich auf einem aufstrebenden Ast
Standard

Hi, ich habe es jetzt einmal ausprobiert und er gibt mir direkt im Browser auch eine Meldung aus:

Array ( [rubrik] => Array ( [0] => Motorrad, Zweirad ) [firma] => dsfdsfd [vorname] => fdfdfd [nachname] => fdfdsafds [strasse] => fdfdfd [hausnummer] => fdfdfdfdfd [postleitzahl] => fdfdf [ort] => dfdfd [land] => Deutschland [telefon] => fdfd [telefax] => fdsfdf [email] => fdsfsdf [webseite] => dfdfds [eintragungsmethode] => kostenpflichtiger eintrag [einträge] => 1 eintrag [titel] => sdfdsfdsfdsfsd [beschreibung] => Beschreibung der Firmafdsfdsfdsfdsfdsf [keywörter] => Keywörtersdfsdfsdf [agb] => agb ) Array dsfdsfd fdfdfd fdfdsafds fdfdfd fdfdfdfdfd fdfdf dfdfd Deutschland fdfd fdsfdf fdsfsdf dfdfds kostenpflichtiger eintrag 1 eintrag sdfdsfdsfdsfsd Beschreibung der Firmafdsfdsfdsfdsfdsf Keywörtersdfsdfsdf agb Ihre Nachricht wurde erfolgreich verschickt

Also bedeutet das doch jetzt, dass es normalerweise funktionieren müsste? Ich meine mein Provider scheint die Funktion Global Arrays doch nicht deaktiviert zu haben oder doch?
jersey ist offline  
Alt 20.03.2009, 20:58  
moderatives Dielektrikum
 
Benutzerbild von nikosch
 
Registriert seit: 21.05.2008
Beiträge: 35.989
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:
$text = $_POST['rubrik'];
$text = $_POST['firma'];
$text = $_POST['vorname'];
$text = $_POST['nachname'];
$text = $_POST['strasse'];
$text = $_POST['hausnummer'];
$text = $_POST['postleitzahl'];
$text = $_POST['ort'];
$text = $_POST['land'];
$text = $_POST['telefon'];
$text = $_POST['telefax'];
$text = $_POST['email'];
$text = $_POST['webseite'];
$text = $_POST['eintragungsmethode'];
$text = $_POST['einträge'];
$text = $_POST['titel'];
$text = $_POST['beschreibung'];
$text = $_POST['keywörter'];
$text = $_POST['agb'];
Naja, was soll hier auch schon passieren?!
__________________
--
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 20.03.2009, 21:02  
Neuer Benutzer
 
Registriert seit: 13.02.2009
Beiträge: 6
jersey befindet sich auf einem aufstrebenden Ast
Standard

Hallo,

vielen Dank für die Antwort, die hilft mir aber leider nicht weiter.
Ich habe doch geschrieben dass ich gerade erst mit PHP anfange, und bereits seit Tagen nach dem Fehler suche?
Dann hilf mir doch bitte mal auf die Sprünge was ich eigentlich falsch mache?
jersey ist offline  
Alt 20.03.2009, 21:32  
Moderator
 
Registriert seit: 06.06.2008
Beiträge: 4.945
PHP-Kenntnisse:
Fortgeschritten
Wolla ist ein wunderbarer AnblickWolla ist ein wunderbarer AnblickWolla ist ein wunderbarer AnblickWolla ist ein wunderbarer AnblickWolla ist ein wunderbarer AnblickWolla ist ein wunderbarer AnblickWolla ist ein wunderbarer Anblick
Wolla eine Nachricht über ICQ schicken
Standard

das hatte ich dir in #2 schon geschrieben. Daraufhin hast du geantwortet, dass du es entsprechend umgeschrieben hast.

Nochmal:

nach
$text = $_POST['rubrik'];
steht in $text das, was in das Eingabefeld rubrik eingegeben wurde.

nach
$text = $_POST['firma'];
steht in $text das, was in das Eingabefeld firma eingegeben wurde. Der vorher gesetzte Inhalt ist weg.

Wenn du alle Inhalte in $text haben willst, dann musst du die Strings verketten (siehe #2) - das sind Grundlagen.
Wolla ist offline  
Alt 20.03.2009, 22:10  
Neuer Benutzer
 
Registriert seit: 13.02.2009
Beiträge: 6
jersey befindet sich auf einem aufstrebenden Ast
Standard

@wolla
Sorry wenn das so rüberkam, aber ich meinte Dich nicht
Du hast mir schon sehr gut geholfen, vielen Dank

Ich habe es genauso umgeschrieben, wie Du es bereits in Deiner Antwort mitgeteilt hast.
Das Problem besteht nur leider weiterhin, dass ich nur den Namen des Absenders erhalten und den Betreff der Email.
Alle anderen Daten fehlen weiterhin. Ich weiss nicht weiter.
Trotzdem danke
jersey 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
Kontaktformular an 2. Postfächer Senden PayAttention PHP Tipps 2009 20 28.01.2009 21:39
PHP eMail mit CSS moercel PHP Tipps 2008 11 20.12.2008 01:13
Probleme mit abzusendender Email Leicowitz PHP Tipps 2008 17 17.09.2008 08:59
Kontaktformular mit Spamschutz und include Navigation? chicco4u PHP Tipps 2008 1 11.08.2008 09:52
[Erledigt] Kontaktformular - bitte helft mir celine70 PHP Tipps 2008 3 19.05.2008 11:28
Abfrage ob email adresse schon vorhanden ist TeazY PHP Tipps 2008 10 16.12.2007 12:22
Spam angriffe über Kontaktformular almeric PHP Tipps 2005-2 13 05.12.2005 19:42
[Erledigt] automatisch Email PHP Tipps 2005-2 3 26.07.2005 12:53
Kontaktformular, welches auf neue html Seite führt PHP Tipps 2005-2 4 20.07.2005 11:21
[Erledigt] doppelte email adressen suchen Datenbanken 9 20.05.2005 19:38
Email aus textarea PHP Tipps 2005 3 14.04.2005 21:37
Wie implementiere ich mein Email Formular? PHP Tipps 2004-2 2 14.11.2004 17:02
Ganz einfach eine Email über Kontaktformular versenden. Wie? 'progman' PHP Tipps 2004-2 1 07.11.2004 17:11
Kontaktformular - Nachricht wurde verschickt PHP Tipps 2004 4 22.10.2004 09:18
Email per PHP formatieren PHP Tipps 2004 4 26.07.2004 09:49

Besucher kamen über folgende Suchanfragen bei Google auf diese Seite
kontaktformular kommt ohne inhalt an, angriff auf php kontaktformular, email kommt unvollständig an, http://www.php.de/php-einsteiger/53176-erledigt-kontaktformular-kommt-nicht-vollstaendig-email-eingang.html, umfangreiches kontaktformular php, php mail nicht vollständig, php mail() kommt nicht an, kontaktformular mail kommt nicht an, mail kommt unvollständig an, email kommt nicht vollstädig, mail inhalt kommt unvollständig an, umfangreiches kontaktformular in html, name e mail adresse eingang, eingabefeld hausnummer usability, text aus kontaktformular kommt nicht vollständig an, php formular kommt nicht vollständig, kontaktformular text kommt nicht an, php mail post nicht komplett, e-mail kommt nicht vollständig an, text aus textarea nicht vollständig in email php

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