AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Programmierung allgemein Programmieren allgemein [PHP][Gelöst] *.html Dateien auslesen und verarbeiten :(
Thema durchsuchen
Ansicht
Themen-Optionen

[PHP][Gelöst] *.html Dateien auslesen und verarbeiten :(

Ein Thema von Master_RC · begonnen am 16. Jul 2005 · letzter Beitrag vom 16. Jul 2005
Antwort Antwort
Seite 1 von 2  1 2      
Benutzerbild von Master_RC
Master_RC

Registriert seit: 18. Jan 2005
459 Beiträge
 
Delphi 7 Enterprise
 
#1

[PHP][Gelöst] *.html Dateien auslesen und verarbeiten :(

  Alt 16. Jul 2005, 13:21
hi leutz, hab ein riesen-problem! :'(

also...
ich muss aus einem Ordner alle HTML-Dateien auslesen.

so...
diese sehen wie folgt aus, Beispiel:
2005-05-01.html
also: YYYY-MM-DD.html

so...
wie mache ich dass, dass ich dann alle solche dateien (und nur solche!) auslese und dann zu jedem in chronologischr Reihenfolge einen Link erstelle?

Bin wirklich am Verzweifeln, das ist nämlich für einen Auftrag und der sollte schnellstmöglich beendet werden


Noch schnell ein Beispiel:
Im Ordner enthalten: 2005-05-01.html | 2005-06-23.html

sollte dann in ungefähr so aussehen:
News vom 23.6.2005 [2005-06-23.html]
News vom 1.5.2005 [2005-05-01.html]
Ein Volk ist nur soviel wert, wie es dessen Toten ehrt.
  Mit Zitat antworten Zitat
Benutzerbild von phXql
phXql

Registriert seit: 11. Mär 2004
Ort: Mühldorf
824 Beiträge
 
#2

Re: [PHP] *.html Dateien auslesen und verarbeiten :(

  Alt 16. Jul 2005, 15:09
Zitat von Master_RC:
hi leutz, hab ein riesen-problem! :'(

also...
ich muss aus einem Ordner alle HTML-Dateien auslesen.

so...
diese sehen wie folgt aus, Beispiel:
2005-05-01.html
also: YYYY-MM-DD.html

so...
wie mache ich dass, dass ich dann alle solche dateien (und nur solche!) auslese und dann zu jedem in chronologischr Reihenfolge einen Link erstelle?

Bin wirklich am Verzweifeln, das ist nämlich für einen Auftrag und der sollte schnellstmöglich beendet werden


Noch schnell ein Beispiel:
Im Ordner enthalten: 2005-05-01.html | 2005-06-23.html

sollte dann in ungefähr so aussehen:
News vom 23.6.2005 [2005-06-23.html]
News vom 1.5.2005 [2005-05-01.html]
Such mal in SelfPHP nach opendir(), readdir() und closedir(). Mit diesen Funktionen sollte das zu machen sein.
"Dunkel die andere Seite ist"
"Yoda! Halts Maul und iss deinen Toast!"
  Mit Zitat antworten Zitat
Benutzerbild von dahead
dahead

Registriert seit: 16. Mai 2005
620 Beiträge
 
#3

Re: [PHP] *.html Dateien auslesen und verarbeiten :(

  Alt 16. Jul 2005, 15:13
och, falsche Rubrik, falsche Antwort, sorry.
  Mit Zitat antworten Zitat
Benutzerbild von Master_RC
Master_RC

Registriert seit: 18. Jan 2005
459 Beiträge
 
Delphi 7 Enterprise
 
#4

Re: [PHP] *.html Dateien auslesen und verarbeiten :(

  Alt 16. Jul 2005, 15:23
Zitat von phXql:
Such mal in SelfPHP nach opendir(), readdir() und closedir(). Mit diesen Funktionen sollte das zu machen sein.
ich habs schon selbst versucht, klappt aber nicht so ganz... :'(
Ein Volk ist nur soviel wert, wie es dessen Toten ehrt.
  Mit Zitat antworten Zitat
Benutzerbild von phXql
phXql

Registriert seit: 11. Mär 2004
Ort: Mühldorf
824 Beiträge
 
#5

Re: [PHP] *.html Dateien auslesen und verarbeiten :(

  Alt 16. Jul 2005, 15:26
Zitat von Master_RC:
Zitat von phXql:
Such mal in SelfPHP nach opendir(), readdir() und closedir(). Mit diesen Funktionen sollte das zu machen sein.
ich habs schon selbst versucht, klappt aber nicht so ganz... :'(
dann geh auf php.net, und lad dir dort das CHM für die PHP-Hilfe runter. dort is bei readdir() auch ein beispiel dabei..
"Dunkel die andere Seite ist"
"Yoda! Halts Maul und iss deinen Toast!"
  Mit Zitat antworten Zitat
Benutzerbild von Airblader
Airblader

Registriert seit: 29. Okt 2004
Ort: Geislingen an der Steige
742 Beiträge
 
#6

Re: [PHP] *.html Dateien auslesen und verarbeiten :(

  Alt 16. Jul 2005, 16:12
Mal etwas Code:

Code:
<?php
$hDir = "ordner/"; // Dein Ordner
$hHandle = opendir($hDir); // Handle zum Ordner

$FileNames = Array(); // Array initialisieren

// In einer Schleife alle Dateien holen, die zugelassen sind
while($file == readdir($hHandle) && $file != "." && $file != ".." && substr($file, -5) == ".html" && is_file($file))
{
   $FileNames[] = substr($file, strlen($file)-5); // Dateinamen in Array einlesen
}

closedir($hHandle); // Handle wieder schließen
?>
Nun hast du in $FileNames alle Dateinamen ohne Extension, aber nur von den Dateien, die auf .html enden (*.html).

Das kannst du nun umbauen und dadurch die Ausgabe erzeugen.

air
Ingo Bürk
Es nimmt der Augenblick, was Jahre geben.

Johann Wolfgang von Goethe
  Mit Zitat antworten Zitat
Neuni

Registriert seit: 25. Feb 2004
815 Beiträge
 
Delphi 7 Personal
 
#7

Re: [PHP] *.html Dateien auslesen und verarbeiten :(

  Alt 16. Jul 2005, 16:14
Also ich würds so machen:
Code:
<?php

//öffnen des ordners
$handle=opendir("derordner/");

$daten = array();

//auslesen der dateien
while ($file = readdir($handle)) {

//datum aus dateinamen filtern
$datum = split('-',$file);

$jahr = $datum[0];
$monat = $datum[1];
$tag1 = $datum[2];

$tag = $tag[0].$tag[1];

//timestamp erzeugen
$timestamp = mktime(0,0,0,$monat,$tag,$jahr);

//ab ins array :)
$daten[] = $timestamp;

}

closedir($handle);

//sortieren
sort($daten);
reset($daten);

//Array-daten zählen
$gesammt = count($daten);

//ausgeben
for($i=0; $i<$gesammt; $i++) {

$tag = date('j',$daten[$i]);
$monat = date('n',$daten[$i]);
$jahr = date('Y',$daten[$i]);

$dateiname = $jahr.'-'.$monat.'-'.$tag.'.html';

echo '[url="'.$dateiname.'"]News vom '.$tag.'.'.$monat.'.'.$jahr.'[/url]
';

}


?>
^^Nicht getstet, also bestimmt Fehler drin, sollte aber so funktionieren.
  Mit Zitat antworten Zitat
Benutzerbild von Master_RC
Master_RC

Registriert seit: 18. Jan 2005
459 Beiträge
 
Delphi 7 Enterprise
 
#8

Re: [PHP] *.html Dateien auslesen und verarbeiten :(

  Alt 16. Jul 2005, 16:35
mensch, ihr seid einfach genial!

ich werds dann gleich mal ausprobieren!
Ein Volk ist nur soviel wert, wie es dessen Toten ehrt.
  Mit Zitat antworten Zitat
Benutzerbild von Delphi-Freak
Delphi-Freak

Registriert seit: 26. Sep 2004
Ort: Wien Nähe (Österreich)
321 Beiträge
 
Delphi 2006 Architect
 
#9

Re: [PHP] *.html Dateien auslesen und verarbeiten :(

  Alt 16. Jul 2005, 16:49
Zum Testen, ob die Datei dem Schema folgt, (und dann auch gleich zum splitten) könnte man auch Reguläre Audrücke verwenden:
etwa so:
Code:
//while...
if(preg_match("/([0-9]{4})\-([0-9]{2})\-([0-9]{2})\.html/", $file, $treffer)) {
   echo "News vom {$treffer[3]}.{$treffer[2]}.{$treffer[1]} [{$file}]";
}
//...
LG
Gerhard Pfister
*
»To him who loves us and has freed us from our sins by his blood [...] be glory and power for ever and ever! Amen.« (Revelation*1,*5?6)
  Mit Zitat antworten Zitat
Benutzerbild von Master_RC
Master_RC

Registriert seit: 18. Jan 2005
459 Beiträge
 
Delphi 7 Enterprise
 
#10

Re: [PHP][Gelöst] *.html Dateien auslesen und verarbeiten :(

  Alt 16. Jul 2005, 21:26
gut, musste zwar noch ein wenig herumtüfteln, aber schließlich kam das raus:

Code:
<?php

//öffnen des ordners
$handle=opendir("news/");

$daten = array();

//auslesen der dateien
while ($file = readdir($handle)) {
if(preg_match("/([0-9]{4})\-([0-9]{2})\-([0-9]{2})\.html/", $file, $treffer)) {

//datum aus dateinamen filtern
$datum = split('-',$file);

$jahr = $datum[0];
$monat = $datum[1];
$tag = $datum[2];

//$tag = $tag[0].$tag[1];

//timestamp erzeugen
$timestamp = mktime(0,0,0,$monat,$tag,$jahr);

//ab ins array :)
$daten[] = $timestamp;
}
}

closedir($handle);

//sortieren
rsort($daten);
reset($daten);

//Array-daten zählen
$gesammt = count($daten);

$tag2 = array();
$monat = array();
$jahr = array();

//ausgeben
for($i=0; $i<$gesammt; $i++) {

$tag2[$i] = date('d',$daten[$i]);
$monat[$i] = date('m',$daten[$i]);
$jahr[$i] = date('Y',$daten[$i]);

$dateiname = $jahr[$i].'-'.$monat[$i].'-'.$tag2[$i].'.html';

echo "<a href='news/".$dateiname."'>News vom ".$tag2[$i].". ".$monat[$i].".";

}


?>
funktioniert einwandfrei
Ein Volk ist nur soviel wert, wie es dessen Toten ehrt.
  Mit Zitat antworten Zitat
Antwort Antwort
Seite 1 von 2  1 2      


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 aus

Gehe zu:

Impressum · AGB · Datenschutz · Nach oben
Alle Zeitangaben in WEZ +1. Es ist jetzt 22:58 Uhr.
Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz