Visualizzazione dei risultati da 1 a 5 su 5

Discussione: array e foreach

  1. #1
    Utente di HTML.it
    Registrato dal
    Mar 2000
    Messaggi
    31

    array e foreach

    Premetto che non ho capito bene come si crea (e non so bene come scrivere) dove devo posizionare in questi file l'array e il foreach per recuperare i valori selezionati con il checkbox e poi fare una eliminazione multipla, se qualcuno ha la pazienza di aiutarmi a completare questi script da me utilizzati... grazie

    --------------------
    -------------------------------------- 1 file) list.php
    In questo file mostro il contenuto, ordinato numericamente, della cartella carica_scarica.

    Come creo e dove posiziono l'array che presenta i valori dei vari checkbox selezionati per essere cancellati e inviati poi con form al file canc.php?

    <?
    /* file che mostra il contenuto della cartella carica_scarica con un checkbox relativo ad ogni voce elencata numericamente */

    $dl = "http://www.sitename.net/lista_ordinata/carica_scarica";
    $absolute_path = "./lista_ordinata/carica_scarica";
    $dir = "dir";
    $i=1;

    $list = "<form name=\"eliminazione\" method=\"post\" action=\"cancella.php\">
    <table width=\"100%\" border=\"0\" cellpadding=\"2\" cellspacing=\"8\">";

    $list .= "<tr><td>Download:</td></tr>";
    $dir = opendir($absolute_path);
    while (($file = readdir($dir)) !== false) {
    if ($file != ".." && $file != ".") {
    $list .= "
    <tr><td><a href=$dl/$file>$i) $file </a><input type=\"checkbox\" name=\"canc_file\" value=\"$file\" /></td></tr>";
    $i++;
    }
    }
    $list .= "</table><input name=\"canc\" type=\"submit\" value=\"Elimina\"></form>";
    echo $list;
    ?>

    ---------------------

    -------------------------------------- 2 file) cancella.php

    File che cerca nella cartella il valore selezionato con il checkbox nominato $canc_file, il problema è che allo stato attuale posso cancellare solo un file alla volta.

    Come realizzo e dove posiziono in questo script il recupero delle informazioni provenienti dal form per fare una cancellazione multipla dei valori selezionati e inviati dal file list.php ?
    ------------------------

    <?php
    $nome_file="lista_ordinata/carica_scarica/$canc_file";

    if (!file_exists($nome_file)) {
    echo "Spiacente, non posso trovare il file $nome_file";
    } else {
    if (!unlink($nome_file)) {
    echo "$PHP_SELF: Errore, impossibile cancellare il file $nome_file";
    echo "Controllalo!";
    } else {
    echo "Il file $nome_file è stato cancellato";
    }
    }
    ?>
    errepi71@hotmail.com

  2. #2
    Utente di HTML.it
    Registrato dal
    Mar 2000
    Messaggi
    31
    Niente? non c'è nessuno che ha tempo di aiutarmi? Cerco di non ricorrere mai al forum facendo prima migliaia di ricerche di scritp che mi possano aiutare, ma questa volta non riesco proprio a capire come usare l'array e foreach negli script php che vi ho illustrato
    errepi71@hotmail.com

  3. #3
    Utente di HTML.it L'avatar di wallrider
    Registrato dal
    Apr 2003
    Messaggi
    2,755
    hai risolto poi?
    RIP Cicciobenzina 9/11/2010

    "Riseminaciceli, i ceci nell'orto"

  4. #4
    Utente di HTML.it
    Registrato dal
    Mar 2000
    Messaggi
    31
    No cioè ho capito come ricavare un array (no nlo sapevo fare, ho imparato) e quindi recuperare i dati selezionati con il check-box, ma non capito come faccio a dire che mi deve cancellare tutti i dati compresi nell'array. Se vuoi tra cinque minuti ti posto lo script, così quando hai tempo gli dai un'occhiata, xché come già ti dicevo è una cosa che non ho trovato e potrebbe essere utile ad altri.

    ciao
    errepi71@hotmail.com

  5. #5
    Utente di HTML.it
    Registrato dal
    Mar 2000
    Messaggi
    31
    <?
    /* file list.php che mostra il contenuto con un checkbox relativo ad ogni voce elencata numericamente */

    $dl = "http://www.sito.net/lista_ordinata/carica_scarica";
    $absolute_path = "./lista_ordinata/carica_scarica";
    $dir = "dir";
    $i=1;

    $list = "<form name=\"eliminazione\" method=\"post\" action=\"cancella.php\">
    <table width=\"100%\" border=\"0\" cellpadding=\"2\" cellspacing=\"8\">";

    $list .= "<tr><td>Download:</td></tr>";
    $dir = opendir($absolute_path);
    while (($file = readdir($dir)) !== false) {
    if ($file != ".." && $file != ".") {
    $list .= "
    <tr><td><a href=$dl/$file>$i) $file </a><input type=\"checkbox\" name=\"canc_file[]\" value=\"$file\" /></td></tr>";
    $i++;
    }
    }
    $list .= "</table><input name=\"canc\" type=\"submit\" value=\"Elimina\"></form>";
    echo $list;
    ?>

    --------------------------------------

    <?
    /* file cancella.php che raccoglie tramite array i file selezionati con check */

    if (is_array ($_POST['canc_file'])) {
    echo "I tuoi file selezionati sono:
    ";
    foreach ($_POST['canc_file'] as $value) {
    echo "$value
    ";
    }
    }

    if (!file_exists($value)) {
    echo "Spiacente, non posso trovare i file $value";
    } else {
    if (!unlink($value)) {
    echo "$PHP_SELF: Errore, impossibile cancellare il file $value";
    echo "Controllalo!";
    } else {
    echo "I tuoi $value sono stati cancellati";
    }
    }
    ?>

    -------------------------------------------

    Praticamente riesco a raccogliere i dati con array dei check selezionati, ma so come dire di eliminare questi dati raccolti, nella maniera settata qui sopra visualizza l'elenco ma non trova i file da eliminare con unlink.
    ecco qua

    ciao
    errepi71@hotmail.com

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2025 vBulletin Solutions, Inc. All rights reserved.