Gallery Script

Status
Nicht offen für weitere Antworten.

judicious

Gesperrt
Hilfe ich komme nicht mehr weiter mit diesem Script:
Mein Problem ist es wenn ich das Script in den selben Ordner tue wie die Bilder dann funktioniert ja alles wunderbar, wenn ich aber dieses File include dann zeigt es keine Bilder mehr an was mir au kalr ist wieso: die struktur auf dem Server ist nähmlich
v2/gallery.php --> hier sollte das script included werden
v2/images/script.php --> hier ist das Script das die Bilder anzeigt
v2/images/ --> hier sind die Bilder

Wenn ich also das script über die url/v2/images/script.php aufrufe zeigt es schön alle Bilder an, wenn ich aber das File gallery.php aufrufe wo das script included wird zeigt es keine mehr an was ja klar ist weil die Bilder nicht in diesem Ordner sind:
Meine Frage nun wie kann ich das Script um schreiben das das Script die Bilder aus dem Ordner Images anzeigt ?

Code:
<?php 
error_reporting(0);

$handle=opendir("."); 
while ($file = readdir($handle))
{ 
  if ($file != "." && $file != "..")
  { 
    $picinfo = @getimagesize($file);
    if ($picinfo !== false)
    {
      if(file_exists("tnails/$file"))
      {
        $lol = 1;
      }
      else
      {   
        $size=getimagesize("$file");
        $breite=$size[0];
        $hoehe=$size[1];
        $neueBreite=120;
        $neueHoehe=intval($hoehe*$neueBreite/$breite);

        $altesBild=ImageCreateFromJPEG("$file");
        if ($altesBild == "")
        {
          $altesBild=ImageCreateFromGif("$file");
        }
        if ($altesBild == "")
        {
          $altesBild=ImageCreateFromPng("$file");
        }    
        if ($altesBild == "")
        {
          $altesBild=ImageCreateFromwbmp("$file");
        }
    
        $neuesBild=ImageCreateTrueColor($neueBreite,$neueHoehe);
        ImageCopyResampled($neuesBild,$altesBild,0,0,0,0,$neueBreite,$neueHoehe,$breite,$hoehe);
        $wechseln=chdir("tnails");
        ImageJPEG($neuesBild,"$file");
        $wechseln=chdir("..");
      }
      $img_x = $picinfo[0];
      $img_y = $picinfo[1];
      echo "<a href=# ONCLICK=window.open('$file','buddy','width=$img_x,height=$img_y,toolbar=0,location=0,directories=0,status=0,menubar=0,scrollbars=0,resizable=0,copyhistory=0')><img width=110 height=83 src=tnails/$file border=0></a>&nbsp;&nbsp;&nbsp;";    
    }    
  }  
}
closedir($handle);



$wechseln=chdir("tnails");
$handle=opendir("."); 
while ($file = readdir($handle))
{ 
  if ($file != "." && $file != "..")
  { 
    $picinfo = @getimagesize($file);
    if ($picinfo !== false)
    {
      $wechseln=chdir("..");
      if(file_exists("$file"))
      {
        $wechseln=chdir("tnails");
      }
      else
      {
      $wechseln=chdir("tnails");
      unlink($file);
      }
    }    
  } 
}
closedir($handle);

?>

Vielen Dank schon mal im voraus
 
Du musst die Pfade ausgehend vom Verzeichnis v2/ ausgehend anpassen.
Schau mal, ob es so funktioniert:
PHP:
<?php 
error_reporting(0);

$handle=opendir("images"); 
while ($file = readdir($handle))
{ 
  if ($file != "." && $file != "..")
  { 
    $picinfo = @getimagesize($file);
    if ($picinfo !== false)
    {
      if(file_exists("images/tnails/$file"))
      {
        $lol = 1;
      }
      else
      {   
        $size=getimagesize("$file");
        $breite=$size[0];
        $hoehe=$size[1];
        $neueBreite=120;
        $neueHoehe=intval($hoehe*$neueBreite/$breite);

        $altesBild=ImageCreateFromJPEG("$file");
        if ($altesBild == "")
        {
          $altesBild=ImageCreateFromGif("$file");
        }
        if ($altesBild == "")
        {
          $altesBild=ImageCreateFromPng("$file");
        }    
        if ($altesBild == "")
        {
          $altesBild=ImageCreateFromwbmp("$file");
        }
    
        $neuesBild=ImageCreateTrueColor($neueBreite,$neueHoehe);
        ImageCopyResampled($neuesBild,$altesBild,0,0,0,0,$neueBreite,$neueHoehe,$breite,$hoehe);
        $wechseln=chdir("tnails");
        ImageJPEG($neuesBild,"$file");
        $wechseln=chdir("..");
      }
      $img_x = $picinfo[0];
      $img_y = $picinfo[1];
      echo "<a href=# ONCLICK=window. open('$file','buddy','width=$img_x,height=$img_y,toolbar=0,location=0,directories=0,status=0,menubar
=0,scrollbars=0,resizable=0,copyhistory=0')><img width=110 height=83 src=tnails/$file border=0></a>   ";    
    }    
  }  
}
closedir($handle);



$wechseln=chdir("images/tnails");
$handle=opendir("."); 
while ($file = readdir($handle))
{ 
  if ($file != "." && $file != "..")
  { 
    $picinfo = @getimagesize($file);
    if ($picinfo !== false)
    {
      $wechseln=chdir("..");
      if(file_exists("$file"))
      {
        $wechseln=chdir("images/tnails");
      }
      else
      {
      $wechseln=chdir("images/tnails");
      unlink($file);
      }
    }    
  } 
}
closedir($handle);

?>
 
re

Leider nein
Das habe ich auch schon einmal porbiert, ich habe die Pfade auch schon mal absolut eingegeben hilft aber alles nicht sobald das Script nicht mehr im selben Ordner ist es nichr mehr :(
 
1) Was hält dich davon ab, die script.php aus dem Bilderverzeichnis rauszunehmen? Das hätte ausßerdem den Vorteil, dass in dem Verzeichnis wirklich nur Bilder drin sind.

2)
PHP:
$handle=opendir(".");
Das muss definitiv so aussehen
PHP:
$handle=opendir("images/");
 
re

Das Problem ist das ich das Script includen will und da das File in einem anderen Ordner ist, ist logischerweise der Script Pfad nicht mehr der selbe.
gallery.php --> included das script
das script ist aber im ordner
images/script.php --> tnails ordner ist auch in diesem Ordner

Da es ja included wird stimmen die Pfade nicht mehr!
Eigentlich brauche ich ein Script welches die Bilder aus einem Ordner ausliest!
 
Lies dir bitte durch, was wir geschrieben haben, die Lösung wurde dir bereits zweimal mitgeteilt. Bitte informiere dich außerdem darüber wie [phpf]include[/phpf] arbeitet.
 
re

Und was soll mir diese Antwort nun bringen?
kann ich alle Files includen?
oder einen require machen ? ich habe das schon alles probiert und es funktioniert nicht! ansonsten würde ich ja nicht hier hineinschreiben
 
v2/gallery.php --> hier sollte das script included werden
v2/images/script.php --> hier ist das Script das die Bilder anzeigt
v2/images/ --> hier sind die Bilder
Ausgehend von dieser Information musst du nichts weiter tun, als statt
PHP:
$handle=opendir(".");
folgendes
PHP:
$handle=opendir("images/");
zu nutzen.
Außerdem wäre es ganz praktisch, wenn du das error_reporting(0) mal wegnehmen würdest, dann würde das Script nämlich auch Fehlermeldungen ausgeben, die zum Debuggen immer sehr praktisch sind :rolleyes:
 
re

Das funktioniert leider auch nicht es gibt nicht mal einen Error aus, auch nicht nachdem ich
error_reporting(0); auf 1 gestellt habe und auch nicht nachdem ich es ganz weg gelöscht habe.
kann man nicht irgend wie mit chdir() und dann was includen und dann wieder zutück chdir()

also:
htmlcode...
..............
Code:
<?php 
chdir(images);
include(script.php);
chdir(.);
?>
 
Status
Nicht offen für weitere Antworten.
Zurück