Pagina 1 di 3 1 2 3 ultimoultimo
Visualizzazione dei risultati da 1 a 10 su 22
  1. #1
    Utente di HTML.it
    Registrato dal
    Apr 2014
    residenza
    Piemonte
    Messaggi
    21

    Problemino con jqery-ajax-php

    Buonasera Signori/e, sono un nuovo utente in questa Comunità (intendo come utente registrato, seguo questo sito da molti anni e penso che sia un ottimo strumento, per imparare sempre nuove nozioni per quanto riguarda il "mondo" della programmazione, e per aggiornarsi! Colgo quindi l'occasione per ringraziarvi per tutti i problemi che, senza saperlo, mi avete aiutato a risolvere ). Ho ventitre anni e sono uno studente universitario, a tempo pieno, di informatica.

    Scusate la digressione, torniamo al dunque:

    come da titolo, ho un problema specialmente con jquery; sto realizzando una sorta di bacheca (simile a quella di Facebook) in cui, con Php, stampo a video un commento dopo l'altro. Ovviamente ad ogni div assegno un id differente, per poi tenere traccia, nel database, di ogni singolo commento che l'utente inserisce.

    Vorrei però inserire un bottone (accetto consigli su cosa inserire) che, una volta cliccato, la funzione jquery prenda l'id del div, lo mandi al mio motore php, il quale, in seguito, provvederà a cancellare dal db solo quel commento ed, infine, restituisca un messaggio all'utente.

    Ho un'idea generale di come funziona jquery, ho anche realizzato dei lavoretti particolari e "carini, quindi ho avuto modo di provarlo. Ma con questo problema ho passato molte ore a ragionare su come realizzare questo applicativo senza alcun esito .

    Ho un'ampia conoscenza del php, conosco però in maniera alquanto mediocre il jquery!

    PS:
    gli id dei div (che contengono i commenti) sono generati casualmente ed ovviamente non sono ricorrenti!

    Se qualcuno avesse voglia di aiutarmi glie ne sarei grato!!!!
    Grazie in anticipo.
    Un saluto da Berni.
    Ultima modifica di BerniBerat; 23-04-2014 a 01:34

  2. #2
    Utente di HTML.it
    Registrato dal
    Dec 2010
    Messaggi
    3,660
    il contesto è chiaro, ma precisamente quale difficoltà riscontri? non sai come effettuare una chiamata ajax? hai provato a buttare giù una bozza? hai del codice da farci vedere?

  3. #3
    Utente di HTML.it
    Registrato dal
    Feb 2014
    residenza
    Voltati
    Messaggi
    913
    Qualcosa tipo così

    codice HTML:
    <div id="commenti">
      <div id="destreafhk">
        Ommmamia, ma qianto scrivi?
        <button>Elimina</button>
      </div>
      <div id="desjyddhj">
         Nom è che ti sto facendo un esercizio per l'università?  :p
        <button> Elimina </button>
      </div>
    </div>
    Beh, fin qui mi sembra tutto facile...

    Poi, vediamo il jquery
    codice:
    $("#commenti button").click(function () {
      var comment = $(this).parent("div"); // Recupero il commento
      $.ajax({ // Chiamata ajax
        url: "elimina.php", // Url della pagina
        data: {"id_commento": commento.attr("id")}, // Parametri
        type: "post",
        success: function (result) { // Se il server risponde
           if (result == "deleted") { // Se nella pagina php era stampatu "deleted"
             comment.remove();
             alert("Commento eliminarto! :)");
           } else {
             alert ("Non sono riuscito a eliminare il commento :'(\n" + result);
           }
        }
      });
    });
    Visto che il php lo conosci... ti dico solo due cose
    1. L'id lo recuperi con
      Codice PHP:
      $_POST["id_commento"
    2. Se cancelli con successo il commento dal db stampa "deleted" nella pagina, altrimenti puoi stampare un messaggio d'errore come ad esempio "Il commento non è presente nei nostri database"
    No

  4. #4
    Utente di HTML.it
    Registrato dal
    Apr 2014
    residenza
    Piemonte
    Messaggi
    21
    Salve signori =)
    Anzitutto vi ringrazio per le risposte, specialmente a Tampertools !!!
    Credo che sia propria la soluzione per il mio problema devo soltanto provare ad implementarlo!! =)
    Vi farò sapere!! =)
    Grazie mille!!

  5. #5
    Utente di HTML.it
    Registrato dal
    Apr 2014
    residenza
    Piemonte
    Messaggi
    21
    div.png
    Eccomi, ho testato il codice ma non riesco a farlo funzionare mmm... =)
    Qui sopra potete vedere la gerarchia dei contenitori..
    E qui sotto il codice che mi ha gentilmente consigliato il grande Tamper =)..

    codice:
    
    
    codice:
    $("#main button").click(function () {
      var comment = $(this).parent("div"); // Recupero il commento
      alert(comment);
      $.ajax({ // Chiamata ajax
        url: "deleteCom.php", // Url della pagina
        data: {"id_commento": commento.attr("id")}, // Parametri
        type: "get",
        success: function (result) { // Se il server risponde
           if (result == "deleted") { // Se nella pagina php era stampatu "deleted"
             comment.remove();
             alert("Commento eliminarto! :)");
           } else {
             alert ("Non sono riuscito a eliminare il commento :'(\n" + result);
           }
        }
      });
    });


    Come dicevo, ho provato ma non funge il codice jqu!!! =)
    Consigli ?? =)

  6. #6
    Utente di HTML.it
    Registrato dal
    Apr 2014
    residenza
    Piemonte
    Messaggi
    21
    div.png
    Eccomi, ho testato il codice ma non riesco a farlo funzionare mmm... =)
    Qui sopra potete vedere la gerarchia dei contenitori..
    E qui sotto il codice che mi ha gentilmente consigliato il grande Tamper =)..
    codice:
    $("#main button").click(function () {
      var comment = $(this).parent("div"); // Recupero il commento
      alert(comment);
      $.ajax({ // Chiamata ajax
        url: "deleteCom.php", // Url della pagina
        data: {"id_commento": commento.attr("id")}, // Parametri
        type: "get",
        success: function (result) { // Se il server risponde
           if (result == "deleted") { // Se nella pagina php era stampatu "deleted"
             comment.remove();
             alert("Commento eliminarto! :)");
           } else {
             alert ("Non sono riuscito a eliminare il commento :'(\n" + result);
           }
        }
      });
    });
    PS: all'interno di ogni contenitore "commento" è presente il button =)
    Come dicevo, ho provato ma non funge il codice jqu!!! =)
    Consigli ?? =)

  7. #7
    Moderatore di Annunci siti web, Offro lavoro/collaborazione, Cerco lavoro L'avatar di cavicchiandrea
    Registrato dal
    Aug 2001
    Messaggi
    26,131
    $(".comment button").click(function(){
    var commento = $(this);// Recupero il commento
    alert
    (commento);
    $
    .ajax({// Chiamata ajax
    url
    :"deleteCom.php",// Url della pagina
    data
    :{"id_commento": commento.attr("id")},// Parametri
    type
    :"get",
    success
    :function(result){// Se il server risponde
    if(result =="deleted"){// Se nella pagina php era stampatu "deleted"
    comment
    .remove();
    alert
    ("Commento eliminarto! ");
    }else{
    alert
    ("Non sono riuscito a eliminare il commento :'(\n"+ result);
    }
    }
    });
    });
    Cavicchi Andrea
    Problemi con javascript, jquery, ajax clicca qui

  8. #8
    Utente di HTML.it L'avatar di cassano
    Registrato dal
    Aug 2004
    Messaggi
    3,000
    codice:
    var commento = $(this);// Recupero il commento
    
    Ma questo non recupera il riferimento al bottone ?

  9. #9
    Utente di HTML.it
    Registrato dal
    Feb 2014
    residenza
    Voltati
    Messaggi
    913
    Ups ho abagliato doveva essere
    $(this).parent ();...
    $(this)"e solo il button. ..
    Ultima modifica di tampertools; 24-04-2014 a 09:14
    No

  10. #10
    Moderatore di Annunci siti web, Offro lavoro/collaborazione, Cerco lavoro L'avatar di cavicchiandrea
    Registrato dal
    Aug 2001
    Messaggi
    26,131
    Non sono sicuro (anche se è molto probabile) che this si riferisca al button invece che alla classe .comment prova con parent() o senza

    Cavicchi Andrea
    Problemi con javascript, jquery, ajax clicca qui

Tag per questa discussione

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 © 2024 vBulletin Solutions, Inc. All rights reserved.