|
|
| |
| |
Hallo und herzlich willkommen! Tutorials.de ist eine Hilfe-Community mit dem Motto User helfen Usern. Als Gast verfügst Du über Schreibrechte in unseren Foren und Blogs. Du kannst dich aber gerne auch kostenlos registrieren und Teil unserer Gemeinschaft werden! Viel Spaß & Erfolg bei der Vermehrung deines Wissens :-)
|
|
|
 |
|
|
|
|
|
|
17.06.09, 15:56
|
#1 (permalink)
|
|
Mitglied Brokat
Registriert seit: Mar 2004
Ort: AP
Beiträge: 391
Renommee-Modifikator: 15 
|
filter_var() & mail()
Hallo,
folgendes Problem:
Ich hatte vor mit filter_var() eine oder mehrere eMails auf die Richtigkeit zu checken, nur bekomm ich halt eine Fehler meldung auf grund da mein PHP über dem 5.2.0 liegt und somit keine Funktionalität mehr aufweist
gibt es hier zu möglichkeiten diese doch noch zum einsatz zu bringen?
Beipsielsweise mit einer eigenen klasse?
Ich habe mich mit der Validät der eMail noch nie den Kopf zerbrochen da es meist nur im Kontaktformularen war und ich es nicht so für wichtig hielt
Doch jetzt habe ich ein Projekt welches sich darauf bezieht das man Bug-Reports an mich oder meiner anderen Admins senden kann und da muss gewährleistet sein das auch eine funktionale eMail und eine Gültige eMail adresse angegeben wird.
Dann hab ich noch eine Frage diesbezüglich der mail-Funktion
Kann ich ohne weiteres HTML versenden?
Beispiel:
|
HTML-Code:
|
<html>
<style type="text/css">
body {
background-color: #555;
color: #fff;
}
</style>
<body>
<h1>Bug-Report</h1>
<p>Von: {email} » Datum: {time}</p>
<p>Betreff: {betreff}</p>
<br />
<p>Nachricht:</p>
<p>{message}</p>
</body>
</html>
|
oder gibt es hierfür auch eine Art Klasse die man verwenden kann/sollte damit dies formhalbver und sauber an den Empfänger geht?
MfG
Lenox
|
17.06.09, 16:03
|
#2 (permalink)
|
|
Mitglied Schnitzel
Registriert seit: Aug 2003
Ort: Prenzlberg
Beiträge: 17.185
Renommee-Modifikator: 151
|
AW: filter_var() & mail()
Moin,
Zitat:
Zitat von Lenox
nur bekomm ich halt eine Fehler meldung auf grund da mein PHP über dem 5.2.0 liegt und somit keine Funktionalität mehr aufweist
|
Was bekommst du da für eine Fehlermeldung?
filter_var() ist ja erst ab 5.2.0 inklusive....wenn dein PHP neuer ist, sollte es da keine Fehler geben.
__________________
☭ Dieser Beitrag ist Beerware.
|
17.06.09, 16:14
|
#3 (permalink)
|
|
Mitglied Brokat
Registriert seit: Mar 2004
Ort: AP
Beiträge: 391
Renommee-Modifikator: 15 
|
AW: filter_var() & mail()
Zitat:
Zitat von Sven Mintel
Moin,
Was bekommst du da für eine Fehlermeldung?
filter_var() ist ja erst ab 5.2.0 inklusive....wenn dein PHP neuer ist, sollte es da keine Fehler geben.
|
Achso dann hab ich das wohl falsch Interprediert
Zitat:
|
Fatal error: Call to undefined function filter_var() in /usr/export/www/vhosts/funnetwork/hosting/pristontale2/contact.php on line 7
|
Hier die Zeile
|
PHP-Code:
|
|
$email = htmlspecialchars(filter_var($_REQUEST['email'], FILTER_VALIDATE_MAIL));
|
selbst ohne htmlspecialchars() bekomm ich die meldung
|
PHP-Code:
|
|
$email = filter_var($_REQUEST['email'], FILTER_VALIDATE_MAIL);
|
Aber laut php.net sollte dies so funtionieren aber keine ahnung woran es liegt -.-
|
17.06.09, 16:41
|
#4 (permalink)
|
|
Mitglied Schnitzel
Registriert seit: Aug 2003
Ort: Prenzlberg
Beiträge: 17.185
Renommee-Modifikator: 151
|
AW: filter_var() & mail()
Und du bist sicher, dass du ein PHP 5.2.0 oder höher hast?
__________________
☭ Dieser Beitrag ist Beerware.
|
17.06.09, 18:42
|
#5 (permalink)
|
|
Mitglied Brokat
Registriert seit: Mar 2004
Ort: AP
Beiträge: 391
Renommee-Modifikator: 15 
|
AW: filter_var() & mail()
Zitat:
Zitat von Sven Mintel
Und du bist sicher, dass du ein PHP 5.2.0 oder höher hast?
|
Laut Funpic über phpinfo();
Bekomm ich die Version: PHP 5.2.9 angezeigt
Eventuell liegt es am Freehoster... Local hab ich es noch nicht getestet
Aber gibt es da eine weitere möglichkeit dies konstruktiv zu überprüfen?
Damit ich zwei sachen hab bevor ich es dann endgültig an meine richtige Domain hochlade?
|
17.06.09, 18:51
|
#6 (permalink)
|
|
do ut des
Registriert seit: Nov 2001
Ort: Wuppertal
Beiträge: 4.785
Renommee-Modifikator: 54
|
AW: filter_var() & mail()
Auf Freehoster würde ich mich grundsätzlich nicht verlassen...
Wenn du wirklich sicher sein willst...
- 1. lokal entwickeln und testen
- 2. Entwicklungsumgebung... Am besten als geschlossene Subdomain deiner Hauptdomain
- 3. Live gehen
Das sind die Schritte die ich durchführe... Dabei achte ich darauf, dass beide Entwicklungsumgebungen die gleiche Konfiguration verwenden...
Was bei Windows vs. Linux schon mal ein Problem sein kann, aber bisher fast immer geklappt hat.
|
17.06.09, 18:59
|
#7 (permalink)
|
|
Mitglied Brokat
Registriert seit: Mar 2004
Ort: AP
Beiträge: 391
Renommee-Modifikator: 15 
|
AW: filter_var() & mail()
Zitat:
Zitat von Felix Jacobi
Auf Freehoster würde ich mich grundsätzlich nicht verlassen...
Wenn du wirklich sicher sein willst...
- 1. lokal entwickeln und testen
- 2. Entwicklungsumgebung... Am besten als geschlossene Subdomain deiner Hauptdomain
- 3. Live gehen
Das sind die Schritte die ich durchführe... Dabei achte ich darauf, dass beide Entwicklungsumgebungen die gleiche Konfiguration verwenden...
Was bei Windows vs. Linux schon mal ein Problem sein kann, aber bisher fast immer geklappt hat.
|
Da magst du recht haben nur hab ich zwar eine Domain nur noch kein passenden Hoster :P
Daher ist es halt etwas schwer nur Local alles zu testen und zum schluss läuft es nur zur hälfte Online und genau das will/möchte ich vermeiden
Daher wäre mir eine Alternative zum Testen lieber als alles oder zum Teil darauf vorerst zu verzichten und mir einen Hoster nur zwecks dessen mir anzulegen!
|
17.06.09, 19:26
|
#8 (permalink)
|
|
Mitglied Diamant
Registriert seit: Dec 2007
Ort: Bremen
Beiträge: 3.422
|
AW: filter_var() & mail()
Hi,
dann musst Du Dir nach Fertigstellung Deiner Seite ein Hostingpaket aussuchen, das Deinen Ansprüchen genügt. Es steht ja im Manual bei jeder Funktion dabei, ab welcher Version sie verfügbar ist nebst fetten Warnhinweisen, falls bestimmte php.ini-Einstellungen notwendig sind. Auf Hostern, wie funpic zu testen, ergibt da wirklich am wenigsten Sinn, wenn die Seite nachher ganz woanders laufen soll.
LG
__________________
Da es nötig zu werden scheint: Ich leiste hier keinen Support über PN. Stellt Rückfragen zu Euren Problemen bitte in Eurem Thread, dann können alle helfen.
|
18.06.09, 00:07
|
#9 (permalink)
|
|
Mitglied Schnitzel
Registriert seit: Aug 2003
Ort: Prenzlberg
Beiträge: 17.185
Renommee-Modifikator: 151
|
AW: filter_var() & mail()
Naja...filter_var setzt ja eine PHP-Erweiterung vorraus, und zwar lib_filter
Diese ist zwar standardmässig ab PHP5.2.0 verfügbar, aber natürlich hat man(funpic.de) die Option, diese Erweiterung zu deaktivieren(was ja funpic mit recht vielen Erweiterungen tut).
Deswegen würde ich die Entwicklung auf einem lokalen Test-Umgebung(mit PHP5.2...-Standardeinstellungen) vornehmen, und nach Fertigstellung ein äquivalentes Hosting-Paket aussuchen wie von Karin beschrieben.
__________________
☭ Dieser Beitrag ist Beerware.
|
18.06.09, 07:02
|
#10 (permalink)
|
|
Mitglied Brokat
Registriert seit: Mar 2004
Ort: AP
Beiträge: 391
Renommee-Modifikator: 15 
|
AW: filter_var() & mail()
Zitat:
Zitat von Sven Mintel
Naja...filter_var setzt ja eine PHP-Erweiterung vorraus, und zwar lib_filter
Diese ist zwar standardmässig ab PHP5.2.0 verfügbar, aber natürlich hat man(funpic.de) die Option, diese Erweiterung zu deaktivieren(was ja funpic mit recht vielen Erweiterungen tut).
Deswegen würde ich die Entwicklung auf einem lokalen Test-Umgebung(mit PHP5.2...-Standardeinstellungen) vornehmen, und nach Fertigstellung ein äquivalentes Hosting-Paket aussuchen wie von Karin beschrieben.
|
Ich hab das jetzt wie folgt lösen können
|
PHP-Code:
|
|
function checkMailValid( $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;
}
}
|
Ich glaub das hab ich von hier irgendwo her xD keine Ahnung mehr
Allerdings würde mich ds mit dem Mail versand noch sehr interessieren, gibt es da was spezifiales?
|
18.06.09, 14:37
|
#11 (permalink)
|
|
Mitglied Brokat
Registriert seit: Jan 2004
Beiträge: 267
Renommee-Modifikator: 14
|
AW: filter_var() & mail()
Hi,
ich kann dir leider zu deiner Frage nicht weiterhelfen, aber was mir gerade auffällt: Es gibt mittlerweile auch schon TLDs mit 6 Buschstaben (wie zB .museum). Kann also nicht schaden deine Regex anzupassen auf:
$dom_tldpart = '[a-zA-Z]{2,6}';
Viel Erfolg noch 
__________________
Hilfreiche Beiträge dürfen gerne über den Smiley unter jedem Post positiv bewertet werden ;) Danke...
|
18.06.09, 23:24
|
#12 (permalink)
|
|
Mitglied Schnitzel
Registriert seit: Aug 2003
Ort: Prenzlberg
Beiträge: 17.185
Renommee-Modifikator: 151
|
AW: filter_var() & mail()
Zitat:
Zitat von Lenox
Allerdings würde mich ds mit dem Mail versand noch sehr interessieren, gibt es da was spezifiales?
|
Jo, da gibt es sicher Vieles.
Empfehlen kann ich dir nichts, weil ich nichts dergleichen nutze, aber wenn du nach PHP und Mailer googelst, solltest du fündig werden, bspw. PHPMailer 
__________________
☭ Dieser Beitrag ist Beerware.
|
18.06.09, 23:41
|
#13 (permalink)
|
|
Mitglied Brokat
Registriert seit: Mar 2004
Ort: AP
Beiträge: 391
Renommee-Modifikator: 15 
|
AW: filter_var() & mail()
Zitat:
Zitat von Sven Mintel
Jo, da gibt es sicher Vieles.
Empfehlen kann ich dir nichts, weil ich nichts dergleichen nutze, aber wenn du nach PHP und Mailer googelst, solltest du fündig werden, bspw. PHPMailer 
|
Hmm..., schön und gut, aber mit meinem English lande ich da keine 100 Punkte xD
|
18.06.09, 23:46
|
#14 (permalink)
|
|
Mitglied Schnitzel
Registriert seit: Aug 2003
Ort: Prenzlberg
Beiträge: 17.185
Renommee-Modifikator: 151
|
AW: filter_var() & mail()
Zum Glück gibts ja Leute, die Tutorials dazu auch in deiutsch verfassen
http://www.tanmar.info/content/view/36/64/
__________________
☭ Dieser Beitrag ist Beerware.
|
|
| Themen-Optionen |
|
|
| Ansicht |
Linear-Darstellung
|
|
 |
|
»
Neue Tutorials
|
 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
»
Letzte News
|
 |
|
|
|
|
|
|
|
|
|
|
»
Tools
|
 |
|
|
|
|
|
»
Neue Links
|
 |
|
|
|
|
(Cinema 4D-Objekte)
|
|
(Cinema 4D-Tutorials)
|
|
(Cinema 4D-Tutorials)
|
|
(Cinema 4D-Tutorials)
|
|
(Cinema 4D-Tutorials)
|
|
»
Jobs @ tutorials.de
|
 |
|
|
|
|
|
|
|
|
|
|