Hallo.
Ich möchte mit PHP eine Datei (CHMOD 777) von meinem Server löschen lassen.
Diese Datei liegt in einem Verzeichnis darüber, dann im Verzeichnis data/content, also ../data/content.
Das Script sieht so aus :
Die URL lautet index.php?content=delete_do&file_del=test.php.
Es wird angezeigt, dass die Datei gelöscht wurde, sie existiert aber noch
Banale Lösung: Hat dein Server PHP <? deaktiviert, wodurch das ganze als HTML tag angesehen wird und daher nicht angezeigt wird?
Hinweis: <?php funktioniert immer, nur das für guten Code nehmen
Komische Lösung: hast du den richtigen Pfad und Namen für die Datei angegeben?
Zitat
_del=tes t.php
...
Da wäre z.B. ein überflüssiges Leerzeichen, wie ich annehme.
Wissenswerte Lösung: Wenn ich mich richtig erinnere, muss die Datei, die den Löschbefehl enthält die richtigen CHMOD Werte besitzen, nicht andersrum.
Wie das Leerzeichen dahin gekommen ist, keine Ahnung, wenn ich den Beitrag editieren will, ises nich da o0 Also der Path stimmt, da hab ich schon mit var_dump nachgeschaut.
PHP hat mein Server auch aktiviert, sonst würde der Rest meines ACP ja nicht funzen ._.
Beide Dateien haben CHMOD 777, daran kanns auch nich liegen.
PHP vielleicht schon, aber nicht die Einleitung eines Codeblocks mit der kurzschreibweise <?, besser wäre <?php, aber wenn deine anderen Skripte trozdem funktioneiren kann es daran nicht liegen.
Eventuell könntest du noch versuchen, den absoluten Pfad der Datei anzugeben, weiter kann ich dann leider auch nicht helfen, da ich eigentlich nie mit diesen Funktionen arbeite.
Ah, fast übersehen (peinlich):
Variablen, die du über die URI angibt rufst du folgendermaßen auf: $_GET['name'], bei dir also: $_GET['file_del']. Ersetze deine drei Variblen durch die richtige Schreibweise.
Hm... also funktionieren tuts immernoch nicht T__T
Ich mach mal ne genaue Beschreibung :
Also. Man klickt auf ein kleines Bildchen, dessen Link folgender ist :
http://***/***/index.php?content=del...e_del=test.php
Denkt euch das Leerzeichen weg, dass steht da aus unbekanntem Grund, fehler von vB.
Dann kommt man auf die Seite content=delete, die folgendes Script hat :
Wenn man bestätigt, kommt man auf die Seite content=delete_do mit dem Script :
Die Datei test.php existiert und ist im Ordner ../data/content/. Es wird auch angezeigt, dass sie gelöscht worden ist, aber sie wurde halt nicht gelöscht. =_=
EDIT
YAAAAY, funzt!
Hatte vergessen, dem Contentordner CHMOD 777 zu geben ;_; THX @ mitaki $knuff