zurück zur Startseite
  


Zurück XHTMLforum > Webentwicklung (außer XHTML und CSS) > Serveradministration und serverseitige Scripte
Seite neu laden Dateien aus Ordner auflisten und selektiv löschen?

Antwort
 
LinkBack Themen-Optionen Ansicht
  #1 (permalink)  
Alt 06.06.2010, 09:55
Erfahrener Benutzer
XHTMLforum-Mitglied
Thread-Ersteller
 
Registriert seit: 30.07.2009
Beiträge: 469
sepp88 befindet sich auf einem aufstrebenden Ast
Standard Dateien aus Ordner auflisten und selektiv löschen?

Hallo Leute,
ich scheitere am Schluss:
ich laufe mit einer Schleife durch einen Ordner und ich liste alle Dateien mit einer Checkbox untereinander. Ich würde jetzt gerne noch beim Klicken des Löschen-Buttons die angewählten (checked) Dateien aus dem Ordner löschen. Allerdings weiß ich nicht wirklich wie. Im Moment versuche ich innerhalb von javascript ein PHP Script laufen zu lassen dass die Dateien mit unlink löscht.

PHP-Code:
<!DOCTYPE html>
<head>
    <meta http-equiv="Content-Type" content="text/html; charset=utf-8">
    <title> Delete Files </title>
    
    <link rel="stylesheet" type="text/css" href="css/style.css" media="screen, projection" />
    <script type="text/javascript" src="js/jquery-1.4.min.js"></script>
    <script type="text/javascript" src="js/jquery-ui-1.8.1.custom.min.js"></script>
    <script type="text/javascript" src="js/scripts.js"></script>
</head>
<body>
    <?php
    $path 
'thumbs';
    
    
//shuffle files
    
$count 0;
    if (
$handle opendir($path)) {
        
$retval = array();
        while (
false !== ($file readdir($handle))) {
            
$ext pathinfo($filePATHINFO_EXTENSION);
            if (
$file != '.' && $file != '..' && $file != '.DS_Store' && $file != 'Thumbs.db') {
                
$retval[$count] = $file;
                
$count $count 1;
            } else {
                
//no proper file
            
}
        }
        
closedir($handle);
    }
    
    
//loop through shuffled files
    
print "<form id='delete'>";
    foreach (
$retval as $value) {
        
//$ext = pathinfo($value, PATHINFO_EXTENSION); //file extension
        
print "<input type='checkbox' name='$value' value='$value'>$value<br>";
    }
    print 
"<input id='deleteBtn' type='submit' value='Löschen'>";
    print 
"</form>";
    
//unlink('$path/$value');
    
?>
    
    <script type="text/javascript">
    $('#delete').submit(function() {
        //alert('Handler for .submit() called.');
        handleValues(); 
        return false;
    });
    
    /*
    //Delete Files function ???
    */
    function handleValues() {
            $("input:checkbox:checked").each(function(i){
                  //alert($(this).val());
                //document.write("<?php unlink('thumbs/'" + $(this).val() + "); ?>");
              });  
      }
    </script>
    
</body>
</html>
Was mach ich falsch? Danke
Mit Zitat antworten
Sponsored Links
  #2 (permalink)  
Alt 06.06.2010, 10:37
Benutzerbild von Boris
Tanzender Webentwickler
XHTMLforum-Kenner
 
Registriert seit: 29.07.2004
Ort: Kornwestheim / Stuttgart
Beiträge: 4.925
Boris ist ein sehr geschätzer MenschBoris ist ein sehr geschätzer MenschBoris ist ein sehr geschätzer Mensch
Standard

Vergib der Checkbox erstmal einen Namen wie z.B. deletefiles[] - dadurch wird ein Array erzeugt, dass all die Felder enthält, die man ausgewählt hat.

In die value trag einfach den Dateinamen ein. Nach dem Submit gehst du dann deltefiles[] mit foreach() durch und löscht die Dateien.
__________________
My software never has bugs. It just develops random features ...

» DevShack - die Website des freien Webentwicklers Boris Bojic
Mit Zitat antworten
Sponsored Links
  #3 (permalink)  
Alt 06.06.2010, 11:13
Erfahrener Benutzer
XHTMLforum-Mitglied
Thread-Ersteller
 
Registriert seit: 30.07.2009
Beiträge: 469
sepp88 befindet sich auf einem aufstrebenden Ast
Standard

Danke vielmals.

PHP-Code:
    print "<form id='delete' action='arrayauslesen.php'>";
    foreach (
$retval as $value) {
        
//$ext = pathinfo($value, PATHINFO_EXTENSION); //file extension
        
print "<input type='checkbox' name='deletefiles[]' value='$value'>$value<br>";
    }
    print 
"<input id='deleteBtn' type='submit' value='Löschen'>";
    print 
"</form>";
    
//unlink('$path/$value');
    
    
print count($deletefiles); //0 
und wie submitte ich genau? soll ich da eine neue php datei erstellen in der dann der array ausgelesen wird und die dateien gelöscht werden?
also ich benötige gar kein javascript, oder?
Mit Zitat antworten
  #4 (permalink)  
Alt 06.06.2010, 11:24
Benutzerbild von Boris
Tanzender Webentwickler
XHTMLforum-Kenner
 
Registriert seit: 29.07.2004
Ort: Kornwestheim / Stuttgart
Beiträge: 4.925
Boris ist ein sehr geschätzer MenschBoris ist ein sehr geschätzer MenschBoris ist ein sehr geschätzer Mensch
Standard

Das kannst du machen wie du willst - in einer neuen Datei oder in der gleichen. Hauptsache die Verarbeitung passiert dann vor dem erneuten auslesen des Verzeichnisses

Und nein, du brauchst kein JS.
__________________
My software never has bugs. It just develops random features ...

» DevShack - die Website des freien Webentwicklers Boris Bojic
Mit Zitat antworten
  #5 (permalink)  
Alt 06.06.2010, 11:31
Erfahrener Benutzer
XHTMLforum-Mitglied
Thread-Ersteller
 
Registriert seit: 30.07.2009
Beiträge: 469
sepp88 befindet sich auf einem aufstrebenden Ast
Standard

wie mach ichs denn in der selben?
ich weiß nur wie ich eine externe datei in das action attribut reinschreiben kann.
Mit Zitat antworten
  #6 (permalink)  
Alt 06.06.2010, 11:51
Benutzerbild von Boris
Tanzender Webentwickler
XHTMLforum-Kenner
 
Registriert seit: 29.07.2004
Ort: Kornwestheim / Stuttgart
Beiträge: 4.925
Boris ist ein sehr geschätzer MenschBoris ist ein sehr geschätzer MenschBoris ist ein sehr geschätzer Mensch
Standard

Willst du mich jetzt veräppeln ...?

Schreib halt die aktuelle Datei in das action hinein ... und frag am Anfang ab, ob das Formular abgeschickt wurde
__________________
My software never has bugs. It just develops random features ...

» DevShack - die Website des freien Webentwicklers Boris Bojic
Mit Zitat antworten
  #7 (permalink)  
Alt 06.06.2010, 18:24
Erfahrener Benutzer
XHTMLforum-Mitglied
Thread-Ersteller
 
Registriert seit: 30.07.2009
Beiträge: 469
sepp88 befindet sich auf einem aufstrebenden Ast
Standard

danke boris,
ich weiß ich bin lästig, aber mir fehlt leider jegliches PHP vorwissen für diese Aufgabe.

PHP-Code:
if ($_POST) {
        echo 
"Soweit funktionierts!!!";
        print 
$deletefiles;
        foreach (
$deletefiles as $value) {
            print 
$value;
            
//unlink($path .'/' . $value);
        
}
    }
    
    print 
"<form method='POST' action='' enctype='multipart/form-data'>";
    foreach (
$retval as $value) {
        
//$ext = pathinfo($value, PATHINFO_EXTENSION); //file extension
        
print "<input type='checkbox' name='deletefiles[]' value='$value'>$value<br>";
    }
    print 
"<input name='deleteBtn' type='submit' value='Löschen'>";
    print 
"</form>";    
    
?> 
irgendwie ist $deletefiles so nicht als array vorhanden? was mach ich noch falsch?
Mit Zitat antworten
  #8 (permalink)  
Alt 06.06.2010, 19:24
Benutzerbild von Boris
Tanzender Webentwickler
XHTMLforum-Kenner
 
Registriert seit: 29.07.2004
Ort: Kornwestheim / Stuttgart
Beiträge: 4.925
Boris ist ein sehr geschätzer MenschBoris ist ein sehr geschätzer MenschBoris ist ein sehr geschätzer Mensch
Standard

Nach dem Absenden müsstest du es als $_POST['deletefiles'] haben ...
__________________
My software never has bugs. It just develops random features ...

» DevShack - die Website des freien Webentwicklers Boris Bojic
Mit Zitat antworten
  #9 (permalink)  
Alt 06.06.2010, 20:23
Erfahrener Benutzer
XHTMLforum-Mitglied
Thread-Ersteller
 
Registriert seit: 30.07.2009
Beiträge: 469
sepp88 befindet sich auf einem aufstrebenden Ast
Standard

danke vielmals!
Mit Zitat antworten
Sponsored Links
  #10 (permalink)  
Alt 06.06.2010, 20:52
Benutzerbild von Boris
Tanzender Webentwickler
XHTMLforum-Kenner
 
Registriert seit: 29.07.2004
Ort: Kornwestheim / Stuttgart
Beiträge: 4.925
Boris ist ein sehr geschätzer MenschBoris ist ein sehr geschätzer MenschBoris ist ein sehr geschätzer Mensch
Standard

Willst du meine Kontodaten?
__________________
My software never has bugs. It just develops random features ...

» DevShack - die Website des freien Webentwicklers Boris Bojic
Mit Zitat antworten
Sponsored Links
Antwort

Themen-Optionen
Ansicht

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 an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus


Ähnliche Themen
Thema Autor Forum Antworten Letzter Beitrag
Dateien und Ordner Zählen andre-ne Serveradministration und serverseitige Scripte 2 04.07.2011 16:55
Sicherheit: Dateien löschen auf Webspace laborix Serveradministration und serverseitige Scripte 4 20.04.2011 22:00
Dateien im Hauptverzeichnis oder in Ordner auf Webspace ablegen? DieterWelzel Offtopic 1 03.11.2006 22:02
Dateien lassen sich nicht löschen Anonymous Serveradministration und serverseitige Scripte 14 11.05.2005 17:16
Variabler Text Button... der_junge CSS 2 11.11.2004 18:15


Alle Zeitangaben in WEZ +2. Es ist jetzt 14:18 Uhr.