Top-Themen

AppleEntwicklungHardwareInternetLinuxMicrosoftMultimediaNetzwerkeOff TopicSicherheitSonstige SystemeVirtualisierungWeiterbildungZusammenarbeit

Aktuelle Themen

Administrator.de FeedbackApache ServerAppleAssemblerAudioAusbildungAuslandBackupBasicBatch & ShellBenchmarksBibliotheken & ToolkitsBlogsCloud-DiensteClusterCMSCPU, RAM, MainboardsCSSC und C++DatenbankenDatenschutzDebianDigitiales FernsehenDNSDrucker und ScannerDSL, VDSLE-BooksE-BusinessE-MailEntwicklungErkennung und -AbwehrExchange ServerFestplatten, SSD, RaidFirewallFlatratesGoogle AndroidGrafikGrafikkarten & MonitoreGroupwareHardwareHosting & HousingHTMLHumor (lol)Hyper-VIconsIDE & EditorenInformationsdiensteInstallationInstant MessagingInternetInternet DomäneniOSISDN & AnaloganschlüsseiTunesJavaJavaScriptKiXtartKVMLAN, WAN, WirelessLinuxLinux DesktopLinux NetzwerkLinux ToolsLinux UserverwaltungLizenzierungMac OS XMicrosoftMicrosoft OfficeMikroTik RouterOSMonitoringMultimediaMultimedia & ZubehörNetzwerkeNetzwerkgrundlagenNetzwerkmanagementNetzwerkprotokolleNotebook & ZubehörNovell NetwareOff TopicOpenOffice, LibreOfficeOutlook & MailPapierkorbPascal und DelphiPeripheriegerätePerlPHPPythonRechtliche FragenRedHat, CentOS, FedoraRouter & RoutingSambaSAN, NAS, DASSchriftartenSchulung & TrainingSEOServerServer-HardwareSicherheitSicherheits-ToolsSicherheitsgrundlagenSolarisSonstige SystemeSoziale NetzwerkeSpeicherkartenStudentenjobs & PraktikumSuche ProjektpartnerSuseSwitche und HubsTipps & TricksTK-Netze & GeräteUbuntuUMTS, EDGE & GPRSUtilitiesVB for ApplicationsVerschlüsselung & ZertifikateVideo & StreamingViren und TrojanerVirtualisierungVisual StudioVmwareVoice over IPWebbrowserWebentwicklungWeiterbildungWindows 7Windows 8Windows 10Windows InstallationWindows MobileWindows NetzwerkWindows ServerWindows SystemdateienWindows ToolsWindows UpdateWindows UserverwaltungWindows VistaWindows XPXenserverXMLZusammenarbeit
Kommentar vom Moderator masterG am 20.06.2012 um 15:35:15 Uhr
bitte, bitte, bitte Formatierungshilfe verwenden ;)
GELÖST

HTML Formular mit Hilfe von PHP an meine Email versenden

Frage Entwicklung PHP

Mitglied: jjsn1988

jjsn1988 (Level 1) - Jetzt verbinden

20.06.2012, aktualisiert 11.09.2012, 3557 Aufrufe, 9 Kommentare

Danke im Vorraus

Ich hab ein html Formular und möchte das mit hilfe von php an meine email versenden aber geht nicht so wie ich will
hier mal die form html code:
01.
<form method="post" action="kontakttest.php"> 
02.
         <table border="0"> 
03.
                 <tr> 
04.
                         <td>Anrede:</td> 
05.
                         <td> 
06.
                                 Herr: <input type="radio" value="Herr" name="anrede"> 
07.
                                 Frau: <input type="radio" value="Frau" name="anrede"> 
08.
                         </td> 
09.
                 </tr> 
10.
                 <tr> 
11.
                         <td>Vorname</td> 
12.
                         <td><input type="text" name="name"></td> 
13.
                 </tr> 
14.
                 <tr> 
15.
                         <td>Nachame</td> 
16.
                         <td><input type="text" name="nachname"></td> 
17.
                 </tr> 
18.
                 <tr> 
19.
                         <td>Email</td> 
20.
                         <td><input type="text" name="mail"></td> 
21.
                 </tr> 
22.
                 <tr> 
23.
                         <td>Ihre Nachricht an uns:</td> 
24.
                         <td><textarea colign="25" rowgn="15"></textarea></td> 
25.
                 </tr> 
26.
                  <tr> 
27.
                         <td></td> 
28.
                         <td><input type="submit" value="abschicken!!!"><input type="reset" value="Löschen!!!"></td> 
29.
                 </tr> 
30.
         </table> 
31.
         </form>
und hier die php code:
01.
<?php 
02.
                 $anrede = $_REQUEST [`anrede`]; 
03.
                 $name = $_REQUEST [`nachname`]; 
04.
                 $vorname = $_REQUEST [`name`]; 
05.
                 $mail = $_REQUEST [`mail`]; 
06.
                 $nachricht = $_REQUEST [`nachricht`]; 
07.
 
08.
                 $empfänger = "XXXXXXX@spi-herrmann.com"
09.
                 $absender = $mail
10.
 
11.
                 $betreffwebmaster = "Kontaktanfrage ($name $nachname)"
12.
                 $koerperwebmaster = "$name $nachname hat &uuml; die Webseite spi-herrmann.com eine Kontaktangfrage gesendet."
13.
                 "\n\n 
14.
                 Kontaktdaten: \n 
15.
                 \tName: $anrede $name $nachname   \n 
16.
                 \teMail: $mail \n 
17.
                 \tNachricht: $nachricht \n" 
18.
19.
 
20.
                 $abgesandt = "<h1>Kontaktbest&auml;tigung</h1> <p>Vielen Dank für ihre Kontaktanfrage <br><br> </p>"
21.
 
22.
                 mail ("$empfänger","$betreffwebmaster","$koerperwebmaster\n","FROM: $absender \n"); 
23.
                 echo $abgesandt
24.
       ?>
Also er sendet mir die mail aber so
jensch hat &uuml; die Webseite spi-herrmann.com eine Kontaktangfrage gesendet.


Kontaktdaten:

Name: xxxx(nur den nachnamen)

eMail:

Nachricht:

Danke für eure hilfe
Mitglied: nxclass
20.06.2012, aktualisiert um 12:37 Uhr
$koerperwebmaster
...

Dein Problem sind also die Zeilenumbrüche ? ... mit "" machst Du bei einer neuen Zeile schon einen Zeilenumbruch, da brauchst du kein \n mehr.

01.
$koerperwebmaster = <<<__TEXT__ 
02.
$name $nachname hat über die Webseite spi-herrmann.com eine Kontaktangfrage gesendet. 
03.
 
04.
Kontaktdaten: 
05.
    Name: $anrede $name $nachname 
06.
    Mail: $mail 
07.
    Nachricht: $nachricht 
08.
__TEXT__;
Bitte warten ..
Mitglied: chrizl
20.06.2012 um 13:09 Uhr
Also dein Problem liegt sehr warscheinlich daran, dass du die Variablen falsch überschreibst.

Mach mal anstelle von einem ` ein '.
Das wäre zumindest die richtige Schreibweise im PHP-Code.


Als nächstes würde ich dir empfehlen, anstelle von $_REQUEST $_POST zu verwenden.
Damit verhinderst du, dass dir jemand irgendwelche Parameter frei mit übergeben kann. Zumindest über die URL.

Und dann probier das alles bitte noch einmal aus.


Dass der dir den Nachnamen überträgt liegt daran, weil du die Variable $nachname nicht erneut überschreibst.
Bitte warten ..
Mitglied: nxclass
20.06.2012 um 13:13 Uhr
Dass der dir den Nachnamen überträgt liegt daran, weil du die Variable $nachname nicht erneut überschreibst.
.. stimmt fasst:
01.
$name = $_REQUEST [`nachname`]; 
02.
$vorname = $_REQUEST [`name`];
... und $vorname wird nirgends mehr benutzt.
somit:
01.
$nachname = $_REQUEST ['nachname']; 
02.
$name = $_REQUEST ['name'];
Bitte warten ..
Mitglied: chrizl
20.06.2012 um 14:49 Uhr
Genau das meinte ich

Zumindest sollte man die Variablen richtig zuordnen.
Bitte warten ..
Mitglied: jjsn1988
21.06.2012 um 11:14 Uhr
Danke für die Tipps jetzt zeigt er die Anrede Vorname Nachname und die Email adresse aber die Nachricht die ich schreibe noch nicht
Bitte warten ..
Mitglied: jjsn1988
21.06.2012, aktualisiert um 11:22 Uhr
nein das er mir die Nachricht die ich schreibe in das formular nicht schreibt in die email die er verschickt

hier nochmal die teile die ich denke interessant sind erstmal html datei:
<tr>
<td>Ihre Nachricht an uns:</td>
<td><textarea colign="25" rowgn="15" name="nachricht" ></textarea></td>
</tr>

und jetzt hier die php datei

<?php
$anrede = $_POST ['anrede'];
$nachname = $_POST ['nachname'];
$name = $_POST ['name'];
$mail = $_POST ['mail'];
$nachricht = $_POST ['nachricht'];

$empfänger = "xxxx@spi-herrmann.com";
$absender = $mail;

$betreffwebmaster = "Kontaktanfrage ($name $nachname)";
$koerperwebmaster = "$name $nachname hat Über die Webseite spi-herrmann.com eine Kontaktangfrage gesendet.".
"\n\n
Kontaktdaten: \n
\tName: $anrede $name $nachname \n
\teMail: $mail \n
\tNachricht: $nachricht "
;

$abgesandt = "<h1>Kontaktbest&auml;tigung</h1> <p>Vielen Dank für ihre Kontaktanfrage <br><br> </p>";

mail ("$empfänger","$betreffwebmaster","$koerperwebmaster\n","FROM: $absender \n");
echo $abgesandt;
?>
Bitte warten ..
Mitglied: chrizl
21.06.2012 um 11:40 Uhr
Kleinigkeit noch nebenbei:

ÄÖÜ und Co. niemals im Script benutzen.

Das sind Sonderzeichen und im englischen gibt es sowas nicht.
Sprich, PHP wird dir die sehr warscheinlich auch nicht richtig ausgeben.


Gib doch mal auf deiner Scriptseite, also die kontakttest.php die Nachricht aus.
01.
echo $nachricht;
Wird die da richtig angezeigt?
Bitte warten ..
Mitglied: jjsn1988
21.06.2012 um 12:29 Uhr
ja er gibt mir die NAchricht aus
und in der email schreibt er es auch jetzt
Bitte warten ..
Mitglied: nxclass
21.06.2012 um 20:52 Uhr
ja er gibt mir die NAchricht aus und in der email schreibt er es auch jetzt
... sehr gut.

Hat hier jemand eigentlich schon Cross-Site-Scripting erwähnt ?
Bitte warten ..
Neuester Wissensbeitrag
Ähnliche Inhalte
Apache Server
gelöst OsTicket Email versenden klappt nicht (5)

Frage von ClepToManix zum Thema Apache Server ...

Visual Studio
gelöst Email Versenden Mit VB (2)

Frage von UltraZz zum Thema Visual Studio ...

Datenbanken
gelöst Access Report per Email versenden, hat jemand zufällig einen Code dafür(VBA) (7)

Frage von Dr.Cornwallis zum Thema Datenbanken ...

Server-Hardware
gelöst DL380 G7 Warnungen via email versenden (8)

Frage von franksig zum Thema Server-Hardware ...

Heiß diskutierte Inhalte
Windows Userverwaltung
Ausgeschiedene Mitarbeiter im Unternehmen - was tun mit den AD Konten? (33)

Frage von patz223 zum Thema Windows Userverwaltung ...

LAN, WAN, Wireless
FritzBox, zwei Server, verschiedene Netze (21)

Frage von DavidGl zum Thema LAN, WAN, Wireless ...

Viren und Trojaner
Aufgepasst: Neue Ransomware Goldeneye verbreitet sich rasant (20)

Link von Penny.Cilin zum Thema Viren und Trojaner ...

Windows Netzwerk
Windows 10 RDP geht nicht (18)

Frage von Fiasko zum Thema Windows Netzwerk ...