Bild upload + Anzeige - Rechteproblem?

Einklappen
X
 
  • Filter
  • Zeit
  • Anzeigen
Alles löschen
neue Beiträge

  • Bild upload + Anzeige - Rechteproblem?

    Hallo,

    ich hab ein Upload Script der 1 Bild ca. 4 mal abspeichert in verschiedenen Größen und ein Logo drauf projeziert.

    Upload und Speichern funktioniert problemlos, doch das anschließende Anzeigen auf der Seite nicht.

    Nun hab ich via SSH den Besitzer geändert. Besitzer war vorher www-data, nun hab ich ihn auf web0 geändert. Siehe da, nun zeigt er auf der Seite auch mein Bild an.

    Doch wie kann ich das machen ohne über SSH die Änderung vorzunehmen? Wenn ich versuche chown im Script laufen zu lassen schreibt er mir das das Script mit einer anderen ID lauft als das Bild und bricht ab.

    Kann jemand helfen?

    Danke,

    Christoph

  • #2
    gib dem bild mit chmod einfach 666 auf den weg.
    INFO: Erst suchen, dann posten![color=red] | [/color]MANUAL(s): PHP | MySQL | HTML/JS/CSS[color=red] | [/color]NICE: GNOME Do | TESTS: Gästebuch[color=red] | [/color]IM: Jabber.org |


    Kommentar


    • #3
      Hi,

      hab ich schon versucht, bringt aber nichts. Er zeigt es mir einfach nicht an. Ich überprüfe bei der Suche mit is_file ob die Datei vorhanden ist, allerdings gibt er nur den Wert true zurück sobald der owner web0 ist, bei www-data liefert er false zurück.

      Chris

      Kommentar


      • #4
        die rechte des verzeichnisses sind auf 777 ?
        INFO: Erst suchen, dann posten![color=red] | [/color]MANUAL(s): PHP | MySQL | HTML/JS/CSS[color=red] | [/color]NICE: GNOME Do | TESTS: Gästebuch[color=red] | [/color]IM: Jabber.org |


        Kommentar


        • #5
          ja sind sie

          Kommentar


          • #6
            tja. dann musst du auf einen anderen warten, der dir helfen kann. im moment fällt mir spontan nichts weiter ein. zumal ich nur dies bei mir machen musste.
            INFO: Erst suchen, dann posten![color=red] | [/color]MANUAL(s): PHP | MySQL | HTML/JS/CSS[color=red] | [/color]NICE: GNOME Do | TESTS: Gästebuch[color=red] | [/color]IM: Jabber.org |


            Kommentar


            • #7
              Hier noch der Quellcode, vielleicht findet man hier was raus... ich bin derzeit ratlos...

              PHP-Code:
              <?php
              print_r
              ($_FILES);
              $bildcount=1;
              // Überprüfen ob Verzeichnise gelöscht oder erstellt werden müssen
              $dirtofile='/var/www/web0/html/beta/member_pics/nickpage/'.$_SESSION['uid'];
              if (!
              file_exists($dirtofile)) {
              mkdir('/var/www/web0/html/beta/member_pics/nickpage/'.$_SESSION['uid'], 0777);
              }
              $dirtofile='/var/www/web0/html/beta/member_pics/nickpage/'.$_SESSION['uid'].'/original';
              if (!
              file_exists($dirtofile)) {
              mkdir('/var/www/web0/html/beta/member_pics/nickpage/'.$_SESSION['uid'].'/original'0777);
              }
              $dirtofile='/var/www/web0/html/beta/member_pics/nickpage/'.$_SESSION['uid'].'/edited';
              if (!
              file_exists($dirtofile)) {
              mkdir('/var/www/web0/html/beta/member_pics/nickpage/'.$_SESSION['uid'].'/edited'0777);
              }
              $dirtofile='/var/www/web0/html/beta/member_pics/nickpage/'.$_SESSION['uid'].'/thumbs';
              if (!
              file_exists($dirtofile)) {
              mkdir('/var/www/web0/html/beta/member_pics/nickpage/'.$_SESSION['uid'].'/thumbs'0777);
              }
              $dirtofile='/var/www/web0/html/beta/member_pics/nickpage/'.$_SESSION['uid'].'/thumbs_original';
              if (!
              file_exists($dirtofile)) {
              mkdir('/var/www/web0/html/beta/member_pics/nickpage/'.$_SESSION['uid'].'/thumbs_original'0777);
              }
              $dirtofile='/var/www/web0/html/beta/member_pics/nickpage/'.$_SESSION['uid'].'/mini';
              if (!
              file_exists($dirtofile)) {
              mkdir('/var/www/web0/html/beta/member_pics/nickpage/'.$_SESSION['uid'].'/mini'0777);
              }
              $dirtofile='/var/www/web0/html/beta/member_pics/nickpage/'.$_SESSION['uid'].'/upload';
              if (!
              file_exists($dirtofile)) {
              mkdir('/var/www/web0/html/beta/member_pics/nickpage/'.$_SESSION['uid'].'/upload'0777);
              }
              $anzahl=1;
              while (
              $anzahl <= $bildcount


              $endung="jpg";
              // Datei auf Grösse kontrollieren 
              $maxsize 1024// KB 
              $maxsize $maxsize 1024// Umwandlung in Byte 

              // if ($_FILES['picture']['size'] > $maxsize) 
              // { 
              // header ("location: upload_error.php"); exit; 
              // } 

              // Datei verschieben 

              $diru "/var/www/web0/html/beta/member_pics/nickpage/1/upload/";
              $dir '/var/www/web0/html/beta/member_pics/nickpage/'.$_SESSION['uid'].'/edited/'
              $dirm '/var/www/web0/html/beta/member_pics/nickpage/'.$_SESSION['uid'].'/thumbs_original/'
              $dirmt '/var/www/web0/html/beta/member_pics/nickpage/'.$_SESSION['uid'].'/thumbs/'
              $dirm2 '/var/www/web0/html/beta/member_pics/nickpage/'.$_SESSION['uid'].'/original/'
              $dirm3 '/var/www/web0/html/beta/member_pics/nickpage/'.$_SESSION['uid'].'/mini/'

              if (
              $_FILES['picture']['size'] > "0"

              $filename=$_FILES['picture']['name']; 
              $oldname=$filename;
              move_uploaded_file($_FILES['picture']['tmp_name'], "$diru$filename"); 
              chmod ("$diru$filename"0644); 


              // Datei auf Typ kontrollieren und wenn nötig wieder löschen 

              $fileinfos getimagesize("$diru$filename"); 
              $type $fileinfos[2]; // 2 = JPG 

              if ($type != 2

              unlink("$diru$filename"); // Löschen 


              // Thumbnail erstellen 
              ////////////////////// 

              // Anmerkungen: 
              // 
              // $dir = Pfad für das Verzeichnis, in dem sich das upgeloadete Bild befindet 
              // $filename = dateiname.jpg 

              // Größe des Bildes auslesen 
              $size getimagesize($diru.$filename); 
              $width $size[0]; 
              $height $size[1]; 
              // Breite des Thumbnails festlegen (Höhe wird automatisch angepasst) 
              $width_tn 640
              $height_tn intval($height $width_tn $width); 
              $width_tn2 150
              $height_tn2 113;
              $width_tn3 80
              $height_tn3 60;
              $width_tn4 300
              $height_tn4 intval($height $width_tn4 $width); 
               
              // Bei GD < 2.0.1: ImageCreateTrueColor -> ImageCreate, ImageCopyResampled -> ImageCopyResized 
              $picture ImageCreateFromJPEG($diru.$filename); 
              $picture_tn ImageCreateTrueColor($width_tn,$height_tn); 
              ImageCopyResampled($picture_tn,$picture,0,0,0,0,$width_tn,$height_tn,$width,$height); 
              $picture2 ImageCreateFromJPEG($diru.$filename); 
              $picture_tn2 ImageCreateTrueColor($width_tn2,$height_tn2); 
              ImageCopyResampled($picture_tn2,$picture2,0,0,0,0,$width_tn2,$height_tn2,$width,$height); 
              $picture3 ImageCreateFromJPEG($diru.$filename); 
              $picture_tn3 ImageCreateTrueColor($width_tn3,$height_tn3); 
              ImageCopyResampled($picture_tn3,$picture3,0,0,0,0,$width_tn3,$height_tn3,$width,$height); 
              $picture4 ImageCreateFromJPEG($diru.$filename); 
              $picture_tn4 ImageCreateTrueColor($width_tn4,$height_tn4); 
              ImageCopyResampled($picture_tn4,$picture4,0,0,0,0,$width_tn4,$height_tn4,$width,$height); 

              // Thumbnail in $dir mit angepasstem $filename speichern, JPG Qualität: 80 
              ImageJPEG($picture_tn2,"$dirm$bildcount.$endung",80); 
              ImageJPEG($picture_tn,"$dirm2$bildcount.$endung",90); 
              ImageJPEG($picture_tn3,"$dirm3$bildcount.$endung",70); 
              ImageJPEG($picture_tn4,"$dir$bildcount.$endung",70); 
              chmod ("$dirm3$bildcount.$endung"0644); 

              // Bild mit aufgedrucktem Logo erstellen (liegt danach im Ordner edited)

              $background imagecreatefromjpeg("$dir$bildcount.$endung"); 
              $insert imagecreatefromgif("images-cms/vorlagen/show.gif"); 

              // Either a color at a specific point on the image 
              // imagecolortransparent($insert,imagecolorat($insert,0,0)); 
              // or a specific color (the color I used is magenta, #ff00ff) 
              imagecolortransparent($insert,imagecolorexact($insert,255,0,255)); 

              $insert_x imagesx($insert); 
              $insert_y imagesy($insert); 

              // As said above, you can't use imagecopy (bug?) 
              imagecopymerge($background,$insert,0,0,0,0,$insert_x,$insert_y,100); 

              // imagejpeg or imagepng doesn't matter here 
              imagejpeg($background,"$dirmt$bildcount.$endung",85); 

              // Bild mit aufgedrucktem Logo erstellen (liegt danach im Ordner edited)

              $background imagecreatefromjpeg("$dir$bildcount.$endung"); 
              $insert imagecreatefromgif("images-cms/vorlagen/pic_stamp.gif"); 

              // Either a color at a specific point on the image 
              // imagecolortransparent($insert,imagecolorat($insert,0,0)); 
              // or a specific color (the color I used is magenta, #ff00ff) 
              imagecolortransparent($insert,imagecolorexact($insert,255,0,255)); 

              $insert_x imagesx($insert); 
              $insert_y imagesy($insert); 

              // As said above, you can't use imagecopy (bug?) 
              imagecopymerge($background,$insert,0,0,0,0,$insert_x,$insert_y,50); 

              // imagejpeg or imagepng doesn't matter here 
              imagejpeg($background,"$dir$bildcount.$endung",85); 


              // Temporären Speicher auf Server wieder frei geben
              $filetyp=jpg
              $oldname2 explode ("."$oldname); 
              $tn "_tn."
              // unlink("$diru$oldname");
              ImageDestroy($picture); 
              ImageDestroy($picture_tn); 
              ImageDestroy($picture_tn2);
              ImageDestroy($picture_tn3);
                { 
              $anzahl++;
                
                } 
              // rmdir("$diru");
              }

              ?>

              Kommentar


              • #8
                Ich muss noch dazu sagen das er mich nichtmal eine Datei hochladen lässt wenn ich den Upload Ordner auf www-data habe.

                Ich hab ihn zu Testzwecken auf owner web0 gesetzt, denn nur so kann das Script auf ihn zugreifen.

                Kommentar


                • #9
                  Habe jetzt den safe_mode = OFF gestellt. Jetzt funktioniert alles problemlos.

                  Kommentar

                  Lädt...
                  X