• Jetzt anmelden. Es dauert nur 2 Minuten und ist kostenlos!

zwei textdateien ausgeben

smsterminal

Mitglied
ich möchte 2 textdateien ausgeben, klappt auch soweit mit:
PHP:
$daten = array('datei1.txt','datei2.txt');
jedoch zeigt er das array nicht an. habs mit array_push probiert geht auch net.


ganze script:

PHP:
<?php
$daten = array('datei1.txt','datei2.txt');

$daten_pro_seite = 20;

$seitenzahl = ((isset($_GET["seitenzahl"])) ? $_GET["seitenzahl"] : 0);

$seiten = ceil(count($daten) / $daten_pro_seite);

echo "<ul class='pageMenu'>";
echo "<li><a href=\"?seitenzahl=0\">Erste Seite</a></li>";
if( $seitenzahl != 1 )
{
    echo "<li><a href=\"?seitenzahl=" . ( $seitenzahl - 1 ) . "\">Zurück</a></li>";
}

if($seitenzahl >= 5)
{
    $von = $seitenzahl - 4;
    $bis = $seitenzahl + 5;
    
    if($seitenzahl > ($seiten - 6))
    {
        $diff = $seitenzahl - ($seiten - 6);
        
        $sub = 4 + $diff;
        $von = $seitenzahl - $sub;
    }
}
else
{
    $von = 1;
    $bis = 10;
}

while($von <= $bis)
{
    echo "<li><a "; if($seitenzahl == $von) { echo "class='active' "; } if($von >= $seiten) { echo "style='display:none;' "; }echo "href=\"?seitenzahl=$von\">$von</a></li>";    
    
    $von++;    
}

 
if( $seitenzahl < ($seiten - 1) )
{
    echo "<li><a href=\"?seitenzahl=" . ( $seitenzahl + 1 ) . "\">Weiter</a></li>";
}

echo "<li><a href=\"?seitenzahl=" . ( $seiten - 1 ) . "\">Letzte Seite</a></li></ul>";

$zaehlerbis = ($seitenzahl + 1) * $daten_pro_seite;

if($seitenzahl == ($seiten - 1))
{
    $zaehlerbis = count($daten);
}

for ($zaehler = $seitenzahl * $daten_pro_seite; $zaehler < ($zaehlerbis); $zaehler++) 
{
    echo "<p>" . $daten[$zaehler] . "</p>\n";
}

echo "<ul class='pageMenu'>";
echo "<li><a href=\"?seitenzahl=0\">Erste Seite</a></li>";
if( $seitenzahl != 1 )
{
    echo "<li><a href=\"?seitenzahl=" . ( $seitenzahl - 1 ) . "\">Zurück</a></li>";
}

if($seitenzahl >= 5)
{
    $von = $seitenzahl - 4;
    $bis = $seitenzahl + 5;
    
    if($seitenzahl > ($seiten - 6))
    {
        $diff = $seitenzahl - ($seiten - 6);
        
        $sub = 4 + $diff;
        $von = $seitenzahl - $sub;
    }
}
else
{
    $von = 1;
    $bis = 10;
}

while($von <= $bis)
{
    echo "<li><a "; if($seitenzahl == $von) { echo "class='active' "; } if($von >= $seiten) { echo "style='display:none;' "; }echo "href=\"?seitenzahl=$von\">$von</a></li>";    
    
    $von++;    
}

 
if( $seitenzahl < ($seiten - 1) )
{
    echo "<li><a href=\"?seitenzahl=" . ( $seitenzahl + 1 ) . "\">Weiter</a></li>";
}

echo "<li><a href=\"?seitenzahl=" . ( $seiten - 1 ) . "\">Letzte Seite</a></li></ul>";
?>
 
$seiten = ceil(count($daten) / $daten_pro_seite);

Das scheint mir falsch herum zu sein. Ergibt entsprechend ceil(2/20) = 1
Und dann stimmen die ganzen Folfeabläufe nicht mehr.
 
Die Datenzählung stimmt schon>weil script läuft so, ich möchte nur 2 textdateien anzeigen lassen so hier:
PHP:
$daten = array('datei1.txt','datei2.txt');

aber wie bekomme ich die ausgabe bei mit echo, das der beide dateiinhalte rauswirft?
 
so ginge es ja auch aber wie ist das dann in meinem script zu ändern?

PHP:
   <?php 
$files = array('datei1.txt','datei2.txt'); 
foreach($files as $page) { 
  include $page; 
} 
?>
 
Schau dir mal PHP: Dateisystem - Manual an ... Du willst ja die Inhalte der Dateien ausgeben und nicht die Dateinamen ...

echo "<p>" . $daten[$zaehler] . "</p>\n";

Das gibt dir bestenfalls den Dateinamen aus, den du im Array $daten definiert hast, nicht aber den Inhalt der Datei ....
 
ich habe es jetzt so gelöst , so möchte ich es haben , bloss wie bekomme ich die zahlennavigation/pagination darein, wie im alten script
PHP:
<?PHP
$array1 = file('gast.txt');
$array2 = file('zitate.txt');
$array3 = array($array1,$array2);

function printArray($var){
 foreach($var as $k){
   if (!is_array($k)){
      echo $k."<br>";
    }
    else{
    printArray($k);
  }
 }
}
printArray($array3);
?>
 
Zurück
Oben