- Ad -
php-resource



Zurück   PHP-Scripte PHP-Tutorials PHP-Jobs und vieles mehr > Entwicklung > PHP Developer Forum
 

Login

 
eingeloggt bleiben
star Jetzt registrieren   star Passwort vergessen
 

 

 

 


PHP Developer Forum Hier habt ihr die Möglichkeit, eure Skriptprobleme mit anderen Anwendern zu diskutieren. Seid so fair und beantwortet auch Fragen von anderen Anwendern. Dieses Forum ist sowohl für ANFÄNGER als auch für PHP-Profis! Post your PHP questions here!

Antwort
 
LinkBack Themen-Optionen Thema bewerten
  #1 (permalink)  
Alt 27-05-2009, 14:07
jikorandis
 Registrierter Benutzer
Links : Onlinestatus : jikorandis ist offline
Registriert seit: Jul 2005
Beiträge: 5
jikorandis ist zur Zeit noch ein unbeschriebenes Blatt
jikorandis eine Nachricht über ICQ schicken
Standard Dateiprüfung

Hallo erstmal an alle

ich schreibe derzeit meine ersten Zeilen in php seit einigen Jahren Pause und muss sagen ich bin schon wieder total vor ner Wand
Vielleicht habe ich auch einfach nur ein Brett vorm Kopf :/

Naja jedenfalls erstmal das Problem womit ich mich hier rumschlage :

Ich lasse php stylesheet-Anweisungen berechnen (width,height,usw.) und will diese dann in ein Stylesheet für den jeweiligen Nutzer einfliessen lassen.

Damit natürlich jeder sein eigenes Stylesheet erhält lasse ich bei jedem Aufruf ein neues Stylesheet erstellen.

Günstig wäre nun eine Art Zähler der mir überprüft ob eine CSS-Datei schon vorhanden ist oder ob man sie anlegen kann.

Beispiel eines Ablaufs :

-> Abfrage : ist temp_01.css vorhanden ?

Wenn ja dann soll nach temp_02.css gefragt werden....
Wenn nicht soll dieses temp_01.css angelegt werden....

Aber ich steh grad völlig auf dem Schlauch welche Schleife ich nun verwenden muss für diese Geschichte -.-

Also ich weiss das ich mit file_exists(temp_01.css); abfrage ob eine Datei exisitiert.

Also von der Grundidee sowas wie das hier :

$prüfdatei = "temp_0.css";
if(file_exists($prüfdatei)) {
copy("bla.css","temp_1.css");
}

Nur soll ja die Datei die gesucht wird jedesmal um 1 erhöht werden also brauche ich eine Schleife die nicht nur einmal durchlaufen wird. Aber ich steh grad voll auf dem Schlauch kann das sein ? -.- do-while oder while seh ich grad irgendwie als unpassend an oder bin ich nur zu deppert ?
Mit Zitat antworten
  #2 (permalink)  
Alt 27-05-2009, 14:17
Wyveres
 Registrierter Benutzer
Links : Onlinestatus : Wyveres ist offline
Registriert seit: Dec 2006
Ort: Rügen
Beiträge: 763
Blog-Einträge: 2
Wyveres ist zur Zeit noch ein unbeschriebenes Blatt
Wyveres eine Nachricht über ICQ schicken
Standard

Verzeichnis auslesen alle vorandenen Dateien die mit .css enden counten und dann einfach über eine

for schleife wandern lassen.
__________________
Bitte Beachten.
Foren-Regeln
Danke
Mit Zitat antworten
  #3 (permalink)  
Alt 27-05-2009, 14:20
Kropff
  Administrator
Links : Onlinestatus : Kropff ist offline
Registriert seit: Mar 2002
Ort: Köln
Beiträge: 11.308
Kropff befindet sich auf einem aufstrebenden Ast
Standard

scheint imho ein wenig overdressed zu sein. warum nicht einfach die id des users aus der db ziehen und die für die css-datei verwenden? ist eine abfrage und man braucht keine schleife.

peter
__________________
Nukular, das Wort ist N-u-k-u-l-a-r (Homer Simpson)
Meine Seite
Mit Zitat antworten
  #4 (permalink)  
Alt 27-05-2009, 14:24
bbrueck
 Registrierter Benutzer
Links : Onlinestatus : bbrueck ist offline
Registriert seit: May 2009
Beiträge: 9
bbrueck befindet sich auf einem aufstrebenden Ast
Standard

PHP-Code:
$angelegt 0;
$i 0;
while (
$angelegt == 0) {
    
$pruefdatei "temp_".$i.".css";
    if(!
file_exists($pruefdatei)) {
        
copy("bla.css",$pruefdatei);
        
$angelegt 1;
    }
    
$i++;

ich hoffe ich habe dein Problem richtig verstanden. Falls ja, dann sollte der Code da oben genau das tun was du möchtest.

Der Code tut:
Er zählt die Dateien temp_ .css ab temp_0.css hoch. Wenn die Datei temp_X.css noch nicht exisitiert, dann legt er sie an mit dem Inhalt der Datei bla.css und setzt $angelegt den Wert 1.
Das Ganze wird so lange gemacht wie $angelegt den Wert 0 hat.

Das Ganze ist ungetestet, also bitte nich hauen wenns nich geht^^
__________________

Freizeit-Ratgeber.de
- Mein aktuelles Projekt rund um Freizeitparks

Mit Zitat antworten
  #5 (permalink)  
Alt 27-05-2009, 14:27
jikorandis
 Registrierter Benutzer
Links : Onlinestatus : jikorandis ist offline
Registriert seit: Jul 2005
Beiträge: 5
jikorandis ist zur Zeit noch ein unbeschriebenes Blatt
jikorandis eine Nachricht über ICQ schicken
Standard

hab keine db laufen auf dem webspace ^^

aber ich schau grad mal wegen verzeichnis auflisten... müsste ich dann ja noch mit regexpressions verfeinern da andere css-dokumente im selben ordner liegen... mal schauen wie weit ich komme.

danke euch erstmal
Mit Zitat antworten
  #6 (permalink)  
Alt 27-05-2009, 14:34
jikorandis
 Registrierter Benutzer
Links : Onlinestatus : jikorandis ist offline
Registriert seit: Jul 2005
Beiträge: 5
jikorandis ist zur Zeit noch ein unbeschriebenes Blatt
jikorandis eine Nachricht über ICQ schicken
Standard

genial genau das wars dank dir
Mit Zitat antworten
  #7 (permalink)  
Alt 27-05-2009, 14:35
Benutzerbild von onemorenerd onemorenerd
  Moderator
Links : Onlinestatus : onemorenerd ist offline
Registriert seit: Mar 2005
Ort: Berlin
Beiträge: 9.481
onemorenerd wird schon bald berühmt werdenonemorenerd wird schon bald berühmt werden
Standard

Du brauchst nicht unbedingt eine DB dafür. Was Kropff sagen wollt und ich pflichte ihm da bei: Verzeichnis auslesen und über Dateien iterieren ist eine ganz schlechte Idee.
Im ersten Beitrag sprichst du von "ein Stylesheet für den jeweiligen Nutzer". Es gibt also eine Zuordnung Nutzer -> Datei. Also nimm dir ein Kriterium, das den User eindeutig identifiziert, z.B. seine User-ID und baue das in den Dateinamen ein. Schema "temp_$uid.css".
Dieses $uid musst du bereits irgendwo haben, egal ob aus einer DB oder woher sonst. Ohne $uid könntest du deine Benutzer ja gar nicht unterscheiden.

Übrigens iteriert man auch nicht über ein Verzeichnis, wenn man kein $uid hat. Dann schreibt man sich lieber die letzte Zahl in eine Datei counter.txt.
Mit Zitat antworten
  #8 (permalink)  
Alt 27-05-2009, 14:35
PHP-Desaster
 PHP Expert
Links : Onlinestatus : PHP-Desaster ist offline
Registriert seit: Mar 2006
Beiträge: 3.104
PHP-Desaster befindet sich auf einem aufstrebenden Ast
Standard

PHP-Code:
glob('temp_*.css'); 
Wenn die Dateien fortlaufend nummeriert sind, sogar so:
PHP-Code:
$name='temp_'.(count(glob('temp_*.css'))+1).'.css'
Mit Zitat antworten
  #9 (permalink)  
Alt 27-05-2009, 17:25
wahsaga
  Moderator
Links : Onlinestatus : wahsaga ist offline
Registriert seit: Sep 2001
Beiträge: 24.486
wahsaga befindet sich auf einem aufstrebenden Ast
Standard

Brauchst du denn überhaupt fortlaufende Nummern im Dateinamen?
Sonst würde ich mir von PHP einfach einen Namen generieren lassen, der hinreichend eindeutig ist - und es mir sparen, jedes mal aufwendig das Verzeichnis zu scannen.
__________________
I don't believe in rebirth. Actually, I never did in my whole lives.
Mit Zitat antworten
Antwort

Lesezeichen


Aktive Benutzer in diesem Thema: 1 (Registrierte Benutzer: 0, Gäste: 1)
 

Ähnliche Themen
Thema Autor Forum Antworten Letzter Beitrag
Probleme mit Dateiprüfung Piti PHP Developer Forum 5 25-12-2003 10:53

Themen-Optionen
Thema bewerten
Thema bewerten:

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 an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are an


PHP News

MariaDB 5.5 veröffentlicht
MariaDB 5.5 veröffentlichtDie freie MySQL-Alternative MariaDB wurde in der stabilen Version 5.5.23 veröffentlicht und soll einige Verbesserungen gegenüber Oracles Communityversion von MySQL mitbringen.

16.04.2012 | Berni

Deutsche Yii Framework Community
Deutsche Yii Framework CommunitySeit dem 19.03.2012 gibt es für die Yii PHP Framework Community ein deutsches Zuhause.

20.03.2012 | dhcomputer

 

Aktuelle PHP Scripte

EM 2012 Tipp-Spiel ansehen EM 2012 Tipp-Spiel

Online Tipp-Spiel zur Fussball Europameisterschaft 2012, basierend auf php-Script mit hinterlegter mySql-Datenbank

27.05.2012 tippimnetz | Kategorie: PHP/ Spiele
Advanced Login ansehen Advanced Login

Login-System und Kundenverwaltung, die sich spielend leicht in bestehende Webseiten einbauen lässt und einen enormen Funktionsumfang bietet. Ihre eigene Webseite muss mit Advanced Login nicht umständlich an ein fertiges System angepasst werden.

25.05.2012 Madden | Kategorie: PHP/ Kundenverwaltung
BROM CMS/BelCal 3 ansehen BROM CMS/BelCal 3

Spezielles CMS für Betreiber von Ferienwohnungen. Komplette Seitenerstellung online, Verwaltung mehrerer Objekte, Reservierungssystem mit sofortigem Abgleich im Belegungskalender und vieles mehr bietet dieses Content Management System.

25.05.2012 belcal2 | Kategorie: PHP/ CMS
 Alle PHP Scripte anzeigen

Alle Zeitangaben in WEZ +2. Es ist jetzt 11:44 Uhr.