Dennis: copy() geht nicht

Beitrag lesen

Hi Daniel,

Warning: copy(/tmp/php2UshXV): failed to open stream: Permission denied in <mein php script> on line 61

woran liegt das? darf ich auf den erstellten ordner tmp nicht zugreifen?

Du willst eine Datei von /tmp/php2UshXV kopieren - wohin? In dem Ordner, wo es es hin kopieren willst, hat dein PHP Script keine Schreibrechte.

sollte ich lieber move_uploaded_file() benutzen?

Abgesehen davon, dass du durch das verwenden einern anderen Funktion nicht mehr Rechte bekommst ;-) solltest du diese Funktion auf jeden Fall verwenden, da hier gleich noch geprüft wird, ob die Datei eine upgeloadete Datei ist und du somit Attacken noch etwas vorbeugen kannst.

Wie muss ich die rechte einstellen? wie kann ich diese ändern? läuft lokal auf nem Linux

Die Rechte musst du so einstellen, dass der Benutzer unter dem dein Script ausgeführt wird (kann apache, wwwrun oder wenn der Server richtig[tm] aufgesetzt ist ein eigener Benutzername von dir sein) Schreibrechte auf das Verzeichnis hat.

Du kannst die Rechte z.B. mit deinem FTP Programm setzen. I.d.R. gibts da sowas wie Rechtsklicke -> Eigenschaften / Chmod.

MfG, Dennis.

--
Mein SelfCode: ie:{ fl:( br:> va:) ls:[ fo:) rl:( n4:# ss:) de:] js:| ch:{ sh:| mo:} zu:|
Auf viele Fragen weiß auch Wikipedia eine Antwort.