SELFPHP: Version 5.8.2 Befehlsreferenz - Tutorial – Kochbuch – Forum für PHP Einsteiger und professionelle Entwickler

SELFPHP


Professional CronJob-Service

Suche



CronJob-Service    
bei SELFPHP mit ...



 + minütlichen Aufrufen
 + eigenem Crontab Eintrag
 + unbegrenzten CronJobs
 + Statistiken
 + Beispielaufrufen
 + Control-Bereich

Führen Sie mit den CronJobs von SELFPHP zeitgesteuert Programme auf Ihrem Server aus. Weitere Infos



:: Buchempfehlung ::

TYPO3 Kochbuch

TYPO3 Kochbuch zur Buchempfehlung
 

:: Anbieterverzeichnis ::

Globale Branchen

Informieren Sie sich über ausgewählte Unternehmen im Anbieterverzeichnis von SELFPHP  

 

:: Newsletter ::

Abonnieren Sie hier den kostenlosen SELFPHP Newsletter!

Vorname: 
Name:
E-Mail:
 
 

Zurück   PHP Forum > SELFPHP > Support

Support Hier ist Platz für Vorschläge, (konstruktive) Kritik, Anregungen, Bugs und Lob rund um SELFPHP

Antwort
 
Themen-Optionen Ansicht
  #11  
Alt 01.12.2006, 21:52:05
Benutzerbild von Madokan
Madokan Madokan ist offline
Anfänger
 
Registriert seit: Mar 2005
Ort: Berlin/Germany
Beiträge: 59
AW: Fehler im Praxisbuch ?

@Damir: Yup festnageln macht auch keine Freude. ;)

Liebe Grüsse,
Matze K.
__________________
[Atomicscript - PHP/MySQL]
http://www.atomicscript.de
[PHP 5 & MySQL 5 Bücher - Bestellen bei Amazon]
PHP 5 / MySQL 5 - Studienausgabe
PHP5 / MySQL 5 - Master Edition
PHP 5 - Studienausgabe (Enseleit/Kannengiesser)
Mit Zitat antworten
  #12  
Alt 05.12.2006, 16:50:39
RoSt RoSt ist offline
Anfänger
 
Registriert seit: Jul 2006
Beiträge: 69
AW: Fehler im Praxisbuch ?

Zitat:
Zitat von Madokan Beitrag anzeigen
@RoSt: Ich versuch es nun mit einem Dateianhang - nicht das im Forum Zeichen geschluckt wurden. ;)
Nein, Zeichen wurden nicht geschluckt. In der Datei steht genau die gleiche Zeile wie im Post:
PHP-Code:
if(ereg("^([a-zA-Z0-9-]+\.)+([a-zA-Z]{2,4})$",$g_fhome))  { 
Und deshalb hier nochmal meine bereits gestellte Frage:
Kann der gepostete ereg Ausdruck bei einem String der mit "http://" beginnt WAHR liefern?
Wenn ja, an welchem Parameter könnte ich das denn ablesen???
Wenn nein, wie müssten die Parameter aussehen, damit er ein wahr liefert.

Vielen Dank. Vorallen an Madokan, der sich sehr müht, aber ich habe den Eindruck wir posten aneinander vorbei.
Mit Zitat antworten
  #13  
Alt 05.12.2006, 18:53:15
Benutzerbild von Madokan
Madokan Madokan ist offline
Anfänger
 
Registriert seit: Mar 2005
Ort: Berlin/Germany
Beiträge: 59
AW: Fehler im Praxisbuch ?

@RoSt: Ich verstehe es aus folgendem Grund nicht der Reguläre Ausdruck hat keine Probleme mit http:// - da er sich nicht um http:// kümmert!

Ich habe meinen Testdurchlauf, wie folgt begonnen:

1. buch.php im Browser geöffnet.
2. Auf den Hyperlink Beitrag Schreiben geklickt.
3. In die Eingabemaske die Felder ausgefüllt und beim Home-Textfeld folgenden Zeile eingetragen: http://www.domain.de
4. Eintrag wurde im Gästebuch hinterlegt und voila der Hyperlink ist auch vorhanden!

----

Nun habe ich anschließend das ganze auch ohne http:// ausgetestet und auch hier ein einwandfreies Ergebnis erhalten.

1. buch.php im Browser geöffnet.
2. Auf den Hyperlink Beitrag Schreiben geklickt.
3. In die Eingabemaske die Felder ausgefüllt und beim Home-Textfeld folgenden Zeile eingetragen: www.domain.de
4. Eintrag wurde im Gästebuch hinterlegt und voila der Hyperlink ist auch vorhanden! Das fehlende http:// wurde durch das Skript hinzugefügt bzw. hier ging es durch den regulären Ausdruck!


Abgesehen davon ist der Reguläre Ausdruck nur für folgendes zuständig:
Zitat:
//Es wurde auch eine Homepageadresse angegeben - entsprechende Formatierung vornehmen
Die Abfrage sollte somit nur für das hinzufügen eines möglicherweise fehlenden - http:// und sonst nichts!

Die Angabe http:// für sich gesehen erfüllt den vorliegenden regulären Ausdruck nicht! Daher geht es auch ohne Umwege in den else Abschnitt!

Siehe:
PHP-Code:
//Es wurde auch eine Homepageadresse angegeben - entsprechende Formatierung vornehmen
if(ereg("^([a-zA-Z0-9-]+\.)+([a-zA-Z]{2,4})$",$g_fhome)){
    
//http:// fehlt in der Angabe der Adresse - hier ergänzen
    
if(!ereg("^http:////",$g_fhome))
    {
    
$g_fhome="http://" $g_fhome;
    }
$g_fhome="<a href=" $g_fhome " target=_blank>Website</a>";

else 
{
$g_fhome="<a href=" $g_fhome " target=_blank>Website</a>";
}
//Ende - Prüfung 
Hinweis: Eine Validation der Homepage-URL habe ich nicht durchgeführt, da diese Angabe nicht zu den wesentlichen Feldern gehört. Daher gibt es auch nur für die E-Mail Angabe eine exakte Überprüfung und eine entsprechende Fehlermeldung!

Was jedoch das Filtern von http:// für sich gesehen betrifft sollte es kein Problem darstellen die Abfrage anzupassen. :)

Solltest du ansonsten mit regulären Ausdrücken experimentieren wollen empfehle ich dir folgende Tools:
- Regex_Coach0.9.0
- Expresso 2.1

Hiermit lässt sich der Ausdruck übrigens auch Testen!

Liebe Grüsse,
Matze K.
__________________
[Atomicscript - PHP/MySQL]
http://www.atomicscript.de
[PHP 5 & MySQL 5 Bücher - Bestellen bei Amazon]
PHP 5 / MySQL 5 - Studienausgabe
PHP5 / MySQL 5 - Master Edition
PHP 5 - Studienausgabe (Enseleit/Kannengiesser)

Geändert von Madokan (05.12.2006 um 18:54:46 Uhr)
Mit Zitat antworten
  #14  
Alt 05.12.2006, 19:08:44
Benutzerbild von Madokan
Madokan Madokan ist offline
Anfänger
 
Registriert seit: Mar 2005
Ort: Berlin/Germany
Beiträge: 59
AW: Fehler im Praxisbuch ?

Regulärer Ausdruck:
^([a-zA-Z0-9-]+\.)+([a-zA-Z]{2,4})$

Erläuterung:
^ -> Anfang der Zeichenkette
([a-zA-Z0-9-]+\.) -> Zugelassene Zeichen a-zA-Z0-9 und - (muss mindestens einmal, kann aber auch wiederholt vorkommen - Beispiel: domain)
([a-zA-Z]{2,4}) -> Zugelassen Zeichen a-zA-Z (Zeichenanzahl zwischen 2 und 4 - Beispiel: de oder info)
$ -> Ende der Zeichenkette

Vielleicht kann dies eine kleine Hilfestellung sein!

Liebe Grüße,
Matze K.
__________________
[Atomicscript - PHP/MySQL]
http://www.atomicscript.de
[PHP 5 & MySQL 5 Bücher - Bestellen bei Amazon]
PHP 5 / MySQL 5 - Studienausgabe
PHP5 / MySQL 5 - Master Edition
PHP 5 - Studienausgabe (Enseleit/Kannengiesser)

Geändert von Madokan (05.12.2006 um 19:11:36 Uhr)
Mit Zitat antworten
  #15  
Alt 06.12.2006, 09:53:38
RoSt RoSt ist offline
Anfänger
 
Registriert seit: Jul 2006
Beiträge: 69
AW: Fehler im Praxisbuch ?

Vielen Dank, jetzt ist einiges klarer.
Wenn aber keine Validierung der URL erfolgen soll, hätte dann ja auch folgendes gelangt:
PHP-Code:
//Es wurde auch eine Homepageadresse angegeben - entsprechende Formatierung vornehmen 
//http:// fehlt in der Angabe der Adresse - hier ergänzen 
if(!ereg("^http:////",$g_fhome)) 
    { 
    
$g_fhome="http://" $g_fhome
    } 
$g_fhome="<a href=" $g_fhome " target=_blank>Website</a>"
Ich war davon ausgegangen, dass die URL systematisch auf Gültigkeit geprüft werden soll.

Hier ist übrigens ein schönes kleines Tutorial für Unwissende wie mich in Punkto reguläre Ausdrücke.
Mit Zitat antworten
  #16  
Alt 06.12.2006, 13:19:53
Benutzerbild von Madokan
Madokan Madokan ist offline
Anfänger
 
Registriert seit: Mar 2005
Ort: Berlin/Germany
Beiträge: 59
AW: Fehler im Praxisbuch ?

@Rost: Yup oder man schaut im Praxisbuch:
http://www.selfphp.de/praxisbuch/pra...h.php?group=22

;)

Zu:
Zitat:
Wenn aber keine Validierung der URL erfolgen soll, hätte dann ja auch folgendes gelangt:
Das ist so nicht richtig - es erfolgt eine Validierung, aber nur bei Schreibweisen ohne http://!
(Beispiel: www.domain.de - korrekt / www.. - nicht korrekt)

Liebe Grüße,
Matze K.
__________________
[Atomicscript - PHP/MySQL]
http://www.atomicscript.de
[PHP 5 & MySQL 5 Bücher - Bestellen bei Amazon]
PHP 5 / MySQL 5 - Studienausgabe
PHP5 / MySQL 5 - Master Edition
PHP 5 - Studienausgabe (Enseleit/Kannengiesser)

Geändert von Madokan (06.12.2006 um 13:24:17 Uhr)
Mit Zitat antworten
  #17  
Alt 06.12.2006, 13:55:13
RoSt RoSt ist offline
Anfänger
 
Registriert seit: Jul 2006
Beiträge: 69
AW: Fehler im Praxisbuch ?

Ach so. Wie wäre es dann damit oder so ähnlich
PHP-Code:
if(!ereg("^http:////",strtolower($g_fhome))){ 
    if(
ereg("^([a-zA-Z0-9-]+\.)+([a-zA-Z]{2,4})$",$g_fhome)){ 
        
$g_fhome="<a href=http://" $g_fhome " target=_blank>Website</a>"
    } else {
        
$error_msg.="<br>Fehlerhafte URL!<br>";
    }
} else {
    if(
ereg("^http:////([a-z0-9-]+\.)+([a-z]{2,4})$",strtolower($g_fhome))){ 
        
$g_fhome="<a href=" $g_fhome " target=_blank>Website</a>"
    } else {
        
$error_msg.="<br>Fehlerhafte URL!<br>";
    }

...es geht bestimmt noch schöner...

Geändert von RoSt (06.12.2006 um 14:39:52 Uhr)
Mit Zitat antworten
  #18  
Alt 06.12.2006, 17:53:28
Benutzerbild von Madokan
Madokan Madokan ist offline
Anfänger
 
Registriert seit: Mar 2005
Ort: Berlin/Germany
Beiträge: 59
AW: Fehler im Praxisbuch ?

@RoSt: Wie ist das mit verschlimm-besserungen. ;)
Ich denke, wenn es für dich so hinhaut kannst du es so Einsätzen!

Leider lässt deine Anpassung nun keine der folgenden schreibweisen mehr durch:
http://www.domain.de
http://www.test.de
etc.

Meinst damit bist du wirklich gut beraten?

Liebe Grüsse,
Matze K.
__________________
[Atomicscript - PHP/MySQL]
http://www.atomicscript.de
[PHP 5 & MySQL 5 Bücher - Bestellen bei Amazon]
PHP 5 / MySQL 5 - Studienausgabe
PHP5 / MySQL 5 - Master Edition
PHP 5 - Studienausgabe (Enseleit/Kannengiesser)

Geändert von Madokan (06.12.2006 um 18:03:23 Uhr)
Mit Zitat antworten
  #19  
Alt 07.12.2006, 10:56:36
RoSt RoSt ist offline
Anfänger
 
Registriert seit: Jul 2006
Beiträge: 69
AW: Fehler im Praxisbuch ?

Zitat:
Zitat von Madokan Beitrag anzeigen
Leider lässt deine Anpassung nun keine der folgenden schreibweisen mehr durch:
http://www.domain.de
http://www.test.de
etc.

Meinst damit bist du wirklich gut beraten?
Nein, natürlich nicht. Ich hatte gestern leider keine Gelegenheit zu testen.
Für mich sah/sieht es nicht nur logisch aus sondern auch als würde es funktionieren.
Ich tappe völlig im Dunkeln.
Ich hätte folgendes erwartet:
"^(http:////) <== validiert das http:// am Anfang (btw. müssten die "/" nicht mit "\" escaped werden ?)
([a-z0-9-]+\.)+ <== danach können Buchstaben etc. kommen im Block mit einem Punkt und das min 1x oder öfter.
([a-z]{2,4})$" <== am ende müssen 2-4 Buchstaben stehen (Top-Level-Domain)
Und warum macht er's nicht?

Geändert von RoSt (07.12.2006 um 11:04:25 Uhr)
Mit Zitat antworten
  #20  
Alt 08.12.2006, 14:32:49
Benutzerbild von Madokan
Madokan Madokan ist offline
Anfänger
 
Registriert seit: Mar 2005
Ort: Berlin/Germany
Beiträge: 59
AW: Fehler im Praxisbuch ?

@RoSt:
Zitat:
...sondern auch als würde es funktionieren.
Dem ist nicht so, wie du siehst!

Zitat:
Ich tappe völlig im Dunkeln.
Du solltest nochmal deine Abfragen und die reg-Ausdrücke prüfen und dir die Frage stellen, was genau die reg-Ausdrücke bewirken sollen!

Liebe Grüße,
Matze K.
__________________
[Atomicscript - PHP/MySQL]
http://www.atomicscript.de
[PHP 5 & MySQL 5 Bücher - Bestellen bei Amazon]
PHP 5 / MySQL 5 - Studienausgabe
PHP5 / MySQL 5 - Master Edition
PHP 5 - Studienausgabe (Enseleit/Kannengiesser)
Mit Zitat antworten
Antwort


Aktive Benutzer in diesem Thema: 1 (Registrierte Benutzer: 0, Gäste: 1)
 
Themen-Optionen
Ansicht

Forumregeln
Es ist Ihnen nicht erlaubt, neue Themen zu verfassen.
Es ist Ihnen nicht erlaubt, auf Beiträge zu antworten.
Es ist Ihnen nicht erlaubt, Anhänge hochzuladen.
Es ist Ihnen nicht erlaubt, Ihre Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind aus.
[IMG] Code ist aus.
HTML-Code ist aus.

Gehe zu

Ähnliche Themen
Thema Autor Forum Antworten Letzter Beitrag
Fehler im Uploadscript diehappy PHP Grundlagen 6 14.07.2006 16:06:49
Abfrage Fehler FloRos PHP Grundlagen 2 22.11.2003 18:30:51
mysql fehler, mutlisprache, zu nutze machen!? flobee MySQL/MySQLi 3 01.11.2003 20:34:49
Fehler im Script? |Coding PHP für Fortgeschrittene und Experten 17 10.09.2002 08:42:03
Fehler: Bad file descriptor (9) Troniac PHP für Fortgeschrittene und Experten 0 28.08.2002 02:12:09


Alle Zeitangaben in WEZ +2. Es ist jetzt 04:30:22 Uhr.


Powered by vBulletin® Version 3.8.3 (Deutsch)
Copyright ©2000 - 2021, Jelsoft Enterprises Ltd.


© 2001-2021 E-Mail SELFPHP OHG, info@selfphp.deImpressumKontakt