interner-Dateizähler

mike4004

Erfahrenes Mitglied
Hallo ich wollte fragen gibt es eine funktion die genau eine bestimmte zeile in einer Datei ausgibt.

und ich habe ein Script das den inhalt einer Datei ausgibt allerdings nur so wie sie im ordner
gereit sind nach Datum und ich wollte fragen wenn ich die Datei mit touch() öffne ob sie dan nach Alphapet gereit sind?
 
[…] gibt es eine funktion die genau eine bestimmte zeile in einer Datei ausgibt.
Eine Möglichkeit wäre den gesamten Inhalt der Datei mithilfe der file()-Funktion in ein numerisches Array zu speichern. Dabei wäre die Auswahl der entsprechenden Zeile relativ einfach, es entsteht jedoch auch ein gewisser nichtbenötigter Datenüberfluss.

und ich habe ein Script das den inhalt einer Datei ausgibt allerdings nur so wie sie im ordner
gereit sind nach Datum und ich wollte fragen wenn ich die Datei mit touch() öffne ob sie dan nach Alphapet gereit sind?
Deine Formulierung lässt mich zwar nicht auf dein Anliegen schließen, allerdings setzt die touch()-Funktion die Zugriffs- und Modifizierungszeit einer Datei.
 
Mein Problem ist das das untere Script die Dateien die es aus einem Ordner ausliest wie sie im ordner selbst sind. Wie mach ich es am besten das das Script die Dateien (nur html) nach Alphapet sortiert.

PHP:
<?


$dir = "C:\\apachefriends\\xampp\\htdocs\\dsb.8-)\\programme\\";

$content = opendir($dir);
$i = 0;
while($file = readDir ($content))
{
  if(($file != ".") && ($file != "..") )
  {
 $datei = ereg_replace(".html","",$file);

    echo'    <p><a href="ord-xammp.php?datei='.$file.'" style="text-decoration: none">
        <font color="#FFFFFF" size="2">'.$datei.'</font></a></p>';


    $i++;
  }
}
if($i == 0)
  echo "Zur Zeit sind keine Dateien zum Download verfügbar";
 ?>
 
Um die Dateien zu sortieren, müssen diese vorerst in einem Array gespeichert werden.


PS: Bitte halte dich bei der Formulierung deiner Beiträge etwas mehr an die Regeln der deutschen Rechtschreibung, insbesondere die der Setzung von Satzzeichen.
 
Wie meinst du das?

Jede Datei in ein array schreiben und dan mit ner arry funktion sortieren!

hilf mir ich steh voll auf der leitung!
 
so irgentwie ich bekomme aber ein leeres array und wenn ich vor dem $dateine ein static $dateine[$i]; mach also static geht auch nichts


PHP:
<?

$dir = "C:\\apachefriends\\xampp\\htdocs\\dsb.8-)\\programme\\";

$content = opendir($dir);
$i = 0;
$dateine =array();
while($file = readDir ($content))
{
$file=$dateine[$i];


 $i++;
  }

print_r ($dateine);
if($i == 0)
  echo "Zur Zeit sind keine Dateien zum Download verfügbar";
 ?>
 
Zuletzt bearbeitet:
Probier mal Folgendes:
PHP:
<?php

	$files = array();

	$content = opendir('C:\\apachefriends\\xampp\\htdocs\\dsb.8-)\\programme\\');
	while( $file = readDir($content) ) {
		if( $file == '.' || $file == '..' ) {
			continue;
		}
		$files[] = preg_replace('/\.html$/', '', $file);
	}
	sort($files);
	foreach( $files as $file ) {
		echo'    <p><a href="ord-xammp.php?datei='.$file.'">'.$file.'</a></p>';
	}

?>
 
Danke

noch ein Problem ich habe den falschen html code geschrieben
wie könnt ich das hier am besten machen?

da wird einmal bei $datei das .html wegetan und bei $file ist es nochdabei

der sollte so heißen


' <p><a href="programme/'.$file.'" style="text-decoration: none">
<font color="#FFFFFF" size="2">'.$datei.'</font></a></p>'

hier original

PHP:
if(($file != ".") && ($file != "..") )
  {
 $datei = ereg_replace(".html","",$file);

    echo'    <p><a href="programme/'.$file.'" style="text-decoration: none">
        <font color="#FFFFFF" size="2">'.$datei.'</font></a></p>';


    $i++;
  }
 
Dann probier mal Folgendes:
PHP:
<?php

	$files = array();

	$content = opendir('C:\\apachefriends\\xampp\\htdocs\\dsb.8-)\\programme\\');
	while( $file = readDir($content) ) {
		if( $file == '.' || $file == '..' ) {
			continue;
		}
		$files[] = $file;
	}
	sort($files);
	foreach( $files as $file ) {
		echo'    <p><a href="ord-xammp.php?datei='.$file.'">'.preg_replace('/\.html?$/', '', $file).'</a></p>';
	}

?>
 
Zurück