• User

    Eliminare record con script php

    Eccomi ancora qua con un problemino.....allora ho inserito un script per l'eliminazione dei file caricati dall'utente...quando schiaccio su elimina mi dice record eliminato, ma quando vado a vedere il file c'è ancora....non capisco dov'è l'errore.
    vi posto qui lo script file_privati (elenco file caricati dall'utente):

    <?php

    require('config.php');

    session_start();

    // Se non è stata definita la variabile manda l'utente alla homepage
    if(!isset($_SESSION['login_username']))
    {
    header('Location: index.php');
    exit;
    }

    $query="SELECT * FROM file WHERE id_utente = '{$_SESSION['login_username']}'";
    $risultato = mysql_query($query)
    or die('Query non valida: ' . mysql_error());
    $id= 'id_file';

    // se ci sono files nel DB
    if(mysql_numrows($risultato))
    {
    // estrazione dei risultati e stampa dei links ai files
    while ($tmp = mysql_fetch_array($risultato))
    {
    echo "<p><a href="mostra.php?id=$tmp[id_file]">$tmp[nome_file]</a> caricato il $tmp[data_file] <a href="elimina1.php"> Elimina<br></p>\n";
    }
    }
    else
    {
    echo '<p>Nessun file presente nel database</p>';
    }

    ?>.

    E questo è lo script elimina1.php:

    <?php // CONNESSIONE AL DATABASE
    require('config.php');
    session_start();

    $rs = mysql_query("SELECT * FROM file ORDER BY id_file ");
    // CONTROLLA QUANTI RECORD SODDISFANO LA QUERY E CREA UN CICLO IN CUI LEGGE I CAMPI DAI RECORD
    $nr = mysql_num_rows($rs); if ($nr != 0){
    for($x = 0; $x < $nr; $x++){ $row = mysql_fetch_assoc($rs); $data=$row['data_file']; $titolo=$row['nome_file']; $id=$row['id_file'];
    }}

    $id='id_file';
    $sql = "DELETE FROM file WHERE id_file = '$id'";
    if (@mysql_query($sql))
    {
    echo ("<div align=center class=testo> <b>Record eliminato con successo.</b></div>");
    } else
    { echo ("<div align=center class=testo> <b>Errore: ". mysql_error() ."</b></div>"); }
    ?>.

    ❌x❌x Grazie a chi mi sa dare una mano!!!!!!!!


  • ModSenior

    Ciao,

    [php]
    $id='id_file';
    [/php]

    Sicuramente non va bene, devi mettere l'id.


  • User

    L'ho chiamato così l' id dei file. è un problema scritto così???


  • User Attivo

    Ciao, non ne sono sicuro, ma

    mysql_numrows
    

    dovrebbe dare errore in quanto dovrebbe essere

    mysql_num_rows
    

    penso, ciao


  • User

    Ho corretto ma non mi elimina ancora niente!!!!


  • User Attivo

    Ciao, stampa,
    [PHP]
    $id='id_file';
    [/PHP]
    Thedarkita forse voleva dirti questo, anche secondo me, quell'id_file se lo stampi non ti da risultato, prova


  • User

    Non ho capito dove devo cambiare...se io faccio elimina mi stampa"record eliminato correttamente" ma poi vado a vedere e c'è ancora...ho controllato tutto ma non capisco dov'è l'errore!!!


  • User Attivo

    @chiara690 said:

    Non ho capito dove devo cambiare...se io faccio elimina mi stampa"record eliminato correttamente" ma poi vado a vedere e c'è ancora...ho controllato tutto ma non capisco dov'è l'errore!!!

    Ciao, perchè non gli passi niente, ti invia il messaggio perchè deve eseguire l'operazione che tu gli hai detto.
    [PHP]$id='id_file';
    echo"$id";[/PHP]
    vedi cosa ti dice Ciao


  • User

    Mi stampa id_file....non mi stampa i dati!!!!


  • User Attivo

    E questo è lo script elimina1.php:
    [php]
    require('config.php');
    session_start();

    $indice=isset($_GET['id'])? $_GET['id']:0;
    $sql = "DELETE FROM file WHERE id_file = '$indice'";
    if (@mysql_query($sql))
    {
    echo ("<div align=center class=testo> <b>Record eliminato con successo.</b></div>");
    } else
    { echo ("<div align=center class=testo> <b>Errore: ". mysql_error() ."</b></div>"); }
    [/php]

    Prova così. ciao

    Aspetta un poco, ho rivisto il tuo link,
    [php]
    echo"<p><a href="mostra.php?id=$tmp[id_file]">$tmp[nome_file]</a> caricato il $tmp[data_file] <a href="elimina1.php"> Elimina<br></p>\n";
    [/php]
    ma tu a mostra.php gli passi l'id, ma a elimina.php non gli passi niente


  • User

    Risolto funziona tutto.....grazie!!!!!!!