Login  Regeln Aktuelles Datum und Uhrzeit: 07.09.2008, 09:25  
Startseite
Registrieren
Profil
Suchen
Mitgliederliste
Verzeichnis
Impressum



Partner
kostenlose Homepage
Fussball
Kostenloses Forum
SMS kostenlos
Webhosting
Webmasterportal
Kostenlos
Kredit ohne Schufa
Esoterik-Forum
Selbsthilfeforum
Artikel Backlink
Datenrettung
Dateien dynamisch aus Ordner laden
Gehe zu Seite 1, 2  Weiter
 
Neues Thema eröffnen   Neue Antwort erstellen    Webmaster Forum -> Einsteigerforum
Vorheriges Thema anzeigen Nächstes Thema anzeigen 
Autor Nachricht
method360
Stammuser [User]
Stammuser



Anmeldung: 14.12.06
Beiträge: 29

BeitragVerfasst am: 01.03.2007, 16:58    Titel: Dateien dynamisch aus Ordner laden Antworten mit Zitat

HY

Ich versuche grade meinen Downloadbereich einzurichten. Dafür will ich alle Daten aus einem Ordner "Download" laden lassen.
Die Dateipfade sollen dann automatisch in eine xml-Datei gespeichert werden.
Mit der xml-datei will ich dann eine Liste mit den Verknüpfungen zu den Dateien erstellen.
Leider hab ich keinen Plan wie ich das realisieren soll.

Kann mir da jemand helfen?


Oder habt ihr Vorschläge wie ich ein dynamisches Downloadarchiv sonst realisieren soll?


Schonmal ein Danke im Vorraus.

Bis dann


Nach oben
Private Nachricht senden
chris1988
Bekannter [User]
Bekannter



Anmeldung: 12.12.05
Beiträge: 1544

BeitragVerfasst am: 01.03.2007, 17:46    Titel: Antworten mit Zitat

guck dir mal die PHP-Funktion opendir bzw. readdir an, damit solltest du weiterkommen Winken
_________________
Mancher ertrinkt lieber,
als daß er um Hilfe ruft.


(Wilhelm Busch)


Nach oben
Private Nachricht senden
800XE
Bekannter [Mod]
Bekannter



Anmeldung: 24.10.04
Beiträge: 1218
Wohnort: Speyer

BeitragVerfasst am: 01.03.2007, 17:49    Titel: Re: Dateien dynamisch aus Ordner laden Antworten mit Zitat

method360 hat folgendes geschrieben:
will ich alle Daten aus einem Ordner "Download" laden lassen.

Die Dateipfade sollen dann .... gespeichert werden.


Wozu willst du die Dateipfade verarbeiten .... wenn es immer der selbe Pfad ist?



Verzeichniss auslesen
Code:

$dir ='download/';
$dhandle=opendir($dir);
while(($file = readdir($dhandle)) !== false)
{   if ( filetype($dir.$file) == 'file' ) echo( '<br>'. $file );
}   closedir($dhandle);


_________________
Seien wir realistisch, versuchen wir das Unmögliche!
CMS800 :::::::::: Andy 800XE Zmuda :::::::::
ich bin nicht unhöflich, ich bin binär


Nach oben
Private Nachricht senden Website dieses Benutzers besuchen
method360
Stammuser [User]
Stammuser



Anmeldung: 14.12.06
Beiträge: 29

BeitragVerfasst am: 01.03.2007, 18:53    Titel: Antworten mit Zitat

OK ... danke schonma
Code:
Wozu willst du die Dateipfade verarbeiten .... wenn es immer der selbe Pfad ist?

naja , ich brauch doch die verknüpfungen... damit ich die Dateien dann runterladen kann, oder nicht.
Da ich davon nich soviel Ahnung habe wie ich es gern hätte.Denke ich mir , dass das ein komfortabler weg ist .... eine dynamischen liste zu erstellen.

Naja , aber wie gesagt habe ich davon nich viel Ahnung.... für bessere Wege habe ich stets ein offenes Ohr Winken

Ok ... der Ordner is jetzt ausgelesen ... wie verarbeite ich die Daten jetzt weiter? Brauch ja irgendwie Verknüpfungen zu den Daten , damit sie dann heruntergeladen werden können.

Bis dann


Nach oben
Private Nachricht senden
800XE
Bekannter [Mod]
Bekannter



Anmeldung: 24.10.04
Beiträge: 1218
Wohnort: Speyer

BeitragVerfasst am: 01.03.2007, 19:21    Titel: Antworten mit Zitat

method360 hat folgendes geschrieben:
Ok ... der Ordner is jetzt ausgelesen ... wie verarbeite ich die Daten jetzt weiter? Brauch ja irgendwie Verknüpfungen zu den Daten , damit sie dann heruntergeladen werden können.

Bis dann


Code:


$dir ='download/';
$dhandle=opendir($dir);
while(($file = readdir($dhandle)) !== false)
{   if ( filetype($dir.$file) == 'file' )
        echo( '<br><a href="http://domain.tld/'.$dir.$file.'">'.$file.'</a>' );
}   closedir($dhandle);



Was willst du eigentlich genau?
Warum Ordner auslesen in Datei speichern ... welche später wieder ausgelesen werden müßte ...

Wenn du wissen wilst ob sich dein Kontostand geändert hat ....
gehst du ja nicht zu Bank und druckst einen Kontoauszug aus (schaust nicht rein) .. gehst heim, Heftest Auszug ab, stellst Ordner in Regal ....
... nimmst Ordner wieder aus Regal, öffnest und schaust nach
Mann schaut nach dem drucken, vor dem abheften


Du willst erst abheften .....

Code:


$dir ='download/';
$dhandle=opendir($dir);
$handle=fpen('abheften.txt','wb');
while(($file = readdir($dhandle)) !== false)
{   if ( filetype($dir.$file) == 'file' )
        fwrite($handle,$file."\n");
}   closedir($dhandle); fclose($handle);


Nachschauen
Code:



$buffer = file_get_contents( 'abheften.txt' );
$zeilen = explode( "\n" , $buffer );
$zcount = count( $zeilen );
$i=-1;
while ( ++$i < $zcount )
{
echo( '<br><a href="http://domain.tld/download/'.$zeilen[$i].'">'.$zeilen[$i].'</a>' );
}

_________________
Seien wir realistisch, versuchen wir das Unmögliche!
CMS800 :::::::::: Andy 800XE Zmuda :::::::::
ich bin nicht unhöflich, ich bin binär


Nach oben
Private Nachricht senden Website dieses Benutzers besuchen
method360
Stammuser [User]
Stammuser



Anmeldung: 14.12.06
Beiträge: 29

BeitragVerfasst am: 01.03.2007, 19:31    Titel: Antworten mit Zitat

Danke für die Idiotensicher Antwort... werd das heute nacht ma ausprobieren , wenn ich dann noch fragen habe schreib ich nochmal.

Bis dann


Nach oben
Private Nachricht senden
method360
Stammuser [User]
Stammuser



Anmeldung: 14.12.06
Beiträge: 29

BeitragVerfasst am: 01.03.2007, 19:56    Titel: Antworten mit Zitat

Also , habs doch gleich ausprobiert und bekomme folgender Fehlermeldungen ... weiss nich wie ich das beheben soll . Ist das Serverseitig oder stimmt was mit dem script nich ?

fopen("abheften.txt", "wb") - Permission denied in /home/www/web25/html/download.inc.php on line 5<br />
<br />
Warning: fwrite(): supplied argument is not a valid File-Handle resource in /home/www/web25/html/download.inc.php on line 8<br />

<br />
Warning: fwrite(): supplied argument is not a valid File-Handle resource in /home/www/web25/html/download.inc.php on line 8<br />
<br />
Warning: fclose(): supplied argument is not a valid File-Handle resource in /home/www/web25/html/download.inc.php on line 9<br />
<br />

Fatal error: Call to undefined function: file_get_contents() in /home/www/web25/html/download.inc.php on line 12<br />

OK ... hoffe das wir das irgendwie hinkriegen

Bis dann


Nach oben
Private Nachricht senden
800XE
Bekannter [Mod]
Bekannter



Anmeldung: 24.10.04
Beiträge: 1218
Wohnort: Speyer

BeitragVerfasst am: 01.03.2007, 20:13    Titel: Antworten mit Zitat

method360 hat folgendes geschrieben:
fopen("abheften.txt", "wb") - Permission denied in

Permission denied
= Erlaubnis verweigerte

Du darfst die datei nich anlegen ... also kann sie später auch nicht beschreiben und gelesen werden = Folgefehler

mit FTPprogramm dem Ordner wo die Datei ist (sein soll) mehr Rechte geben
wenn nicht möglich (ich kann meinem rootOrdner nicht mehr Rechte geben)
Ordner anlegen, diesem mehr Rechte geben und dortrein die Datei schreiben

fopen("meinneuerOrdnermitmehrrechten/abheften.txt", "wb");

_________________
Seien wir realistisch, versuchen wir das Unmögliche!
CMS800 :::::::::: Andy 800XE Zmuda :::::::::
ich bin nicht unhöflich, ich bin binär


Nach oben
Private Nachricht senden Website dieses Benutzers besuchen
method360
Stammuser [User]
Stammuser



Anmeldung: 14.12.06
Beiträge: 29

BeitragVerfasst am: 02.03.2007, 01:32    Titel: Antworten mit Zitat

bekomme jetzt noch folgende fehlermeldung....
Fatal error: Call to undefined function: file_get_contents() in /home/www/web25/html/download.inc.php on line 19

weiss aber nich was ich noch machen soll.mein code sieht jetzt folgendermaßen aus

Code:
<?php
//Ordner auslesen und in Datei abheften.txt speichern
$dir ='download/';
$dhandle=opendir($dir);
$handle=fopen('abheften/abheften.txt','wb');
while(($file = readdir($dhandle)) !== false)
{   if ( filetype($dir.$file) == 'file' )
        fwrite($handle,$file."\n");
}   closedir($dhandle); fclose($handle);

//inhalt von abheften.txt auslesen und links erstellen
$buffer = file_get_contents( 'abheften/abheften.txt' ); <-- Zeile 19
$zeilen = explode( "\n" , $buffer );
$zcount = count( $zeilen );
$i=-1;
while ( ++$i < $zcount )
{
echo( '<br><a href="http://domain.tld/download/'.$zeilen[$i].'">'.$zeilen[$i].'</a>' );
}


Nach oben
Private Nachricht senden
800XE
Bekannter [Mod]
Bekannter



Anmeldung: 24.10.04
Beiträge: 1218
Wohnort: Speyer

BeitragVerfasst am: 02.03.2007, 02:44    Titel: Antworten mit Zitat

Die funktion geibt es aber
http://de.php.net/manual/de/function.file-get-contents.php


Alternative

Code:

$handle= fopen( 'abheften/abheften.txt' , 'rb' );
$buffer = fread( $handle, 999999 );
fclose( $handle );

999999 siehe http://de.php.net/manual/de/function.fread.php

zu groß darf die Zahl nicht sein, weil sie sonst überläuft und wieder kleiner ist
jetzt ist die Frage wieviel Bit der int hat

32bit = 2^32 = 4.294.967.296
würde man 9.000.000.000 reinschreiben ....
... wäre nur 410.065.408 drin

aber das führt jetzt zu weit ...
... deine Datei wird ja wohl kleiner 1Mega sein
notfals wäre ja platz bis 900 Mega bzw 2 Giga (weil die 4Giga sind unsignet=ohne Vorzeichen)

alles klar?

bei mir nicht ... weils den get_contents bei dir nicht gibt

Oft ist ein fehler garnicht in der Zeile wo er gemeldet wird .... sondern dafor ...
.... nur hat der Parser dort noch keinen Grund einen Fehler zu melden ... weil der Code zwar falsch, aber für den parser akzeptabel ist ....


Beilspiel

Code:

echo ( "Hallo );
$buffer = fread( $handle, 800 );
echo ( "Output". $buffer );

im ersten echo fehlt das 2te Anführungszeichen
der Echo will
Code:

"Hallo );
$buffer = fread( $handle, 800 );
echo ( "

ausgeben
und dann kommt "Output" und diesen Befehl kennt PHP nicht ...
... ERROR unbekannter Befehl in zeile 17

fehler ist aber in Zeile 15 das fehlende "

_________________
Seien wir realistisch, versuchen wir das Unmögliche!
CMS800 :::::::::: Andy 800XE Zmuda :::::::::
ich bin nicht unhöflich, ich bin binär


Nach oben
Private Nachricht senden Website dieses Benutzers besuchen
method360
Stammuser [User]
Stammuser



Anmeldung: 14.12.06
Beiträge: 29

BeitragVerfasst am: 02.03.2007, 03:26    Titel: Antworten mit Zitat

Hy ... schonma Danke für deine schnelle Antwort ....
Könnte es sein , dass auf dem webserver eine alte PHP Version installiert ist?

Hab in nem anderen Forum gelesen , dass dieser fehler auftritt wenn die PHP Version zu alt ist.

http://webdesign.weisshart.de/blog.php?p=28

hier nach Call to undefined function: file_get_contents() suchen .

bis dann



EDIT: Also die Alternative funktioniert.Dafür schonmal ein fettes DANKE.
Aber trotzdem würde mich interessieren , warum die andere Methode nich geht.

Ach ja und nochwas .... wie kann ich dann auf den generierten link mit css einwirken? hab das grad probiert , aber dass stylesheet wirkt sicher immer gleich auf alle Links gleichzeitig aus. Ich will aber auf jede Linkadresse einzeln einwirken.


Nach oben
Private Nachricht senden
800XE
Bekannter [Mod]
Bekannter



Anmeldung: 24.10.04
Beiträge: 1218
Wohnort: Speyer

BeitragVerfasst am: 02.03.2007, 04:27    Titel: Antworten mit Zitat

method360 hat folgendes geschrieben:
Hy ... schonma Danke für deine schnelle Antwort ....
Könnte es sein , dass auf dem webserver eine alte PHP Version installiert ist?

Hab in nem anderen Forum gelesen , dass dieser fehler auftritt wenn die PHP Version zu alt ist.

http://webdesign.weisshart.de/blog.php?p=28

hier nach Call to undefined function: file_get_contents() suchen .

bis dann



EDIT: Also die Alternative funktioniert.Dafür schonmal ein fettes DANKE.
Aber trotzdem würde mich interessieren , warum die andere Methode nich geht.

jo, liegt am alter ....
.... mein localhost PHP ist wohl knapp drüber


Vor Tagen hab ich den Befehl mal zum schreiben benutzt
file_put_contents()
aufm Webhoster gings ....
... dann bei mir auf localhost (Wohnzimmer PC http://800xe.homeip.net/ ) und dort gings nicht .... die Put Version geht erst ab PHP 5

_________________
Seien wir realistisch, versuchen wir das Unmögliche!
CMS800 :::::::::: Andy 800XE Zmuda :::::::::
ich bin nicht unhöflich, ich bin binär


Nach oben
Private Nachricht senden Website dieses Benutzers besuchen
method360
Stammuser [User]
Stammuser



Anmeldung: 14.12.06
Beiträge: 29

BeitragVerfasst am: 02.03.2007, 05:45    Titel: Antworten mit Zitat

Ach ja und nochwas .... wie kann ich dann auf den generierten link mit css einwirken? hab das grad probiert , aber dass stylesheet wirkt sicher immer gleich auf alle Links gleichzeitig aus. Ich will aber auf jede Linkadresse einzeln einwirken.

ciao


Nach oben
Private Nachricht senden
method360
Stammuser [User]
Stammuser



Anmeldung: 14.12.06
Beiträge: 29

BeitragVerfasst am: 02.03.2007, 18:11    Titel: Antworten mit Zitat

Code:
echo('<br><a class="class1" href="http://domain.tld/download/'.$zeilen[$i].'">'.$zeilen[$i].'</a>


Ich denke , ich kann das Problem mit der Gestaltung nur lösen ,wenn ich classe dynamisch bestimme ... also pro Link soll die class um 1 hochgezählt werden (class1,class2 ... usw.).
Leider fehlt mir dazu das Know-How ,bzw. weiss ich nich ob das überhaupt geht .

Hab bis jetzt versucht , die Variable $i dazu zu verwenden , das hat aber leider nich geklappt. mein codeblock sah dann so aus :
Code:

echo('<br><a class="class'$i'" href="http://domain.tld/download/'.$zeilen[$i].'">'.$zeilen[$i].'</a>


Hoffe , dass irgendwer dies Problem für mich lösen kann.

Ciao


Nach oben
Private Nachricht senden
chris1988
Bekannter [User]
Bekannter



Anmeldung: 12.12.05
Beiträge: 1544

BeitragVerfasst am: 02.03.2007, 20:07    Titel: Antworten mit Zitat

Punkte vergessen!

es muss heißen class="class' . $i . '"

_________________
Mancher ertrinkt lieber,
als daß er um Hilfe ruft.


(Wilhelm Busch)


Nach oben
Private Nachricht senden
Beiträge der letzten Zeit anzeigen:   
Neues Thema eröffnen   Neue Antwort erstellen Alle Zeiten sind GMT + 1 Stunde
Gehe zu Seite 1, 2  Weiter
Seite 1 von 2

Gehe zu:  

Ähnliche Beiträge
Thema Autor Forum Antworten Verfasst am
Keine neuen Beiträge User laden Bilder hoch , feste Größe ... AndyTrendy HTML & CSS 3 13.07.2008, 13:31 Letzten Beitrag anzeigen
Keine neuen Beiträge Form action zwei Dateien ausführen sv00010 Einsteigerforum 6 28.03.2008, 22:00 Letzten Beitrag anzeigen
Keine neuen Beiträge Was sind CSV-Dateien ??? media_ct Einsteigerforum 2 16.03.2008, 02:06 Letzten Beitrag anzeigen
Keine neuen Beiträge zwei htaccess Dateien in untereinande... André Schütte Serverseitige Websprachen 1 09.02.2008, 13:56 Letzten Beitrag anzeigen
Keine neuen Beiträge getimagesize() mit Fotos aus ZIP-Ordner Auri020 Serverseitige Websprachen 4 23.11.2007, 18:42 Letzten Beitrag anzeigen
Threadübersicht