Visualizzazione risultati 1 fino 5 di 5

Discussione: Script per copia foto

  1. #1
    Guest

    Predefinito Script per copia foto

    Ciao a tutti!
    Sto realizzando uno script php da tenere in locale per copiare le foto dalla fotocamera al pc.

    Ho una pagina HTML:
    Codice HTML:
    <form method="post" action="copia.php">
    PIC0001.jpg <input type="checkbox" nome="PIC0001" value="ON">
    PIC0002.jpg <input type="checkbox" nome="PIC0002" value="ON">
    PIC0003.jpg <input type="checkbox" nome="PIC0004" value="ON">
    ecc..
    </form>
    ma il problema sta in quella PHP:
    Codice PHP:
    <?
    $img_dir
    = "$unit:/DCIM/$folder/";

    $handle = opendir($img_dir);
    while (
    false !== ($files = readdir($handle)))
    {
    if (
    $files != "." && $files != ".." && $files != "Thumbs.db")
    {
    if(
    IL PROBLEMA){
    echo
    "<b>$files</b> verrà copiato<br>";
    }else{
    echo
    "<b>$files</b> non verrà copiato<br>";
    }
    }
    }
    ?>
    Il problema sta nell'IF. Come faccio a sapere se per quella foto il checkbox è stato selezionato oppure no?

    Grazie.

  2. #2
    L'avatar di funcool
    funcool non è connesso Utente storico
    Data registrazione
    05-02-2004
    Residenza
    Qui... Non lì, qui!
    Messaggi
    15,433

    Predefinito

    Non sono sicuro, ma credo che dovresti mettere un isset.
    Codice PHP:
    if (isset($_POST['PIC0001'])) {
    Mattia vi manda a FunCool - Matriz - Directory Gogol - Sfondo rosso per la Birmania
    «Tu mi dai fastidio perché ti credi tanto un Dio!» «Bè, dovrò pur prendere un modello a cui ispirarmi, no?» Woody Allen

  3. #3
    Guest

    Predefinito

    Ho provato usando degli array:
    Codice PHP:
    <?
    $img_dir
    = "$unit:/DCIM/$folder";
    $foto=array();
    $handle = opendir($img_dir);
    while (
    false !== ($files = readdir($handle)))
    {
    if(
    $files==".."){
    echo
    "<tr style=\"background-color:#e6fddf\">";
    echo
    "<td class=\"index\">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<p class=\"filename\"><a href=\"index.php?unit=$unit\" class=\"txt_ant\">Indietro</a></p></td>";
    echo
    "<td class=\"check\"></td>";
    echo
    "<td class=\"size\"></td>";
    echo
    "<td class=\"anteprima\"></td>";
    echo
    "</tr>";
    }
    if (
    $files != "." && $files != ".." && $files != "Thumbs.db")
    {
    $foto[]=$files;
    }
    }
    $a=count($foto);

    for(
    $i=0;$i<$a;$i++){
    if(
    $c==""){
    echo
    "<tr style=\"background-color:eef5fd\">";
    echo
    "<td class=\"index\"> <p class=\"filename\"><img src=\"foto.gif\" border=\"0\"> $foto[$i]</p></td>";
    echo
    "<td class=\"check\"><input type=\"checkbox\" name=\"chk_$i\" checked value=\"ON\"></td>";
    echo
    "<td class=\"size\"><p class=\"filesize\">$size Mb</p></td>";
    echo
    "<td class=\"anteprima\"><p class=\"filesize\"><a class=\"txt_ant\" href=\"javascript:anteprima('$foto[$i]','$unit','$folder')\">Anteprima</a></td>";
    echo
    "</tr>";
    $c=1;
    }else{
    echo
    "<tr style=\"background-color:#e6fddf\">";
    echo
    "<td class=\"index\"> <p class=\"filename\"><img src=\"foto.gif\" border=\"0\"> $foto[$i]</p></td>";
    echo
    "<td class=\"check\"><input type=\"checkbox\" name=\"chk_$i\" checked value=\"ON\"></td>";
    echo
    "<td class=\"size\"><p class=\"filesize\">$size Mb</p></td>";
    echo
    "<td class=\"anteprima\"><p class=\"filesize\"><a class=\"txt_ant\" href=\"javascript:anteprima('$foto[$i]','$unit','$folder')\">Anteprima</a></td>";
    echo
    "</tr>";
    $c="";
    }
    }
    ?>
    e copia.php:
    Codice PHP:
    <?
    $img_dir
    = "$unit:/DCIM/$folder";
    $foto=array();
    $handle = opendir($img_dir);
    while (
    false !== ($files = readdir($handle)))
    {
    if (
    $files != "." && $files != ".." && $files != "Thumbs.db")
    {
    $foto[]=$files;
    }
    }
    $a=count($foto);

    for(
    $i=0;$i<$a;$i++){

    if(
    "$chk_$i"=="ON"){
    echo
    "$foto[$i] copiare<br>";
    }
    else{
    echo
    "$foto[$i] NON copiare<br>";
    }
    }
    ?>
    Ma non funziona comunque...
    Avete qualche idea?

    Ho trovato un esempio: il pannello di controllo di AV, in gestione file: io scelgo cosa cancellare tramite checkbox e cliccando sul bottone lui cancella solo quello che ho selezionato...
    Ultima modifica di allo : 07-02-2006 alle ore 15.15.19

  4. #4
    Guest

    Predefinito

    Potresti fare stampare al php una cosa di questp genere:
    Codice HTML:
    <input type="checkbox" name="selecta[]" checked  value="NOME_IMMAGINE">
    Così ottieni un array ($selecta) che verrà inviato via POST, poi con il php fai così:
    Codice PHP:
    //Questo se non hai register_globals su on
    $selecta=$_POST['selecta'];
    //Contiamo il numero di selezioni
    $n=count($selecta);
    //Controlliamo se non ha selezionato niente
    if($n=0){
    echo
    "Seleziona almeno un file";
    }else{
    foreach(
    $selecta as $file){
    //Si fa quello che si deve
    }
    }

  5. #5
    Guest

    Predefinito

    Grazie, ma ho risolto in un altro modo:
    Codice HTML:
    <input type="checkbox" name="P1020005" checked  value="P1020005">
    <input type="checkbox" name="P1020006" checked  value="P1020006">
    <input type="checkbox" name="P1020007" checked  value="P1020007">
    e la pagina in php:
    Codice PHP:
    <?
    $img_dir
    = "$unit:/DCIM/$folder";
    $handle = @opendir($img_dir);
    while (
    false !== ($files = @readdir($handle))){
    if (
    $files != "." && $files != ".." && $files != "Thumbs.db"){
    $name=str_replace(".JPG","",$files);
    $nome=$_POST["$name"];
    if(
    $name==$nome){
    echo
    "Questa immagine sarà copiata";
    }else{
    echo
    "Questa immagine NON sarà copiata";
    }
    ?>
    per motivi di spazio non posto tutto il codice della pagina, anche perchè ho messo anche altra roba, quindi spero si capisca..

    Grazie a tutti!

Regole di scrittura

  • Non puoi creare nuove discussioni
  • Non puoi rispondere ai messaggi
  • Non puoi inserire allegati.
  • Non puoi modificare i tuoi messaggi
  •