Visualizzazione dei risultati da 1 a 6 su 6
  1. #1
    Utente di HTML.it L'avatar di lupo92
    Registrato dal
    Feb 2004
    Messaggi
    254

    Cancellare file allegato

    Buonasera,

    grazie all'aiuto di Supersavio sono riuscito acreare uno script nel quale uploado dei files in una dir del sito.
    Con questo script riesco a cancellare gli allegati presenti nella dir, la news presente nella tabella news e i record presenti nella tabella news allegati.
    Però quando una news non ha allegati lo script non funziona.

    Questo è lo script:
    Codice PHP:
    $sql_all "SELECT * FROM allego_news WHERE id_news = '".$id."'";  
    $query_all mysql_query($sql_all) OR DIE(mysql_error()); 

    while(
    $row_all=mysql_fetch_array($query_all)){ 
    $file =$row_all['nome_allegato']; 
    }  
        
    // cancella i files allegati
        
    if (unlink("../files/news/$file"))
        
    // cancella la news
        
    $query mysql_query("DELETE FROM news WHERE id = $id");
        
    // cancella l'allegato alla news
        
    $query2mysql_query("DELETE FROM allego_news WHERE id_news = $id");
        
    ?> 
    lupo

  2. #2
    Codice PHP:
    $sql_all "SELECT * FROM allego_news WHERE id_news = '".$id."'";   
    $query_all mysql_query($sql_all) OR DIE(mysql_error()); 

    while(
    $row_all=mysql_fetch_array($query_all)){ 
    $file =$row_all['nome_allegato']; 
    }   
        
    // Controlla se cè un file allegato alla news se cè lho cancella se invece nn cè salta l'operazione unlink e vedrai che nn avrai più problemi
        
    if($file!=""){
       
    // cancella i files allegati 
        
    if (unlink("../files/news/$file")) 
        }
        
    // cancella la news 
        
    $query mysql_query("DELETE FROM news WHERE id = $id"); 
        
    // cancella l'allegato alla news 
        
    $query2mysql_query("DELETE FROM allego_news WHERE id_news = $id"); 
         
    ?> 

  3. #3
    Utente di HTML.it L'avatar di lupo92
    Registrato dal
    Feb 2004
    Messaggi
    254
    Grazie mille
    ho risolto, funziona anche se mancava il ( dopo
    Codice PHP:
    if (unlink("../files/news/$file")) 
    .
    Sei stato velocissimo oltre che gentilissimo.
    Alla prossima.
    Stai sicuro che si sarà
    lupo

  4. #4
    Utente di HTML.it L'avatar di lupo92
    Registrato dal
    Feb 2004
    Messaggi
    254
    E se volessi cancellare più di un file con lo stesso id
    lupo

  5. #5
    mi sa che nn puoi tenere + file con lo stesso id ( o meglio nome ) a meno che nn abbia estensione diverso...se hai + file allegati basta aggiungere
    Codice PHP:
        // Controlla se cè un file allegato alla news se cè lho cancella se invece nn cè salta l'operazione unlink e vedrai che nn avrai più problemi 
        
    if($file!=""){ 
       
    // cancella i files allegati 
        
    if (unlink("../files/news/$file")) 
        } 
    all'interno del ciclo while così

    Codice PHP:

    while($row_all=mysql_fetch_array($query_all)){ 
    $file =$row_all['nome_allegato']; 
        
    // Controlla se cè un file allegato alla news se cè lho cancella se invece nn cè salta l'operazione unlink e vedrai che nn avrai più problemi 
        
    if($file!=""){ 
       
    // cancella i files allegati 
        
    if (unlink("../files/news/$file")) 
        } 


  6. #6
    Utente di HTML.it L'avatar di lupo92
    Registrato dal
    Feb 2004
    Messaggi
    254
    si mi ero accorto che unlink era fouri dal ciclo while.
    In effetti gli allegati hanno in comune solo id_news ma hanno tutti un nome diverso.
    Grazie
    lupo

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.