Löschlink gesucht!

Hallo zusammen.

Ich habe mich mal versucht an einem Upload Script.
Kein Problem bis jetzt.
Doch nun möchte ich, wenn jemand eine Datei eingestellt hat, das er diese auch wieder löschen kann.
Im Klartext: ich möchte wenn mein benutzer die Datei erfolgreich hochgeladen hat, das auf der gleichen Seite wo der Link zur Datei steht dann auch der löschlink sieht…

PS: Auf dem Server wo die Dateien drauf liegen wird mir der Befehl „unlink“ :evil:verboten:evil:!!!

Hoffe ihr könnt mir helfen - konnten andere Foren nämlich nicht,

Mit freundlichen Grüßen
Speed-bit

Hallo,

eine andere Möglichkeit wäre die Datei über FTP zu löschen. Dafür muss aber das FTP Modul für PHP aktiviert sein.

N43

???

Erstmal danke für die schnellste Antwort die ich überhaupt in einem Forum bekommen habe.

Nun ist die Frage 1:

Was muss mein Server mitbringen/erfüllen um damit ich dies ausführen kann.

Frage 2:

Wie macht man es:?::smile:

Hallo,

les dir dazu am besten mal die Erklärung auf php.net durch. Hab das selber noch nie probiert.

Laut Einleitung muss PHP mit dem FTP Flag kompiliert worden sein. Erstell dir dazu mal das folgende Script:<?php phpinfo(); ?>Wenn du auf der Seite irgendwo FTP findest wird es dabei sein.

N43

probier einfach aus ob es geht:
[PHP]

<?php $server = "87.118.88.54"; $user = "ftpuser"; $password = "passwd"; $connection = ftp_connect($server); if(!$connection) die("Verbindung fehlgeschlagen"); $login = ftp_login($connection,$user,$password); if(!$login) die("Login fehlgeschlagen"); $delete = ftp_delete($connection,"file_to_delete.txt"); if(!$delete) die("Löschen fehlgeschlagen"); ftp_close($connection); ?>

[/PHP]

danke danke!

Ich habe jetzt eine Möglichkeit gefunden wie es funktioniert,
Danke ich bin jetzt seit 3 Wochen auf der suche nach diesem dreck.
Keiner konnte mir bisher helfen. Danke noch.

Doch noch ne Frage

<?php $file = $_POST['file']; $user = "user"; $password = "Password"; $connection = ftp_connect("ftp://htmlmasters.hu.funpic.de"); if(!$connection) die("Verbindung fehlgeschlagen"); $login = ftp_login($connection,$user,$password); if(!$login) die("Login fehlgeschlagen"); $delete = ftp_delete($connection,"$file"); if(!$delete) die("Löschen fehlgeschlagen"); ftp_close($connection); ?>

Dann kommt diese Fehlermeldung:

Fatal error: Call to undefined function: ftp_connect() in /usr/export/www/vhosts/funnetwork/hosting/htmlmasters/UploadScript/delete.php on line 14

Dann kann dein Server diese Funktion eben nicht ausführen.
PS: Variablen brauchst du nicht mit " ummanteln :wink:

Re:

Aso, also gibt es keine weiteren möglichkeiten???

Versuch´s doch mit einer Datenbank (wenn dein Server das unterstützt)

Re:

Ja das unterstützt der.
Nun gibt ein weiteres Problem, dass wäre nämlich das ich nicht weis wie man mit Datenbanken umgeht.
Wäre cool wenn du oder jemand anders mir ein link oder ähnlichen geben würde.

PS: Ich stelle mir mit der Datenbank so vor, dass wenn ich eine Datei hinzufüge(auf den Server und der Datenbank), dass die Datenbank diese nur „sich merkt“. Und wenn ich sie löschen will dann muss die Datenbank das denn für mich ausführen(Datei löschen).

Also muss ich auch alle Datein die hochgeladen wurden, in die Datenbank schreiben…

Tut mir leid das ich euch diese Fragen stelle, nur ich kenn mich mit diesem thema null aus…

if (Speedbit+Datenbank = 1 )
then
(uploadscript = uploadscript +1)
else
(uploadscript = uploadscript - 1);

Wenn du bei funpic.de oder sowas bist, musst du nur im Usermenü MySQL
anklicken, dann kommst du zu PHPmyAdmin, womit du „Datenbanken per Knopfdruck erstellen“ kannst (ohne Vorkenntnisse).

das problem dabei wird nur, dass du die daten, da du sie ja wieder löschen willst, und es kein unlink gibt, direkt in der Datenbank speichern musst.

Dazu gibt es zwar das Feld Blob (soweit ich weiß), ist aber keine wirklich gute Lösung. Hier steht allerdings dass es auch ohne Blob geht PHP: Dateien in mySQL-Tabelle speichern - Artikel von www.it-academy.cc - Verein für Informationstechnologie xD

danke

danke für die schnelle antwort… ich werde das denn ma jetzt ausprobieren

:frowning:

Ne klappt leider alles nichts… ich habe nochmal den anbieter von Funpic angesprochen, und der hat mir halt gesagt, ich zetiere:" Es gibt keine möglichkeiten über irgenteiner art von scripten/(Server seitigen) Programmiersprachen ein dokument/Datei zu löschen.

Aber, wenn du den Binärcode der Datei in der Datenbank abspeichern lässt?
Danach doch nur den MySQL-Befehl →
mysql_query(„DELETE FROM deine_tabelle WHERE id=‚mysql_real_escape_string($_GET[id])‘ AND ip=‚$_SERVER[REMOTE_ADDR]‘“);
Also id is nen Auto_increment und ip halt als Sicherung, damit man nciht einfach alles löschen kann. Ansonsten wäre statt der IP nen hash zu empfehlen aber das fand ich jetzt einfacher auf die Schnelle zu schreiben^^

PS: Funpic unterstützt die Funktion unlink();