Pagina 1 di 2 1 2 ultimoultimo
Visualizzazione dei risultati da 1 a 10 su 16
  1. #1
    Utente di HTML.it
    Registrato dal
    Sep 2011
    Messaggi
    65

    eliminare un record con php

    Salve ragazzi,
    nella mia modesta area di amministrazione estraggo il nome delle immagini dal database per poi visualizzarle con il tag img in questo modo:

    Codice PHP:
    <?php
    if(isset($_GET['ID'])){
        
    $id_del=$_GET['ID'];
        if(
    is_int($id_del)){
            
    $q="DELETE FROM img_home WHERE ID=$id_del";//verifica come si chiama il campo dell'id dell'immagine
            
    if(mysql_query($q)){
                
    $avviso="eliminata l'immagine con id= $id_del
    "
    ;
            }else{
                
    $avviso="non è stato possibile eliminare l'immagine con id= $id_del
    "
    ;
            }
            echo 
    "<meta http-equiv='Refresh' content='4; URL=".htmlspecialchars($_SERVER['PHP_SELF'])."'>";
        }
    }

    //.... 
    $result mysql_query("SELECT * FROM img_home")or die(mysql_error()); 
    if(
    mysql_num_rows($result)>0){ 
        
        
        while (
    $row mysql_fetch_array($result)) {
    ?> 
    [img]../img/<?php echo $row ['nome_foto']; ?>[/img]" />    
        
    [url="?id=<?php echo $row['ID']; ?>"] CONFERMA'))'>cancella[/url]
      
    <?php 
    }

    }
    quando clicco il pulsante cancella però non succede niente.. Cosa sbaglio?

  2. #2
    Utente di HTML.it L'avatar di Enjix
    Registrato dal
    Apr 2012
    Messaggi
    57
    Prova a modificare i due $_GET['ID'] con $_GET['id']

  3. #3
    Utente di HTML.it
    Registrato dal
    Sep 2011
    Messaggi
    65
    sono giusti così perchè li ho maiuscoli nel DB

  4. #4
    prova così
    codice:
    $q = "DELETE FROM img_home WHERE ID = '$id_del' ";//verifica come si chiama il campo dell'id dell'immagine
    (aggiunta delle virgolette)


  5. #5
    Utente di HTML.it
    Registrato dal
    Sep 2011
    Messaggi
    65
    Grazie dell'osservazione. Nel database ho tre campi:
    ID, nome_foto, nome_img
    ho corretto $id_del però ancora non funziona...

    Codice PHP:

     <?php
    if(isset($_GET['ID'])){
        
    $id_del=$_GET['ID'];
        if(
    is_int($ID)){
            
    $q="DELETE FROM img_home WHERE ID=$ID";//verifica come si chiama il campo dell'id dell'immagine
            
    if(mysql_query($q)){
                
    $avviso="eliminata l'immagine con id= $ID
    "
    ;
            }else{
                
    $avviso="non è stato possibile eliminare l'immagine con id= $ID
    "
    ;
            }
            echo 
    "<meta http-equiv='Refresh' content='4; URL=".htmlspecialchars($_SERVER['PHP_SELF'])."'>";
        }
    }

    //.... 
    $result mysql_query("SELECT * FROM img_home")or die(mysql_error()); 
    if(
    mysql_num_rows($result)>0){ 
        
        
        while (
    $row mysql_fetch_array($result)) {
    ?> 
    [img]../img/<?php echo $row ['nome_foto']; ?>[/img]" />    
        
    [url="?id=<?php echo $row['ID']; ?>"] CONFERMA'))'>cancella[/url]
      
    <?php 
    }

    }

  6. #6
    Originariamente inviato da Fabio90
    Grazie dell'osservazione. Nel database ho tre campi:
    ID, nome_foto, nome_img
    ho corretto $id_del però ancora non funziona...

    Codice PHP:

     <?php
    if(isset($_GET['ID'])){
        
    $id_del=$_GET['ID'];
        if(
    is_int($ID)){
            
    $q="DELETE FROM img_home WHERE ID=$ID";//verifica come si chiama il campo dell'id dell'immagine
            
    if(mysql_query($q)){
                
    $avviso="eliminata l'immagine con id= $ID
    "
    ;
            }else{
                
    $avviso="non è stato possibile eliminare l'immagine con id= $ID
    "
    ;
            }
            echo 
    "<meta http-equiv='Refresh' content='4; URL=".htmlspecialchars($_SERVER['PHP_SELF'])."'>";
        }
    }

    //.... 
    $result mysql_query("SELECT * FROM img_home")or die(mysql_error()); 
    if(
    mysql_num_rows($result)>0){ 
        
        
        while (
    $row mysql_fetch_array($result)) {
    ?> 
    [img]../img/<?php echo $row ['nome_foto']; ?>[/img]" />    
        
    [url="?id=<?php echo $row['ID']; ?>"] CONFERMA'))'>cancella[/url]
      
    <?php 
    }

    }
    Si è miracolosamente materializzato un $ID valorizzato non si sa dove
    "Mai discutere con un idiota. Ti trascina al suo livello e ti batte con l'esperienza." (Oscar Wilde)

  7. #7
    Moderatore di Annunci siti web, Offro lavoro/collaborazione, Cerco lavoro L'avatar di cavicchiandrea
    Registrato dal
    Aug 2001
    Messaggi
    26,133
    <a href="?id=<?php echo $row['ID']; ?>" <--- la querystring id è piccola pertanto $_GET["id"]
    if(isset($_GET['id'])){
    $ID=$_GET['id'];....
    Cavicchi Andrea
    Problemi con javascript, jquery, ajax clicca qui

  8. #8
    Grazie dell'osservazione. Nel database ho tre campi:
    ID, nome_foto, nome_img
    ho corretto $id_del però ancora non funziona...


    Io volevo farti notare che penso servano queste virgolette nella query della 5°riga
    codice:
    $q = "DELETE FROM img_home WHERE ID = '$id_del' ";//verifica come si chiama il campo dell'id dell'immagine
    Tutto ciò partendo dal codice originale.
    In aggiunta,come ha scritto cavicchiandrea se alla pagina ci arrivi da questo link visto che qui è minuscolo anche dopo lo deve essere ($_GET['id']) --> devi cambiare pure quello


  9. #9
    Utente di HTML.it
    Registrato dal
    Sep 2011
    Messaggi
    65
    ho messo id piccolo nel db in modo da non far confusione e aggiunto le virgolette ma ancora non ci sono
    grazie della pazienza


    Codice PHP:
      <?php
    if(isset($_GET['id'])){
        
    $id_del=$_GET['id'];
        if(
    is_int($id)){
            
    $q="DELETE FROM img_home WHERE id='$id_del'";//verifica come si chiama il campo dell'id dell'immagine
            
    if(mysql_query($q)){
                
    $avviso="eliminata l'immagine con id= '$id_del'
    "
    ;
            }else{
                
    $avviso="non è stato possibile eliminare l'immagine con id= '$id_del'
    "
    ;
            }
            echo 
    "<meta http-equiv='Refresh' content='4; URL=".htmlspecialchars($_SERVER['PHP_SELF'])."'>";
        }
    }

    //.... 
    $result mysql_query("SELECT * FROM img_home")or die(mysql_error()); 
    if(
    mysql_num_rows($result)>0){ 
        
        
        while (
    $row mysql_fetch_array($result)) {
    ?> 
    [img]../img/<?php echo $row ['nome_foto']; ?>[/img]" />    
        
    [url="?id=<?php echo $row['id']; ?>"] CONFERMA'))'>cancella[/url]
      
    <?php 
    }

    }

  10. #10
    Tu con is_int controlli che id sia un numero ma penso sia una stringa....quindi prova a farci una conversione

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.