Dateien aus Ordner herauslesen

tittli

Erfahrenes Mitglied
Hallo
Ich habe hier ein Script, das ich nicht selbst geschrieben habe und ich nicht genau verstehe. Es geht um eine Galerie, und das Script liest einfach alle Ordner (mit Bildern) aus und zeigt sie an. Ursprünglich wurde von jedem Ordner das erste Bild angezeigt, was ich aber jetzt nicht möchte. Ich will einfach den Ordner-Namen anzeigen lassen, und dies als Link auf den Inhalt des Ordners. Dies alles funktioniert eigentlich auch. Nun zu meinen Problemen:

Für das Script wurde auch eine Blätterfunktion geschrieben, die ich jetzt aber nicht mehr brauche, weil nur ein Paar links angezeigt werden und nicht mehr ein Bild zu jedem Link. Wie nehme ich die Blätterfunktion weg?

2. Problem: Es werden nur die Ordner angezeigt, die auch Bilder beinhalten. Ich möchte aber auch leere Ordner anzeigen lassen. Wie mache ich das?

Hier mal das Script:

PHP:
<?php

$sparte = isset($HTTP_GET_VARS["sparte"])?$HTTP_GET_VARS["sparte"]:1;

$max = $sparte * 12;
$min = ($sparte-1) * 12;
$i = 0;
$handle=opendir('./gal/');
while ($file = readdir ($handle))
{
  if ($file != "." && $file != ".." && is_file ('./gal/'.$file)==false)
  {
    if ($i<$max && $i>=$min)
    	{
      	$handle2 = opendir('./gal/'.$file);
      	while ($pic = readdir ($handle2))
         	{
        		if ($pic != "." && $pic != ".." && is_file ('./gal/'.$pic)==false)
        			{
        			if ($i % 4 == 0)
        				{
                 		echo "</tr><tr>";
                 		}
          		echo "<td><div align=\"center\"><a href='index.php?action=pics&file=$file&sparte=1'>$file</a></div></td>";
	      		break;
			}
      		}
                 $i++;
	  	closedir($handle2);
	}
         else
         	{
                 $i++;
         	}
  	}
  }
  closedir($handle);

 $handle=opendir('./gal/');
 $i = 0;
 while ($file = readdir ($handle))
 	{
    	if ($file != "." && $file != "..")
         	{
 		$i++;
    		}
	}
 closedir($handle);
 $i = $i /12;
 if ($i>1)
 	{
 	if ($sparte==1)
         	{
		$a = bcdiv($i,1,0)+1;
		echo "<a href='index.php?action=galerie&sparte=".($a) ."'><<</a>&nbsp;";
		}
	else
         	{
		echo "<a href='index.php?action=galerie&sparte=".($sparte-1) ."'><<</a></a>&nbsp;";
		}

 for ($ii = 0; $ii < $i; $ii++)
	{
  	$a=$ii+1;
  	echo "<a href='index.php?action=galerie&sparte=".$a."'>".$a."</a>&nbsp;";
	}
 if ($sparte==$a)
 	{
	echo "<a href='index.php?action=galerie&sparte=1'>>></a>&nbsp;";
	}
 else
 	{
	echo "<a href='index.php?action=galerie&sparte=".($sparte+1) ."'>>></a></a>&nbsp;";
	}
}
?>

danke für eure Hilfe!
gruss
 
1. Möglichkeit:
Du schreibst das Script komplett neu, dann weißt du auch du
vor dir hast und kannst nachträglich Veränderung daran vornehmen.

2. Möglichkeit:
Du fragst denjenigen, der dir dieses Script geschrieben hat, ob er
so nett ist und es dir nochmals modifiziert.

:-(
 
zu 1.: wenn ich sowas könnte, hätte ich es auch selbst geschrieben.
zu 2.: wenn ich wüsste, woher isch das Script habe, könnte ich das tun.

Zu deinem Beitrag: sehr hilfreich, muss ich sagen. Als ich mich hier angemeldet habe, bekam man viel schneller Hilfe. Jetzt kommen sehr oft solche Beiträge, die einem nichts bringen, die mich aber ein wenig verärgern. Es zeigt aber, dass man sich mit dem ganzen befasst, sonst würde man nichts dazu schreiben. Also...entweder man will helfen, dann versucht man auch zu helfen...sonst lässt man es sein, wirklich. Aber auf solche Beiträge kann ich wirklich verzichten

gruss
 
Ich denke es heißt nicht umsonst "User helfen Usern" an Stelle von "User bauen anderen Usern fertige Scripte um, weil diese keine Lust haben selbst etwas (PHP) zu lernen".

Das ist vllt.auch eine Antwort auf deine Frage im letzten (Doppel-)Post.
 
hab nen tip für dich :-)

also... ha ne idee für das problem mit den leeren ordnern...

is keine saubere lösung aber du könntest einfach den ordner mit einem bild versehen auf dem dann zu lesen ist "dieser ordner ist leider noch leer" oder so... das wäre eine sehr schlcihte eifsache lösung ohne was umzucoden...
 
_voodoo hat gesagt.:
Ich denke es heißt nicht umsonst "User helfen Usern" an Stelle von "User bauen anderen Usern fertige Scripte um, weil diese keine Lust haben selbst etwas (PHP) zu lernen".

Das ist vllt.auch eine Antwort auf deine Frage im letzten (Doppel-)Post.


Naja...wenn du nicht helfen willst, dann lass es...aber lass auch, Beiträge so blöd zu kommentieren. Das bringt niemanden weiter, weder dich, noch mich noch die ganze Community...vielleicht findet sich ja da draussen noch ein User, der sich nicht zu schade ist, meinen Code durchzusehen...vielleicht auch nicht...dann habe ich halt Pech gehabt...aber Fragen darf man immer, dachte ich mir...und nochetwas: Blöde Fragen gibt es grundsätzlich nicht...nur blöde Antworten...und deine beiden Antworten gehören eindeutig dazu.
Mit "keine Lust haben, etwas zu lernen" hat das wenig zu tun. Ich weiss ja nicht, vielleicht bist du ja das Supertalent, lernst so eine Sprache in 2 Tagen und kannst nachher alles coden. Ich gehöre zu denen, die etwas Zeit dafür brauchen, und wenn ich den Code so schnell wie möglich haben sollte und ich halt keine Zeit dafür habe, alles genau anzuschauen...dann frage ich halt hier. Habe halt gehofft, hier einen erfahrenen und hilfsbereiten Programmierer zu finden, der meinen Code schnell durchschauen kann und mir schnell die Lösung angeben kann. Denn dass die Antworten auf meine Fragen für einen erfahrenen Programmierer schwierig sein sollten kann ich mir nicht vorstellen.

Ich habe gesprochen.
gruss
 
Zurück