Visualizzazione dei risultati da 1 a 8 su 8
  1. #1
    Utente di HTML.it
    Registrato dal
    Sep 2012
    Messaggi
    10

    Cancellare dati da mysql trammite bottone

    Buona sera a tutti, sto creando una specie di Guestbook e mi sono imbattuto in problema che fatico a risolvere.

    mettiamo il caso in cui io abbia una serie di div con i diversi messaggi inviati (che ho prima estratto dal database:

    <div class="title_notes">Pubblicato da Nolex<button class="delete">X</button></div>
    <div class="box_notes">prova numero 1</div>

    <div class="title_notes">Pubblicato da Alex<button class="delete">X</button></div>
    <div class="box_notes">Prova numero 2</div>

    <div class="title_notes">Pubblicato da Vane<button class="delete">X</button></div>
    <div class="box_notes">Prova numero 3</div>

    <div class="title_notes">Pubblicato da Ciao<button class="delete">X</button></div>
    <div class="box_notes">Prova numero 4</div>

    Cliccando sul bottone con la X vorrei cancellare il record in mysql del post relativo. sto provando a farlo con jquery (con l'utilizzo di $.ajax) ma non riesco a trovre un modo per rendere singola la selezione della nota.

    Grazie in anticipo

  2. #2
    Ciao i messaggi inseriti nel database hanno un codice identificativo? un id o qualcosa del genere?

    se si puoi usare quello per decidere quale messaggio eliminare..
    Questa volta, più che un voto.. è favoreggiamento.

  3. #3
    dai un id alle note corrispondente all id che hai nel DB

  4. #4
    Utente di HTML.it
    Registrato dal
    Sep 2012
    Messaggi
    10
    Grazie mille per l consiglio, sta sera proverò a farlo

  5. #5
    Utente di HTML.it
    Registrato dal
    Sep 2012
    Messaggi
    10
    Vi posto il testo, non capisco perchè non debba funzionare.

    HTML/PHP

    <?php

    $db_select=mysql_query("SELECT * FROM note");
    while($dati=mysql_fetch_array($db_select)){
    echo "<div class=\"title_notes\">Pubblicato da " .$dati['username']. "<button class=\"delete\" onclick=\"cancel('".$dati['id']."')\">X</button></div>
    <div class=\"box_notes\">" .$dati['nota']. "</div>";
    }

    ?>

    che diventa così:

    <div class="title_notes">Pubblicato da Alex<button class="delete" onclick="cancel('2')">X</button></div>
    <div class="box_notes">Prova numero 2</div>

    <div class="title_notes">Pubblicato da Ciao<button class="delete" onclick="cancel('4')">X</button></div>
    <div class="box_notes">Prova numero 4</div>

    ecc..

    JAVASCIRPT/JQUERY

    function cancel(id){
    $.ajax({
    type: "POST",
    url: "cancel.php",
    data: "id="+id,
    })
    }

    FILE CANCEL.PHP

    <?php

    include "config.php";

    $id= htmlspecialchars(trim($_POST['id']));

    $db_cancel="DELETE FROM `note` WHERE `id`='$id'";
    mysql_query($db_insert) or die ("Errore nell'eliminazione dei dati nel nostro database");


    ?>

    se sostituisco la funzione $.ajax con qualcos altro come alert(id) funziona correttamente, il file config.php è corretto perchè lo utilizzo pure per inserire i file e funziona.

  6. #6
    Moderatore di JavaScript L'avatar di br1
    Registrato dal
    Jul 1999
    Messaggi
    19,998
    Originariamente inviato da Nolex

    FILE CANCEL.PHP

    <?php

    include "config.php";

    $id= htmlspecialchars(trim($_POST['id']));

    $db_cancel="DELETE FROM `note` WHERE `id`='$id'";
    mysql_query($db_insert) or die ("Errore nell'eliminazione dei dati nel nostro database");

    ?>
    Ne capisco una pizza di PHP ma le parti in rosso mi sembrano strane...
    Il guaio per i poveri computers e' che sono gli uomini a comandarli.

    Attenzione ai titoli delle discussioni: (ri)leggete il regolamento
    Consultate la discussione in rilievo: script / discussioni utili
    Usate la funzione di Ricerca del Forum

  7. #7
    Moderatore di Annunci siti web, Offro lavoro/collaborazione, Cerco lavoro L'avatar di cavicchiandrea
    Registrato dal
    Aug 2001
    Messaggi
    26,133
    Prova questa chiamata:
    codice:
    function cancel(id){
    $.ajax({ 
      type: "POST", 
      url: "cancel.php", 
      data: {id:id} 
    }).done(function( msg ) { 
      alert( "messaggio " + msg ); 
    });
    }
    *done e disponibile solo dalla verisone di jquery 1.8 (http://api.jquery.com/jQuery.ajax/)
    ** verifica che l'Id che passi che racchiudendolo tra gli apici '' da numero diventa stringa
    Cavicchi Andrea
    Problemi con javascript, jquery, ajax clicca qui

  8. #8
    Utente di HTML.it
    Registrato dal
    Sep 2012
    Messaggi
    10
    Era il file cancel.php... avevo fatto un copia e incolla e non l'avevo modificato bene D:

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.