"We are back" « oc.at

Eine PHP Frage noch - Bilder aus Ordner anzeigen

Nightstalker 06.08.2006 - 20:48 3915 40
Posts

Spikx

My Little Pwny
Avatar
Registered: Jan 2002
Location: Scotland
Posts: 13497
jein, wenn dann wahrscheinlich
Code: PHP
<img src= "thumb.php?src=<?php echo $files ?>&wmax=150&hmax=100&quality=90&bgcol=FF0000"> </img>
;)

Nightstalker

ctrl+alt+del
Avatar
Registered: Jan 2002
Location: .^.
Posts: 6957
jein, weil ich hab ja den img tag in eine variable definiert, also schon im php script drinn... hm naja einfach mal probieren

Nightstalker

ctrl+alt+del
Avatar
Registered: Jan 2002
Location: .^.
Posts: 6957
DANKE LEUTE DANKE DANKE ;)

Also mit dem Tipp von Spikx hab ich das nun schön sauber hinbekommen mit den Thumbs...

Ich hab noch ein Problem mit dem ganzen:

Das war ursprünglich als Hochformatdarstellung in 2 Spalten (immer 2 Bilder nebeneinander usw.) gedacht, jetzt is es aber so, ich will das nur in einer Zeile mit je 6 Bildern und dann eben zum weiterblättern, kann mir das mal eben wer erklären wie ich das am besten mach damit die Bilder auch alphabetisch geordnet werden, jetzt ist es so dass er immer ein linkes und dann ein rechtes usw. nimmt und das ganze ziemlich wahllos, ich will dass er bei "0" anfängt bis "6" dann von "7" bis "12" usw. immer alphabetisch jeweils 6 Bilder nebeneinander.

Leute helft mir in dieser schwerden Stunde, ich muss das irgendwie noch bis Fr. hinbekommen sonst kann ich nicht beruhigt ins WE gehen ;)

Hier das Script im ganzen:

Code: PHP
  <?php

#############################

//Funktion für Bilder
 function bildformat($files) {  
    //Bildinfos auslesen  
    $info = getimagesize($files);  
    //Breite für Fenster  
    $mas[0] = $info[0]+20;  
    //Höhe für Fenster  
    $mas[1] = $info[1]+30;  
    //Rückgabe  
    return $mas;      
}  

#############################

//ROOT mit Galerieordnern auslesen
echo "<table width=\"119\" border=\"0\" cellspacing=\"15\" cellpadding=\"0\" height=\"150\">";
if ($galerie==""){
$verz=opendir ($_SERVER['DOCUMENT_ROOT']."$pfaddir/");
while ($files = readdir ($verz)) {
	 if($files!= "." && $files!= ".." ) {
		echo "<td width=\"100\" valign=\"top\">";
		echo "<a href=\"javascript:startPopup1('".$_SERVER['PHP_PARENT'].$sitedir."fotoload.php"."?galerie=".$files."')\"><img src=\"$pfaddir/".$files."/prev.jpg\" width=\"50\" height=\"50\" alt=\"$files\" align=\"top\"></a>" ; 
		echo "<br>";
	  	echo "<a href=\"javascript:startPopup1('".$_SERVER['PHP_PARENT'].$sitedir."?galerie=".$files."')\">$files </a>";
		echo "</td>";

	 	 }
		
	 }
echo "</table>"; }
else {

#############################

//Vars übernehmen
if ($bid == '') {
 $bid = 0;
}
 
//1 Seite zurück
function back($bid) {
	return $bid - 6;
}
 
//1 Seite weiter
function weiter($bid) {
	return $bid + 6;
}

#############################
 
//Bilder aus Verzeichnis auslesen
$bilder = array();
$names = array();
$dir = opendir($pfad);
while ($bild = readdir($dir)) {
	if ($bild != '.' && $bild != '..' && $bild != 'prev.jpg') {
		//Dateinamen Array
		$names[] = $bild;
		
		//Bildertitel Array (Bildername ohne Extensions)
		$titel = explode(".",$bild);
		$titles[] = $titel[0];
		
		//Bilder Array (Komplette Imagetags)
	      $image = bildformat($files);
		$bilder[] = '<img src="thumb.php?src='.$thumbdir.'' . $bild.'&wmax=154&hmax=130&quality=50&bgcol=FFFFFF" class="rahmen">';
		
		//Bilderpfade
		$bilder_orig[] = $pfadbild.$bild;
	}
}
closedir($dir);
 
//Anzahl der elemente im bilder array zählen
$max = count($bilder)-1;

#############################

//Ausgabe in Tabellenform
echo  "<table align=\"left\" width=\"800\" height=\"180\" cellspacing=\"5\" cellpadding=\"1\" border=\"0\">";
for($tmp = $bid; $tmp < $bid+6; $tmp++) {

//Zähler für Bildnamenarray//Resizefunktion
$x = $tmp;
$y = $tmp;
$z = $tmp;

#############################

//Bilderblock am Ende (wenn nicht 2 Bilder vorhanden)

if($tmp==$max) {
	
///Grösse feststellen
	
      $files = $_SERVER['DOCUMENT_ROOT']."/".$bilder_orig[$z];
	$image = bildformat($files);


		//Ausgeben der Bilder
		echo "<td valign=\"top\" width=\"164\" height=\"89\"><div align=\"left\">";
		echo "<a href=\"Javascript:void(0)\" onClick=\"javascript:bildanzeige('$bilder_orig[$z]','$image[0]','$image[1]')\">";
		echo $bilder[$tmp]."</a>";
		echo "<br>";
		echo $titles[$x];
		echo "</div></td>";
		echo "<td width=\"160\"><div align=\"left\">";
		echo " ";
		echo "</div></td>"; //</tr>";
	
unset($image);
	
#############################

		break;
 } 
 else {

      //Bilderblock Linke Seite
	//Grösse der Bilder feststellen
	
	$files = $_SERVER['DOCUMENT_ROOT']."/".$bilder_orig[$y];
if(is_file($files)) {//Damit nur angezeigt wird wenn es eine Bilddatei ist
	$image = bildformat($files);

		//Ausgabe der Bilder
		echo "<td valign=\"top\" width=\"164\" height=\"89\"><div align=\"left\">";
		echo "<a href=\"Javascript:void(0)\" onClick=\"javascript:bildanzeige('".$bilder_orig[$z]."','$image[0]','$image[1]')\">";
		echo $bilder[$tmp]."</a>";
		echo "<br>";
		echo $titles[$x];
		echo "</div></td>";
	
unset($image);
	
} else break;//Damit nur angezeigt wird wenn es eine Bilddatei ist

#############################
	
	//Bilderblock Rechte Seite
	//Grösse Feststellen	

	$files = $_SERVER['DOCUMENT_ROOT']."/".$bilder_orig[++$y];
	$image = bildformat($files);
			
	//Ausgabe der Bilder
		echo "<td valign=\"top\" width=\"164\" height=\"89\"><div align=\"left\">";
		echo "<a href=\"Javascript:void(0)\" onClick=\"javascript:bildanzeige('".$bilder_orig[++$z]."','$image[0]','$image[1]')\">";
		echo $bilder[++$tmp]."</a>";
		echo "<br>";
		echo $titles[++$x];
		echo "</div></td>";

unset($image);

 	}
}

#############################

cellspacing=\"0\" cellpadding=\"0\">";
echo "<tr><td colspan=\"6\">";

//Navigation generieren
if ($bid == "0"){
	echo " ";
}else{
	echo '<a href="'.$_SERVER['PHP_SELF'].'?galerie='.$galerie.'&bid='.back($bid).'">< vorige Seite  </a>';
}

#############################

//Ausgabe Navigation
$row=$max;
$bildzahl = 0;
for($n=0;$n<=floor($row/6);$n++){
	echo " <a href=\"".$_SERVER['PHP_SELF']."?galerie=".$galerie."&bid=".$bildzahl."\" >";
	echo $n+1;
	echo "</a> ";
	$bildzahl+=6;
}

#############################
 
if (weiter($bid)>$max){
	echo " ";
}else{
	echo '<a href="'.$_SERVER['PHP_SELF'].'?galerie='.$galerie.'&bid='.weiter($bid).'">  nächste Seite ></a>';
}

echo "</td></tr></table>";

}


?>


Ach ja, und wenn mir das einer so hinbastelt wie ichs brauch gibts ne Flasche Bier :D oder auch 2 :D :D

lg DANKE!
Bearbeitet von Nightstalker am 05.09.2006, 23:48

Nightstalker

ctrl+alt+del
Avatar
Registered: Jan 2002
Location: .^.
Posts: 6957
Hat niemand ne Idee wie ich diese drei Bildblöcke auf "einen" reduzieren kann, ich fürcht das schaff ich allein nicht!!! :/

Ich brauch nur einen Block wo eine gewisse (möglichst frei definierbare) Anzahl Bilder nebeneinander stehen, so wie es jetzt auch (rein optisch) der Fall ist aber eben falsch weil er immer ein "linkes" und ein "rechtes" Bild nebeneinander stellt was die Reihnfolge in meinem Fall dann durcheinanderwürfelt.

.... danke ;)

Luzandro

Here to stay
Avatar
Registered: Mar 2006
Location: 2482
Posts: 708
Zitat von Nightstalker
damit die Bilder auch alphabetisch geordnet werden, jetzt ist es so dass er immer ein linkes und dann ein rechtes usw. nimmt und das ganze ziemlich wahllos, ich will dass er bei "0" anfängt bis "6" dann von "7" bis "12" usw. immer alphabetisch jeweils 6 Bilder nebeneinander.

Du könntest die Dateinamen in ein Array einlesen (das tust du glaub ich sowieso schon) und dieses sortieren

Zitat
Ich brauch nur einen Block wo eine gewisse (möglichst frei definierbare) Anzahl Bilder nebeneinander stehen, so wie es jetzt auch (rein optisch) der Fall ist aber eben falsch weil er immer ein "linkes" und ein "rechtes" Bild nebeneinander stellt was die Reihnfolge in meinem Fall dann durcheinanderwürfelt.

Versteh zwar nicht, was du mit "linkem und rechtem Bild" meinst, aber das Generieren eines Tables zum Anordnen entspricht ja dem Code von Cyber2k

Nightstalker

ctrl+alt+del
Avatar
Registered: Jan 2002
Location: .^.
Posts: 6957
Ich hab das jetzt alles auf das von mir gepostete Script bezogen, da wird ein Array erstellt ja, ob es sortiert wird, ich vermute schon er liest ja ohnehin den Ordner von oben nach unten durch also ist die Sortierung eh mehr oder minder automatisch da. Das ist noch nicht so der Punkt.

Linkes u. rechtes Bild bezieht sich auch auf das script und zwar auf den Teil wo eben ermittelt wird ob das Bild in der Spaltendarstellung links oder rechts erscheint denn so war das Script eigentlich ja mal gedacht.

Code: PHP
//Ausgabe in Tabellenform 
echo  "<table align=\"left\" width=\"800\" height=\"180\" cellspacing=\"5\" cellpadding=\"1\" border=\"0\">"; 
for($tmp = $bid; $tmp < $bid+6; $tmp++) { 

//Zähler für Bildnamenarray//Resizefunktion 
$x = $tmp; 
$y = $tmp; 
$z = $tmp; 

############################# 

//Bilderblock am Ende (wenn nicht 2 Bilder vorhanden) 

if($tmp==$max) { 
     
///Grösse feststellen 
     
      $files = $_SERVER['DOCUMENT_ROOT']."/".$bilder_orig[$z]; 
    $image = bildformat($files); 


        //Ausgeben der Bilder 
        echo "<td valign=\"top\" width=\"164\" height=\"89\"><div align=\"left\">"; 
        echo "<a href=\"java script:void(0)\" onClick=\" java script:bildanzeige('$bilder_orig[$z]','$image[
0]','$image[1]')\">"; 
        echo $bilder[$tmp]."</a>"; 
        echo "<br>"; 
        echo $titles[$x]; 
        echo "</div></td>"; 
        echo "<td width=\"160\"><div align=\"left\">"; 
        echo " "; 
        echo "</div></td>"; //</tr>"; 
     
unset($image); 
     
############################# 

        break; 
 }  
 else { 

      //Bilderblock Linke Seite 
    //Grösse der Bilder feststellen 
     
    $files = $_SERVER['DOCUMENT_ROOT']."/".$bilder_orig[$y]; 
if(is_file($files)) {//Damit nur angezeigt wird wenn es eine Bilddatei ist 
    $image = bildformat($files); 

        //Ausgabe der Bilder 
        echo "<td valign=\"top\" width=\"164\" height=\"89\"><div align=\"left\">"; 
        echo "<a href=\"java script:void(0)\" onClick=\"java script:bildanzeige('".$bilder_orig[$z]."','$image[0]','$image[1]')\">"; 
        echo $bilder[$tmp]."</a>"; 
        echo "<br>"; 
        echo $titles[$x]; 
        echo "</div></td>"; 
     
unset($image); 
     
} else break;//Damit nur angezeigt wird wenn es eine Bilddatei ist 

############################# 
     
    //Bilderblock Rechte Seite 
    //Grösse Feststellen     

    $files = $_SERVER['DOCUMENT_ROOT']."/".$bilder_orig[++$y]; 
    $image = bildformat($files); 
             
    //Ausgabe der Bilder 
        echo "<td valign=\"top\" width=\"164\" height=\"89\"><div align=\"left\">"; 
        echo "<a href=\"java script:void(0)\" onClick=\"java script:bildanzeige('".$bilder_orig[++$z]."','$image[0]','$image[1]')\">"; 
        echo $bilder[++$tmp]."</a>"; 
        echo "<br>"; 
        echo $titles[++$x]; 
        echo "</div></td>"; 

unset($image); 

     } 
} 

Der Teil definiert eben ob es links oder rechts steht und ob es das letzte Bild in der Reihe ist. Das brauch ich aber eigentlich nicht und daher (ich hab das ja vom HTML her schon so umgestellt dass die Bilder einfach nebeneinander stehen) würfelt er jetzt die Bilder durcheinander. Ich trau mich da aber nicht recht ran, ich glaub mit verändern allein bekomm ich das nicht gelöst sondern da müsst ich den Teil für die Anzeige irgendwie komplett neu machen aber ich möcht den Rest vom Script nicht wieder ändern und da bin ich ehrlich gesagt ziemlich überfordert atm weil ich unter Zeitdruck bin und mich da zusehr mit beschäftigen müsste.

Dachte es gibt wohl sicher Pros hier die das quasi aus dem FF lösen könnten oder mit zumindest soweit erklären können damit ichs selber schaff.

Mir fehlt (als nichtprogrammierer bzw. nicht so denkender) einfach der Zusammenhang, ich seh da so viele Vars, Operatoren und Funktionen dass ich nimmer recht weiß was was wie wo wann macht oder nicht.

Also nochmal, von der Ausgabe her stimmt das Script so will ichs haben ABER die Reihenfolge stimmt nicht (eben wegen dem oben geposteten Teil) Das muss so geändert werden dass dieses Bildbloc links, Bildblock rechts und Bildblock Ende einfach "eins werden" und es nurnoch eine Tabelle mit Bild 1 - n gibt (n = frei definierbar).

lg

Luzandro

Here to stay
Avatar
Registered: Mar 2006
Location: 2482
Posts: 708
Zitat von Nightstalker
Ich hab das jetzt alles auf das von mir gepostete Script bezogen, da wird ein Array erstellt ja, ob es sortiert wird, ich vermute schon er liest ja ohnehin den Ordner von oben nach unten durch also ist die Sortierung eh mehr oder minder automatisch da. Das ist noch nicht so der Punkt.

Nein, die Reihenfolge, in der readdir das Verzeichnis durchgeht, hat nichts mit den Dateinamen zu tun.
http://at.php.net/manual/de/function.readdir.php

Zitat
Der Teil definiert eben ob es links oder rechts steht und ob es das letzte Bild in der Reihe ist. Das brauch ich aber eigentlich nicht und daher (ich hab das ja vom HTML her schon so umgestellt dass die Bilder einfach nebeneinander stehen) würfelt er jetzt die Bilder durcheinander.

Achso, das soll eine waagrechte Leiste darstellen? Der Table hat einmal überhaupt keine Table Row, d.h. am Anfang/Ende gehört eigentl. ein <tr> bzw. </tr> hin. Und wie schon oben erwähnt sind die Dateien vermutlich sowieso schon "durchgewürfelt", wenn du das Array vorher nicht sortierst.

Um am wenigsten zu ändern:

statt

Code: PHP
//Bilder aus Verzeichnis auslesen 
$bilder = array(); 
$names = array(); 
$dir = opendir($pfad); 
while ($bild = readdir($dir)) { 
    if ($bild != '.' && $bild != '..' && $bild != 'prev.jpg') { 
        //Dateinamen Array 
        $names[] = $bild; 
         
        //Bildertitel Array (Bildername ohne Extensions) 
        $titel = explode(".",$bild); 
        $titles[] = $titel[0]; 
         
        //Bilder Array (Komplette Imagetags) 
          $image = bildformat($files); 
        $bilder[] = '<img src="thumb.php?src='.$thumbdir.'' . $bild.'&wmax=154&hmax=130&quality=50&bgcol=FFFFFF" class="rahmen">'; 
         
        //Bilderpfade 
        $bilder_orig[] = $pfadbild.$bild; 
    } 
} 
closedir($dir);

folgendes:

Code: PHP
//Bilder aus Verzeichnis auslesen 
$bilder = array(); 
$names = array(); 
$dir = opendir($pfad); 
while ($bild = readdir($dir)) { 
    if ($bild != '.' && $bild != '..' && $bild != 'prev.jpg') { 
        //Dateinamen Array 
        $names[] = $bild; 
    }
}
sort($names);

foreach ($names as $index => $bild) {
        //Bildertitel Array (Bildername ohne Extensions) 
        $titel = explode(".",$bild); 
        $titles[] = $titel[0]; 
         
        //Bilder Array (Komplette Imagetags) 
          $image = bildformat($files); 
        $bilder[] = '<img src="thumb.php?src='.$thumbdir.'' . $bild.'&wmax=154&hmax=130&quality=50&bgcol=FFFFFF" class="rahmen">'; 
         
        //Bilderpfade 
        $bilder_orig[] = $pfadbild.$bild; 
}
closedir($dir);

und statt dem Block, den du vorhin gepostet hast:

Code: PHP
//Ausgabe in Tabellenform  
echo  "<table align=\"left\" width=\"800\" height=\"180\" cellspacing=\"5\" cellpadding=\"1\" border=\"0\"><tr>";
for($tmp = $bid; $tmp < $bid+6; $tmp++) {  

    //Grösse der Bilder feststellen  
      
    $files = $_SERVER['DOCUMENT_ROOT']."/".$bilder_orig[$tmp];  
if(is_file($files)) {//Damit nur angezeigt wird wenn es eine Bilddatei ist  
    $image = bildformat($files);  

        //Ausgabe der Bilder  
        echo "<td valign=\"top\" width=\"164\" height=\"89\"><div align=\"left\">";  
        echo "<a href=\"java script:void(0)\" onClick=\"java script:bildanzeige('".$bilder_orig[$tmp]."','$image[0]','$image[1]')\">";  
        echo $bilder[$tmp]."</a>";  
        echo "<br>";  
        echo $titles[$tmp];  
        echo "</div></td>";  
      
unset($image);  
      
} else break;//Damit nur angezeigt wird wenn es eine Bilddatei ist  

}
echo "</tr>";

Nightstalker

ctrl+alt+del
Avatar
Registered: Jan 2002
Location: .^.
Posts: 6957
Oh da hab ich gepfuscht was... naja egal es hat ja funktioniert, das war erstmal wichtig.

Ich werd deine Schnippel dann ausprobieren und hoff dass es so klappt wie wir uns das vorstellen ich sag dir dann bescheid.

Herzlichen Dank schonmal für die große Mühe, hast mir schon sehr geholfen!

lg

Nightstalker

ctrl+alt+del
Avatar
Registered: Jan 2002
Location: .^.
Posts: 6957
So, update:

ES FUNZT ;) Noch ein paar Anpassungen und etwas Feinschliff gemacht und jetzt schaut das genau so aus wie ich wollte, irgendwie hab ich zu kompliziert gedacht, danke Luzandro. Weiß ja warum ich kein Programmierer geworden bin *gg*

So nun muss ich aber auch mein Versprechen einlösen, Luzandro, wo wohnst du? Bist du mal in Wien oder Klagenfurt oder in der Nähe von Wien? Ansonsten PM mir mal deine Adresse und ich schick dir ein 6pack ;) oder was andres wie du magst.

Ich steh zu meinem Wort, das ist jedenfalls fix.

dosen

Here to stay
Avatar
Registered: Feb 2003
Location: Wien
Posts: 5653
ist zwar schon gelöst, hätte das aber anders gemacht.
einfach mit divs und floatleft.

http://hobby-fotografen.com/div.html

bilder stehen nebeneinander, die reihenfolge wird einfach weitergeführt usw. (hoffe das ich dich jetzt richtig verstanden habe). wenn man die tabelle verkleinert (einfach mal das browserfenster kleiner machen) reihen die divs auch nach.

ps: hab das in unter 5 minuten zusammengeschrieben - sind bestimmt fehler drinnen... habs gach mitn firefox getestet und da funzt es :D

Nightstalker

ctrl+alt+del
Avatar
Registered: Jan 2002
Location: .^.
Posts: 6957
hm, auch nicht uninteressant, in diesem Fall allerdings, was du ja nicht unbedingt wissen konntest (außer du hast den kompletten Code analysiert) aber nicht wirklich notwendig/sinnvoll. Meine Bilder werden in einem Pupup Fenster mit fester größe angezeigt, da soll nix weiterrücken oder so. Es soll zwar variabel einstellbar sein WIEVIELE Bilder in einer Reihe bzw. auf einer Seite angezeigt werden aber es sollen immer alle auf der einen Seite Platz haben.

dosen

Here to stay
Avatar
Registered: Feb 2003
Location: Wien
Posts: 5653
naja - das du sie aufpoppen lässt ist mir schon klar (code aber nur überflogen) - ich meinte eher das es etwas für die thumbs ist... aber wenn sie nur auf einer seite angezeigt werden sollen - nicht nötig.

Nightstalker

ctrl+alt+del
Avatar
Registered: Jan 2002
Location: .^.
Posts: 6957
die Thumbs poppen auch herum :D

Also von der Struktur siehts so aus:

Index > galerieauswahl > galeriefenster mit thumbs (pupup) > großes Bild (popup)

However, es geht jetzt und das ist gut so ;)

Nightstalker

ctrl+alt+del
Avatar
Registered: Jan 2002
Location: .^.
Posts: 6957
hehe war ja klar dass da noch was kommt... mist.

Noch einmal brauch ich ne Sortierung, das Problem diesmal, es gibt kein Array, ok das bring ich noch hin aber wie les ichs dann richtig aus?

Code: PHP
//Das ist mein Array sollte passen?
$galnames = array(); 

//Das ist der Code, der funkt
if ($galerie==""){
$verz=opendir ($_SERVER['DOCUMENT_ROOT']."$pfaddir/");
while ($files = readdir ($verz)) {
	 if($files!= "." && $files!= ".." ) {

		echo "<td width=\"100\" valign=\"top\">";
		echo "<a href=\"javascript:startPopup1('".$_SERVER['PHP_PARENT'].$sitedir."galleryload.php"."?galerie=".$files."')\"><img src=\"$pfaddir/".$files."/prev.jpg\" width=\"50\" height=\"50\" alt=\"$files\" align=\"top\"></a>" ; 
		echo "<br>";
	  	echo "<a href=\"javascript:startPopup1('".$_SERVER['PHP_PARENT'].$sitedir."?galerie=".$files."')\">$files </a>";
		echo "</td>";

	 	 }
		
	 }

So nun gibts ein Array, da ist auch das drinn was ich will, ich kanns auch sortieren klar, mit sort($galnames)

Nun hab ich nurnoch das Problem dass ich das Array ja auch richtig auslesen muss, es sollte dann, wie auch bei den Bildern, eine Galerie nach der andren mit Bild (prev.jpg) und Titel (Ordnername) und entsprechendem Link (der dem Titel enrsprechen sollte da es ein Ordner ist aber egal) angezeigt werden.

Ich denk als 1. muss ich mal das Array füllen, in meiner naivität und zugegebenen einfachen Denkweise müsste das so aussehen:

$galnames[] = $files;

So und nun muss ich es sortieren

sort($galnames);

Und dann muss ich irgendwie anstelle von $files in meinem Script den jeweils richtigen Wert aus dem Array bekommen also manuell kein Problem
$files[1], $files[2] usw. usf.

Nun soll das aber natürlich automatisch gehen denn die Ausgabe funktioniert ja automatisch, dazu muss ich wohl irgendwie den Wert der in [] sehen soll in eine Var. packen so wie es bei den Bildern auch passiert und da steh ich an, den code bei den Bildern kapier ich nämlich nicht ganz:

Code: PHP
foreach ($names as $index => $bild) { 
        //Bildertitel Array (Bildername ohne Extensions)  
        $titel = explode(".",$bild);  
        $titles[] = $titel[0];  
          
        //Bilder Array (Komplette Imagetags)  
          $image = bildformat($files);  
        $bilder[] = '<img src="thumb.php?src='.$thumbdir.'' . $bild.'&wmax=154&hmax=130&quality=50&bgcol=FFFFFF" class="rahmen">';  
          
        //Bilderpfade  
        $bilder_orig[] = $pfadbild.$bild;  
} 
closedir($dir);
 
//Anzahl der elemente im bilder array z‰hlen
$max = count($bilder)-1;

################################

//Ausgabe in Tabellenform   
echo  "<table align=\"left\" width=\"800\" height=\"180\" cellspacing=\"5\" cellpadding=\"1\" border=\"0\"><tr>"; 
for($tmp = $bid; $tmp < $bid+6; $tmp++) {   

usw.

Da gibts einmal diese Stelle:
foreach ($names as $index => $bild) {
//Bildertitel Array (Bildername ohne Extensions)
$titel = explode(".",$bild);
$titles[] = $titel[0];
Das generiert aus dem Array dass ja einen Dateinamen mit Endung enthält einen Titel wo eben keine Endung drann ist, nur WIE und WARUM versteh ich nicht, das ist ein grundlegendes Problem bei mir, solang ich WIE und WARUM nicht kenne kann ich nix mit anfangen, was macht diese $index und was => ?

Und dann wird $tmp definiert, die steht ja für die Position im Array die gelesen werden soll aber spätestens jetzt raucht mir der Kopf.

Also nochmal, ich will bei der Ausgabe der Galerien (ganz oben der code) einfach eine Sortierung haben, vielleicht, was ganz schön wär auch so zum blättern aber das is nicht so wichtig soviele Galerien gibts nicht.

:kopfqualm:

Luzandro

Here to stay
Avatar
Registered: Mar 2006
Location: 2482
Posts: 708
Zitat von Nightstalker
Da gibts einmal diese Stelle:
foreach ($names as $index => $bild) {
//Bildertitel Array (Bildername ohne Extensions)
$titel = explode(".",$bild);
$titles[] = $titel[0];
Das generiert aus dem Array dass ja einen Dateinamen mit Endung enthält einen Titel wo eben keine Endung drann ist, nur WIE und WARUM versteh ich nicht, das ist ein grundlegendes Problem bei mir, solang ich WIE und WARUM nicht kenne kann ich nix mit anfangen, was macht diese $index und was => ?

Google "php foreach" liefert als ersten Hit die entspr. PHP-Doku:
http://de.php.net/foreach
(und ja, index und => ist in diesem Fall unnötig)

Das mit dem Titel herausfiltern war auch schon immer so in deinem Code und sollte mit der Doku verständlich sein:
http://de.php.net/manual/de/function.explode.php

$titles[] = blarb ist einfach eine eigene Syntax um etwas an das Array titles anzuhängen
Kontakt | Unser Forum | Über overclockers.at | Impressum | Datenschutz