[PHP] Uploadfehler

flaschenkind

Well-known member
ID: 118459
L
20 April 2006
4.507
337
Ich habe ein Bilduploadscript. Funktioniert auch alles super, sogar der Upload. Nur wenn man über den FTP die Bilder downloaden will, dann klappt das nicht :ugly:
Dann kommt ein Kritischer Transferfehler.
Das habe ich jetzt auf 3 Server getestet.
Hier mal der Code:
PHP:
      $kleine = array('a','b','c','d','e','f','g','h','i','j','k','l','m','n','o','p','q','r','s','t','u','v','w','x','y','z'); 
      $grosse = array('A','B','C','D','E','F','G','H','I','J','K','L','M','N','O','P','Q','R','S','T','U','V','W','X','Y','Z'); 
      $zahlen = array('0','1','2','3','4','5','6','7','8','9'); 
      $array = array_merge($kleine,$zahlen); 
      $array = array_merge($array,$grosse); 
      for ($i=0;$i<20;$i++){ 
        shuffle($array);
        $rand = mt_rand(0,count($array));
        $name .= $array[$rand];
      }
      $endung = explode('.', $_FILES['image']['name']);
      $endung = $endung[count($endung)-1];
      $size = getimagesize($_FILES['image']['tmp_name']);
      $datei = $sql->data('bild_ordner').$name.'.'.$endung;
      move_uploaded_file($_FILES['image']['tmp_name'], $datei);

Ich generiere einen 19 stelligen Zufallnamen und dann setze ich die Endung dahinter. Mit PHP kann ich die Bilder auch problemlos ausgeben :roll:
Wieso kann ich die aber über FTP nicht runterladen :(
 
Hat auch eigentlich nicht, aber vllt war ja doch ein Fehler in meinem Code :evil:
Ich nutze Filezilla. Hier mal ein Screen:
Klick mich ich bin ein Link

Ich habe das bei zwei Services getestet und in meiner Verkaufsdemo. Sind alles unterschiedliche Server, überall der selbe Fehler :-?
 
550 bla.JPG: Permission denied
;)

Du hast keine Rechte eingeräumt. Meines Wissens müsste mindestens WorldRead gesetzt sein.
-rw------- => -rw----r--
wohl besser:
-rw------- => -rw-r--r--

(Alle Angaben ohne Gewähr, UNIX-Filesystem bin ich kein Meister)
 
;)

Du hast keine Rechte eingeräumt. Meines Wissens müsste mindestens WorldRead gesetzt sein.
-rw------- => -rw----r--
wohl besser:
-rw------- => -rw-r--r--

(Alle Angaben ohne Gewähr, UNIX-Filesystem bin ich kein Meister)
oO das kann natürlich sein. Dann muss ich da halt mal ein umask() in mein Script setzen und bei den vorhandenen Dateien den CHMOD ändern.
Ich teste es mal, thx :D

Der CHMOD lässt sich über FTP nicht ändern :(
Für die neuen Bilder isses ja kein Problem, aber was mach ich mit den vorhandenen jetzt?
 
Der CHMOD lässt sich über FTP nicht ändern :(
Für die neuen Bilder isses ja kein Problem, aber was mach ich mit den vorhandenen jetzt?
Die Dateien wurden über das Script erzeugt, ergo hat der FTP-User keinen Zugriff.
Du musst auch die alten Dateien über das Script umCHMODen, dann dürfte es gehen.
 
Safe Mod = on :(
Aber da werden wir schon ne Lösung finden.

so nen problem hatte ich auch mal, ich weiß net mehr was genau die lösung war aber habe 2 möglichkeiten:
1. das speichern der datei auf dem server habe ich über irgendeine andere funktion gelöst und da gings dann (wars glaube ich net)
2. safemode ausschalten, da das ganze safe_mode konzept deinen prozess zu nicht machte
(3. auf PHP6 warten, da gibt es dann kein safemode mehr sondern nur noch die open_basedir-restricton^^)
 
Der Käufer, der den Server wechseln will, hat zum Glück nen eigenen. Der schaltet dann den Safe Mod off und ich gebe ihm ein Script, womit es geht. Und an alle anderen Käufer schicke ich die Tage einen Newsletter raus ;)
 
so nen problem hatte ich auch mal, ich weiß net mehr was genau die lösung war aber habe 2 möglichkeiten:
1. das speichern der datei auf dem server habe ich über irgendeine andere funktion gelöst und da gings dann (wars glaube ich net)

Man könnte das ganze über die PHP-Ftp-Funktionen lösen (Upload,Setzen der Zugriffsreche etc).