php.de

Zurück   php.de > Webentwicklung > PHP Einsteiger > PHP Tipps 2008

 
 
LinkBack Themen-Optionen Thema bewerten
Alt 20.05.2008, 18:42  
Erfahrener Benutzer
 
Registriert seit: 14.05.2008
Beiträge: 183
netti befindet sich auf einem aufstrebenden Ast
Standard [Erledigt] file_exists() und groß und kleinschreibung

Hey, ich weiß, ich hab gerade noch ne Anfrage laufen, allerdings jetzt noch mit nem ganz anderen Script noch ein anderes Problem. Ich hoffe man hängt mich nun nicht an den Forenpranger *schauder*

Im Prinzip suche ich nur ne Funktion. Ich hab vor Ewigkeiten mal ein Script geschrieben, mit dem man Berichte schreiben kann und dass dazu Ordner in einem Dateisystem erstellt, in das später Bilder hineingeladen werden können. Natürlich soll dabei jeder Ordner nur genau einmal erstellt werden können, dem Bericht entsprechend. Leider hab ich damals jegliche eingaben zugelassen, sodass es mir jetzt schwer fällt zu überprüfen, ob der Ordner bereits existiert.

D.h., der ORdner heißt meinetwegen FaschFei (FaschingFeier), ich möchte das nun überprüfen mittels file_exists('faschfei'), so wird mir php ein false geben, weil die groß und kleinschreibung nciht übereinstimmt. Im Endeffekt, bekomme ich so aber auf nem windowsserver ernsthafte probleme mit redundanzen. Hat da wer ne idee wie ich akzeptable ergebnisse bekomme?

danke!
netti
netti ist offline  
Sponsor Mitteilung
PHP Code Flüsterer

Registriert seit: 21.08.2005
Beiträge: 4682
PHP-Kenntnisse:
Fortgeschritten

Alt 20.05.2008, 18:49  
Erfahrener Benutzer
 
Benutzerbild von David
 
Registriert seit: 05.09.2007
Beiträge: 5.044
David wird schon bald berühmt werden
Standard

Geht es dabei um eine allgemeingültige Lösung oder willst Du eine bestimmte Installation des Skript testen/ändern?
David ist offline  
Alt 20.05.2008, 18:55  
Erfahrener Benutzer
 
Registriert seit: 14.05.2008
Beiträge: 183
netti befindet sich auf einem aufstrebenden Ast
Standard

Ich versteh deine Frage nciht so richtig, aber ich versuchs mal zu erklären.
Also, generell suche ich eine allgemeingültige Lösung, sodass bei der Überprüfung der Datei nciht auf Groß und kleinschreibung geachtet wird, sondern generell alle ordner mit dem string beachtet werden und auf file_exists() anschlagen.

Sollte es tatsächlich keine Möglichkeit geben, muss ich mir wohl ein script schreiben, dass alle ordner und ordnerverweise in der datenbank in kleinschreibung umwandelt =/

Geändert von netti (20.05.2008 um 19:43 Uhr).
netti ist offline  
Alt 20.05.2008, 19:34  
Supermoderator HD
 
Benutzerbild von Manko10
 
Registriert seit: 16.03.2008
Beiträge: 8.709
PHP-Kenntnisse:
Fortgeschritten
Manko10 hat eine strahlende ZukunftManko10 hat eine strahlende ZukunftManko10 hat eine strahlende ZukunftManko10 hat eine strahlende ZukunftManko10 hat eine strahlende ZukunftManko10 hat eine strahlende ZukunftManko10 hat eine strahlende ZukunftManko10 hat eine strahlende ZukunftManko10 hat eine strahlende ZukunftManko10 hat eine strahlende ZukunftManko10 hat eine strahlende Zukunft
Standard

Du könntest alternativ zuerst den Ordnerinhalt in ein Array lesen und die einzelnen Array-Indizes case-insensitive mit der Vorlage vergleichen.
Manko10 ist offline  
Alt 20.05.2008, 19:48  
Erfahrener Benutzer
 
Registriert seit: 14.05.2008
Beiträge: 183
netti befindet sich auf einem aufstrebenden Ast
Standard

Zitat:
Zitat von Manko10 Beitrag anzeigen
Du könntest alternativ zuerst den Ordnerinhalt in ein Array lesen und die einzelnen Array-Indizes case-insensitive mit der Vorlage vergleichen.
Du meinst ich vergleiche am Besten den vom Nutzer eingegebenen Ordnernamen namen mit einem array in das ich vorher den existierenden Ordnernamen eingelesen habe?

Wenn ja hab ich aber das Problem, dass ich gar nciht weiß, ob so ein Ordner existiert. Das Problem ist ja, dass ich nur die Ordnereingaben vom Benutzer habe, aber nciht weiß, wie der möglicherweise existierende Ordner im Dateisystem geschrieben ist.
netti ist offline  
Alt 20.05.2008, 21:36  
Erfahrener Benutzer
 
Benutzerbild von David
 
Registriert seit: 05.09.2007
Beiträge: 5.044
David wird schon bald berühmt werden
Standard

Du kannst doch sowohl die Benutzereingabe als auch die ausgelesenen Verzeichnisnamen in Kleinbuchstaben umwandeln und dann vergleichen.
David ist offline  
Alt 20.05.2008, 23:16  
Erfahrener Benutzer
 
Benutzerbild von Hu5eL
 
Registriert seit: 26.02.2008
Beiträge: 342
Hu5eL befindet sich auf einem aufstrebenden Ast
Hu5eL eine Nachricht über ICQ schicken
Standard

Zitat:
Zitat von David Beitrag anzeigen
Du kannst doch sowohl die Benutzereingabe als auch die ausgelesenen Verzeichnisnamen in Kleinbuchstaben umwandeln und dann vergleichen.
beste idee hätte ich genauso gemacht. und im neuen hätte ich nur 0-9,a-b,- als zeichen erlaubt... dann gibts die probs net
Hu5eL ist offline  
Alt 21.05.2008, 01:14  
Erfahrener Benutzer
 
Registriert seit: 14.05.2008
Beiträge: 183
netti befindet sich auf einem aufstrebenden Ast
Standard

ja, schon. das problem ist doch bloß, dass ich nicht weiß wie der ordner heißt... Also der nutzer geibt nen ordnername an und der wird von dem formular viel file_exists($ordner) getestet. Davon weiß ich aber doch noch nciht, ob da nicht vielleicht ein Ordner ist mit anderen Formatierungen. Bitte erklärts mir nochmal.

Alternative wäre, die EIngabe des nutzers mit allen Eingaben in der db zu vergleichen... aber das wäre ne menge rechenaufwand.
netti ist offline  
Alt 21.05.2008, 08:27  
Moderator
 
Benutzerbild von cycap
 
Registriert seit: 13.02.2008
Beiträge: 6.816
PHP-Kenntnisse:
Fortgeschritten
cycap ist einfach richtig nettcycap ist einfach richtig nettcycap ist einfach richtig nettcycap ist einfach richtig nettcycap ist einfach richtig nett
Standard

Wie wärs damit?

PHP-Code:
function file_exists_case($strUrl)
{
    
$realPath str_replace('\\','/',realpath($strUrl));
   
    if(
file_exists($strUrl) && $realPath == $strUrl)
    {
        return 
1;    //File exists, with correct case
    
}
    elseif(
file_exists($realPath))
    {
        return 
2;    //File exists, but wrong case
    
}
    else
    {
        return 
0;    //File does not exist
    
}

cycap ist offline  
Alt 21.05.2008, 09:48  
Erfahrener Benutzer
 
Registriert seit: 07.04.2008
Beiträge: 100
PHP-Kenntnisse:
Anfänger
reliC ist zur Zeit noch ein unbeschriebenes Blatt
Standard

du ließt einfach erst einmal alle ordner aus deiner datenstruktur die ja schon vorhanden ist ein wie oben schon erwähnt in ein array oder dergleichen, dann kannste einfach auch wie schon obe erwähnt dein array durchlaufen und alle ordnernamen auf kleinschreibung umändern mit dieser funktion PHP: strtolower - Manual und dann durchläufst du nochmal das array und schaust eben ob der eingegebene ordner schon vorhanden ist falls ja muss er einen anderen namen auswählen falls nein erstellt er einen neuen

so hab ich das verstanden korrigiert mich wenn ich mich irre *G*

greetz
reliC ist offline  
 


Themen-Optionen
Thema bewerten
Thema bewerten:

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

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are an
Gehe zu

Ähnliche Themen
Thema Autor Forum Antworten Letzter Beitrag
Groß- und Kleinschreibung in HTML Textfeldern kampfnickel PHP Tipps 2007 19 05.03.2007 10:27
Gross- und kleinSchreibung Off-Topic Diskussionen 67 07.03.2005 18:45
[Erledigt] ereg_replace(); - groß und kleinschreibung? PHP-Fortgeschrittene 5 07.02.2005 14:40
Abfrage Gross und Kleinschreibung! PHP Tipps 2004-2 7 05.12.2004 17:14

Besucher kamen über folgende Suchanfragen bei Google auf diese Seite
file_exists ordner, php file_exists groß kleinschreibung, http://www.php.de/php-tipps-2008/1301-erledigt-file_exists-und-grossy-und-kleinschreibung.html, file_exists groß kleinschreibung, php file_exists case sensitive, file_exists_case php, file exists groß kleinschreibung, file exists groß kleinschrift, file_exists auch für ordner, php datei und ordnernamen in klein, php file_exists gross kleinschreibung, php file_exists() kleinschreibung, php ordner groß und kleinschreibung, file_exists unterordner, file_exists ordern?, file_exsist im anderen verzeichnis, fileexists großschreibung, groß und klein schreiben prüfen, alternativen gross oder klein, php file exists groß kleinschreibung

Alle Zeitangaben in WEZ +2. Es ist jetzt 16:01 Uhr.




Powered by vBulletin® Version 3.7.2 (Deutsch)
Copyright ©2000 - 2012, Jelsoft Enterprises Ltd.
Search Engine Optimization by vBSEO 3.2.0
Aprilia-Forum, Aquaristik-Forum, Liebeskummer-Forum, Zierfisch-Forum, Geizkragen-Forum