Top-Themen

AppleEntwicklungHardwareInternetLinuxMicrosoftMultimediaNetzwerkeOff TopicSicherheitSonstige SystemeVirtualisierungWeiterbildungZusammenarbeit

Aktuelle Themen (A bis Z)

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, 3607 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 ..
Ähnliche Inhalte
PHP
gelöst PHP erzeugte Datei gleich als Email versenden (4)

Frage von facebraker zum Thema PHP ...

HTML
HTML-Formular: User-Eingabe in .txt-Datei speichern? (2)

Frage von Schelinho zum Thema HTML ...

Apache Server
gelöst OsTicket Email versenden klappt nicht (5)

Frage von ClepToManix zum Thema Apache Server ...

PHP
gelöst HTML Dropdownmenü auslesen und in PHP als Variable übergeben (35)

Frage von ITFlori zum Thema PHP ...

Neue Wissensbeiträge
Ubuntu

Ubuntu 17.10 steht zum Download bereit

(3)

Information von Frank zum Thema Ubuntu ...

Datenschutz

Autofahrer-Pranger - Bewertungsportal illegal

(8)

Information von BassFishFox zum Thema Datenschutz ...

Windows 10

Neues Win10 Funktionsupdate verbuggt RemoteApp

(8)

Information von thomasreischer zum Thema Windows 10 ...

Microsoft

Die neuen RSAT-Tools für Win10 1709 sind da

(2)

Information von DerWoWusste zum Thema Microsoft ...

Heiß diskutierte Inhalte
Monitoring
Netzwerk-Monitoring Software (18)

Frage von Ghost108 zum Thema Monitoring ...

Windows 10
Seekrank bei Windows 10 (17)

Frage von zauberer123 zum Thema Windows 10 ...

Windows Server
gelöst Kopiervorgang schlägt fehl, weil Datei- und Ordnername zu lang sind (14)

Frage von Schroedi zum Thema Windows Server ...

Windows 10
Windows 10 Fall Creators Update Fehler (13)

Frage von ZeroCool23 zum Thema Windows 10 ...