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
GELÖST

PHP Kontakt

Frage Entwicklung PHP

Mitglied: mc-doubleyou

mc-doubleyou (Level 2) - Jetzt verbinden

16.02.2010, aktualisiert 20.02.2010, 4379 Aufrufe, 14 Kommentare

Hallo,

habe ein kleines Problemchen scheinbar ist mein Code falsch

01.
<?php 
02.
 
03.
// get posted data into local variables 
04.
$EmailFrom = Trim(stripslashes($_POST['EmailFrom']));  
05.
$EmailTo = "xxx@gmail.com"; 
06.
$Subject = "Lockerz"; 
07.
$Body = "Neuanmeldung" 
08.
 
09.
// validation 
10.
$validationOK=true; 
11.
if (Trim($EmailFrom)=="") $validationOK=false; 
12.
if (!$validationOK) { 
13.
  print "<meta http-equiv=\"refresh\" content=\"0;URL=error.htm\">"; 
14.
  exit; 
15.
16.
 
17.
// send email  
18.
$success = mail($EmailTo, $Subject, $Body, "From: <$EmailFrom>"); 
19.
 
20.
// redirect to success page  
21.
if ($success){ 
22.
  print "<meta http-equiv=\"refresh\" content=\"0;URL=thx.html\">"; 
23.
24.
else{ 
25.
  print "<meta http-equiv=\"refresh\" content=\"0;URL=contact.html\">"; 
26.
27.
?>
bekomme diese Meldung:


Parse error: syntax error, unexpected T_VARIABLE in /data/multiserv/users/101370/projects/443860/www/test/contact.php on line 10

LG MCD
Mitglied: tmystr
16.02.2010 um 15:50 Uhr
hi,

ich kenne mich zwar nicht mit php aus..
aber wie soll das gehen wenn du bei zeile 10+11 den einen true und den anderen false gesetzt hast?

lg
Bitte warten ..
Mitglied: maretz
16.02.2010 um 15:55 Uhr
Erstmal würde ich in Zeile 10 das ="true" schreiben. Und dann würd ich das ganze umbauen das
true=1
false=0
ist -> und mit Vergleichen aus Zahlen arbeiten. Hintergrund: Es ist immer schneller wenn man 2 Zahlen vergleicht als wenn ich 2 Worte vergleiche. Das hat was damit zu tun das man bei 2 Zahlen genau EINEN Cpu-Befehl benötigt (cjne - compare and jump not equal) bzw. das mit nem einfachen Subtrahieren erledigen kann (if 2-2=0). Bei Worten ist das etwas komplexer -> Du musst das Wort erst in nen Wert umrechnen und dann diesen Wert vergleichen...
Bitte warten ..
Mitglied: ITLocke
16.02.2010 um 16:08 Uhr
Hallo

der Fehler liegt nicht in Zeile 10 sondern in Zeile 07!

Dort wurde nämlich das abschliessende Semikolon vergessen.

Gruß Locke
Bitte warten ..
Mitglied: mc-doubleyou
16.02.2010 um 16:24 Uhr
Oha, stimmt ^^ aber durch gehts mir trotzdem nicht hab offenbar irgendwas gemacht damit der success nicht passt
Bitte warten ..
Mitglied: ITLocke
16.02.2010 um 16:32 Uhr
Probier mal

$success = mail($EmailTo, $Subject, $Body, "From: <$EmailFrom>");

durch

$success = mail($EmailTo, $Subject, $Body, "From: <".$EmailFrom.">");
(--> ".." um $EmailFrom )
zu ersetzen. Manche Funktionen kommen mit dieser Art Variablen einzufügen nicht klar.
Bitte warten ..
Mitglied: mc-doubleyou
16.02.2010 um 16:47 Uhr
Der Fehler war so billig wie einfach - musste einen smtp eintragen bei dem Webhoster ... thx an alle
Bitte warten ..
Mitglied: dog
16.02.2010 um 17:05 Uhr
Wenn du fertig bist sag uns doch auch noch wo wir dein Script finden können, damit wir ein bisschen Spam verteilen können.

01.
$_POST['EmailFrom'] = "test@example.com>\r\nTo: someone@example.com\r\nTo: me@exmaple.com\r\n\r\nMessage Body";
Guten Morgen: http://www.damonkohler.com/2008/12/email-injection.html
Bitte warten ..
Mitglied: mc-doubleyou
16.02.2010 um 17:13 Uhr
Und was it wenn ich ein Ergebnis in der Art will?

01.
$Body = "Neuanmeldung von: ( $_POST[ "EmailFrom" ] );
wie muss dann der wirkliche Code aussehen?

LG
Bitte warten ..
Mitglied: maretz
16.02.2010 um 22:58 Uhr
Och - das war jetzt gemein... Du gönnst aber auch gar keinen Spass ;) Und der Mailserver muss sich nur wegen dir jetzt langweilen!
Bitte warten ..
Mitglied: mc-doubleyou
16.02.2010 um 23:02 Uhr
wie meinst du das dog? ... kapier echt grad nicht was mir diese Zeile bringen soll
Bitte warten ..
Mitglied: maretz
17.02.2010 um 07:38 Uhr
Die Zeile bringt das man einfach noch viele andere Empfänger mit vielen anderen Texten über dein Script erreichen kann... So schicke ich DIR zwar dann nen Kontakt-Formular, schicke aber an 10.000 andere Leute (ok, so lang wird der String nich gehen aber das ist nur ne frage wie ich das automatisiere) ne nette Werbung über Viagra, Software oder was sonst grad so aktuell ist. Und das ganze geht schön über deinen Server - d.h. die Leute stehen dann bei DIR auf der Matte und wollen dir was auf die Finger hauen ...
Bitte warten ..
Mitglied: mc-doubleyou
17.02.2010 um 07:53 Uhr
und warum genau sollte ich die dann einbauen wollen? *grübel*
Bitte warten ..
Mitglied: dog
17.02.2010 um 07:56 Uhr
Wir stehen aber echt grade ein bisschen auf dem Schlauch oder?

Die Zeile war ein Beispiel für einen möglichen POST-Input.
Lies dir doch bitte mal den Link durch.
Bitte warten ..
Mitglied: mc-doubleyou
17.02.2010 um 08:21 Uhr
ok jetzt hab ichs, ja stand am schlauch - danke

muss also sowas in der art nachrüsten

01.
SecFilterSelective ARGS_VALUES "\n[[:space:]]*(to|bcc|cc)[[:space:]]*:.*@"
sobald man aber mein Script missbräuchlich verwendet sehe ich das da ich genau diese eine Zeile in der Mail stehen habe, mir geht es schließlich nur um die E-Mail des Absenders

Am besten wäre aber dennoch eine generelle vermeidung von cc: und bcc: also if : in EmailFrom Error

Keine Ahnung aber wie man das bwerkstelligen kann
Bitte warten ..
Ähnliche Inhalte
C und C++
C-sharp ZIP-Ordner an PHP senden (9)

Frage von Yanmai zum Thema C und C ...

Linux
gelöst Php redis an Socket binden? (2)

Frage von FA-jka zum Thema Linux ...

Exchange Server
Mehrere Abteilungen in GAL für einen Kontakt anlegen

Frage von pieschel zum Thema Exchange Server ...

Neue Wissensbeiträge
Administrator.de Feedback

Umgangsformen auf der Seite

Information von Frank zum Thema Administrator.de Feedback ...

Windows 10

Windows 8.x oder 10 Lizenz-Key aus dem ROM auslesen mit Linux

(6)

Tipp von Lochkartenstanzer zum Thema Windows 10 ...

Heiß diskutierte Inhalte
Windows 10
gelöst Windows 10 Home "Netzlaufwerk nicht bereit" (19)

Frage von Oggy01 zum Thema Windows 10 ...

Exchange Server
gelöst RU 17 Exchange 2010 . Erfahrungen? (10)

Frage von keine-ahnung zum Thema Exchange Server ...

Windows Server
Festplatten Ruhezustand Windows Server 2016 (9)

Frage von ahaeuser zum Thema Windows Server ...

Datenbanken
gelöst MySQL Zeiterfassungs-Problematik (wer ist eingecheckt) (9)

Frage von NativeMode zum Thema Datenbanken ...