Datei löschen klappt nicht

Godstyle

Erfahrenes Mitglied
Hallo leute,

ich sitze leider wieder mal hier rum und komme nicht weiter, es sieht im internet so einfach aus doch ich schaffe es nicht.

Ich möchte lediglich eine Datei auf dem Server löschen.

es heißt unlick() könne dies und so habe ich mich das ersta mal daran versucht.

Hier mein script:

PHP:
			$pfad = "$row->userimg";
		 unlink($pfad);
		 $aendern = "UPDATE profildata 
				Set 
				userimg 		 = no_pic
				WHERE username = '".$_SESSION['user']."'";
				$update = mysql_query($aendern);
				echo $pfad ;
				#header ("Location: http://verino.cwsurf.de/community/profil/index.php?prof=11");


ich lasse mir den Pfad ausgeben um zu sehen was er speichert, header location soll später zu weiter leitung dienen ist also hier unwichtig.

Nun die fehlermeldung:

Warning: unlink(pro_img/Admin.JPG) [function.unlink]: No such file or directory in

sicher, es bedeutet das die datei oder der ordner nicht vorhanden ist.

Es der db wird folgender wert gelesen:

pro_img/admin.jpg


pro_img ist ein unterordner von profil und im ordner profil ist dieses Script.

hoffe man kann mir sagen wo der fehler liegt.

lg
 
Überprüfe nochmal, ob der Pfad stimmt.

Benutzt du vielleicht verschachtelte Includes? Dann könnte es daran liegen, denn es wird der Pfad des obersten Skripts genommen.

Yaslaw hatte dazu mal einen Artikel verfasst: http://wiki.yaslaw.info/wikka/PhpInclude

Übrigens brauchst du bei $pfad keine Anführungszeichen. Du kannst direkt $row->userimg benutzen.
 
Füge mal folgende Codezeile ein:
PHP:
echo dirname(__FILE__).'/'.$pfad;
Und prüfe, ob diese Datei mit diesem Pfad wirklich existiert (also per Explorer, etc.).
 
ok, scheinbar gibts da doch einen fehler, er gibt mir folgenden pfad an:

pro_img/Admin.JPG/home/www/cwcity/hosting/v/e/verino/htdocs/community/profil/pro_img/Admin.JPG

und ich bin ganz ehrlich, wie er das pro_img/....... schon am anfang haben kann ist für mich ein absolutes rätsel grade.

Wie gesagt, die datei wird nicht durch ein include oder ähnliches aufgerufen sondern als direktlink, woran könnte das nun liegen oder wie könnte ich es beheben?


änderung ab hier:

ich habe natürlich das alte echo $pfad; gegen deines ersetzt, daher rührt der fehler nicht.
 
Zuletzt bearbeitet:
schon am anfang haben kann ist für mich ein absolutes rätsel grade.
Du gibst doch vorher schon $pfad durch echo() aus, somit scheint es so, dass es allein durch die Codezeile von mir generiert wird.

Teste doch mal, ob der Pfad mit dirname(__FILE__)... (mein Post) mit [phpf]unlink[/phpf] funktioniert.
 
Ich hatte $pfad an einer früheren stelle schonmal daher der fehler.

dies ist das script da ich das echo rausgenommen hatte.

PHP:
			$pfad = "$row->userimg";
				 unlink($pfad);
				 $aendern = "UPDATE profildata 
				Set 
				userimg 		 = no_pic
				WHERE username = '".$_SESSION['user']."'";
				$update = mysql_query($aendern);
				echo dirname(__FILE__).'/'.$pfad;  
				#header ("Location: http://verino.cwsurf.de/community/profil/index.php?prof=11");

der pfad den er mir anzeigt ist richtig und ich kann das bild aufrufen über firefox.

Denoch wird es nicht gelöscht
 
sry hatte mich ein wenig verlesen, habe es nun eingefügt:

PHP:
			$pfad = "$row->userimg";
				 unlink(dirname(__FILE__).'/'.$pfad);
				 $aendern = "UPDATE profildata 
				Set 
				userimg 		 = no_pic
				WHERE username = '".$_SESSION['user']."'";
				$update = mysql_query($aendern);
				echo dirname(__FILE__).'/'.$pfad;  
				#header ("Location: http://verino.cwsurf.de/community/profil/index.php?prof=11");




dies ist das ergebniss:

Warning: unlink(/home/www/cwcity/hosting/v/e/verino/htdocs/community/profil/pro_img/Admin.JPG) [function.unlink]: No such file or directory in /home/www/cwcity/hosting/v/e/verino/htdocs/community/profil/pro_img.php on line 26
/home/www/cwcity/hosting/v/e/verino/htdocs/community/profil/pro_img/Admin.JPGAdmin
 
Zurück