SELFPHP: Version 5.8.2 Befehlsreferenz - Tutorial – Kochbuch – Forum für PHP Einsteiger und professionelle Entwickler

SELFPHP


Professional CronJob-Service

Suche



CronJob-Service    
bei SELFPHP mit ...



 + minütlichen Aufrufen
 + eigenem Crontab Eintrag
 + unbegrenzten CronJobs
 + Statistiken
 + Beispielaufrufen
 + Control-Bereich

Führen Sie mit den CronJobs von SELFPHP zeitgesteuert Programme auf Ihrem Server aus. Weitere Infos



:: Buchempfehlung ::

TYPO3 Kochbuch

TYPO3 Kochbuch zur Buchempfehlung
 

:: Anbieterverzeichnis ::

Globale Branchen

Informieren Sie sich über ausgewählte Unternehmen im Anbieterverzeichnis von SELFPHP  

 

:: Newsletter ::

Abonnieren Sie hier den kostenlosen SELFPHP Newsletter!

Vorname: 
Name:
E-Mail:
 
 

Zurück   PHP Forum > PHP Grundlagen
Hilfe Community Kalender Heutige Beiträge Suchen

PHP Grundlagen Hier kann über grundlegende Probleme oder Anfängerschwierigkeiten diskutiert werden

Antwort
 
Themen-Optionen Ansicht
  #1  
Alt 04.03.2007, 01:04:59
doc36 doc36 ist offline
Anfänger
 
Registriert seit: Mar 2007
Beiträge: 20
Datei Löschen

Hallo.

Ich hab mich jetzt schon halb totgesucht und nichts passendes gefunden. :-((

Folgendes Problem hab ich:

Auf meinem Webserver gibts ein Ordner in den ich Videos uploade. Das funktioniert Super.
Den Inhalt des Ordners lese ich wie folgt zur Anzeige aus:

<?php
function file_type($file){
$path_chunks = explode("/", $file);
$thefile = $path_chunks[count($path_chunks) - 1];
$dotpos = strrpos($thefile, ".");
return strtolower(substr($thefile, $dotpos + 1));
}
$file_count = 0;
$path = "../video/";
$file_types = array('mpg', 'mpeg');
$p = opendir($path);
while (false !== ($filename = readdir($p))) {
$files[] = $filename;
}
sort($files);
foreach ($files as $file) {
$extension = file_type($file);
if($file != '.' && $file != '..' && array_search($extension, $file_types) !== false){
$file_count++;
echo '<a target="_blank" href="'.$path.$file.'">'.$file.'</a> <br/>';
}
}
if($file_count == 0){
echo "<center>Kein Video gefunden</center>";
}
?>

Jetzt hätte ich gern, dass hinter jedem Dateiname das Wort Löschen erscheint und beim klick darauf die entsprechende Datei gelöscht wird.

Ich hab schon alles versucht mit dem Befehl unlink(pfad/dateiname).

Ich bekomme es nicht hin.

Kann mir jemand helfen oder einen rettenden Tipp geben?

Danke schon mal.

doc36
Mit Zitat antworten
  #2  
Alt 04.03.2007, 02:07:34
cesca cesca ist offline
Anfänger
 
Registriert seit: Sep 2006
Beiträge: 26
AW: Datei Löschen

Hallo,
benutze doch bitte die code Funktion (Symbol ganz rechts oder [ PHP] ..code.. [/PHP] ) beim Posten von script. Das und Einrücken erleichtert die Lesbarkeit.

Zu dem Löschen:
Du könntest bei deinem
PHP-Code:
echo '<a target="_blank" href="'.$path.$file.'">'.$file.'</a> <br/>'
noch einen link mit einer GET Variable einfügen. Die GET Variable sollte den Pfad zur Datei+Namen beinhalten sowie für Namen mit Sonderzeichen oder Leerstellen codiert werden. Also ungefähr so
PHP-Code:
$loeschfile urlencode($path.$file);
echo 
'<a target="_blank" href="'.$path.$file.'">'.$file.'</a> 
  <a href=\".$_SERVER['
PHP_SELF']."?loeschen=$loeschfile\">l&ouml;schen</a><br/>'
Der Löschlink ruft das Script selbst auf und es existiert nun eine Variable $_GET['loeschen'] die am besten vor dem "foreach" deiner Dateien verarbeitet wird. Das könnte dann so aussehen:
PHP-Code:
if(isset($_GET['loeschen'])) {
  
unlink($_GET['loeschen']);

Das ist nur eine von sicherlich vielen Methoden. Und hierbei ist noch keine Fehlerbehandlung oder Absicherung vor Missbrauch gegeben. In dieser Form kann durch einfache Veränderung der GET Variable in der Browseradressleiste eine Menge Schaden angerichtet werden.

gruß cesca
Mit Zitat antworten
  #3  
Alt 04.03.2007, 02:34:43
doc36 doc36 ist offline
Anfänger
 
Registriert seit: Mar 2007
Beiträge: 20
AW: Datei Löschen

Hallo cesca,

habe das Problem auch gerade gelöst. Hätte sonst nicht schlafen können. :-))

Du hast Recht, es gibt viele Möglichkeiten.

Hier meine Lösung und die funktioniert genauso wie ich es haben will.

PHP-Code:
<?php
   
   
function file_type($file){
       
$path_chunks explode("/"$file);
       
$thefile $path_chunks[count($path_chunks) - 1];
       
$dotpos strrpos($thefile".");
       return 
strtolower(substr($thefile$dotpos 1));
   }
   
$file_count 0;
   
$path "../video/";
   
$file_types = array('mpg''mpeg');
   
$p opendir($path);
       while (
false !== ($filename readdir($p))) {
           
$files[] = $filename;
       }
   
sort($files);
       foreach (
$files as $file) {
           
$extension file_type($file);
           if(
$file != '.' && $file != '..' && array_search($extension$file_types) !== false){
               
$file_count++;
               echo 
'<a target="_blank" href="'.$path.$file.'">'.$file.'</a> <a href="video_loeschen.php?id='.$path.$file.'">Löschen</a><br/>';
               
           }
       }
   if(
$file_count == 0){
       echo 
"<center>Kein Video gefunden</center>";
   }
?>
Die Datei video_loeschen.php sieht dann wie folgt aus:

PHP-Code:
<html>
<head>
<base target="_self">
</head>
<body link="#000000" vlink="#000000" alink="#FF0000" bgcolor="#3399FF">
<font face="Verdana">
<?php
$id 
$_GET["id"];
unlink($id);
?>
<center>Das Video wurde gelöscht.<br><br><a href="video.php">Zurück</a>
</font>
</body>
Um Missbrauch zu vermeiden sind die ganzen Scripte in einem geschütztem Bereich.

Danke trotzdem für deine Hilfe.

Gute Nacht. *gähn*

doc36
Mit Zitat antworten
Antwort


Aktive Benutzer in diesem Thema: 1 (Registrierte Benutzer: 0, Gäste: 1)
 

Forumregeln
Es ist Ihnen nicht erlaubt, neue Themen zu verfassen.
Es ist Ihnen nicht erlaubt, auf Beiträge zu antworten.
Es ist Ihnen nicht erlaubt, Anhänge hochzuladen.
Es ist Ihnen nicht erlaubt, Ihre Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind aus.
[IMG] Code ist aus.
HTML-Code ist aus.

Gehe zu

Ähnliche Themen
Thema Autor Forum Antworten Letzter Beitrag
Datei löschen... web-wg PHP Grundlagen 1 24.08.2003 20:49:55
angelegte php datei wieder löschen saidbuchari PHP Grundlagen 28 12.06.2003 10:46:44
Datei löschen per Formular toweter PHP Grundlagen 1 16.04.2003 06:03:25
Datei anzeigen und anschließend löschen Ben20 PHP für Fortgeschrittene und Experten 2 08.08.2002 18:43:24
Eine Zeile aus Datei löschen ??? doudie PHP für Fortgeschrittene und Experten 5 18.07.2002 14:14:49


Alle Zeitangaben in WEZ +2. Es ist jetzt 02:39:46 Uhr.


Powered by vBulletin® Version 3.8.3 (Deutsch)
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.


© 2001-2024 E-Mail SELFPHP OHG, info@selfphp.deImpressumKontakt