Pagina 2 di 2 PrimoPrimo 12
Visualizzazione risultati 31 fino 40 di 40
Like Tree3Likes

Discussione: conferma cancellazione

  1. #31
    Guest

    Predefinito

    Allora facciamo una bella cosa perchè le parole le porta via il vento, ti do un esercizio da fare, mi fai una form di inserimento dati con
    Nome
    Cognome
    Via
    Numero
    Città

    tutti i campi sono obbligatori e devono essere valorizzati in maniera corretta, cioè nome e cognome stringhe a soli caratteri alfabetici, numero solo numeri senza caratteri speciali, tutti i campi sono obbligatori, poi mi metti un bottone che chiamerai"variazione" al click del bottone si aprirà un "alert""dialog" che contiene la form con nome, cognome, via, numero e città, ovviamente recuperando i dati che hai inserito nella form base...Quando clicchi sulla città fai una chiamata al DB e recuperi in autocomplete le città che sono inserite nella tabella "città" del Db, l'autocomplete parte dal terzo carattere inserito.
    Se un utente scrive una città che non è censita all'autocomplete devi avvisare l'utente con un alert, "città non presente", quando clicchi salva dalla dialog di variazione i dati che hai variato vengono aggiornati automaticamente nel form base, se non fai variazioni al click del conferma nella dialog devi avvertire "non hai fatto variazioni"...Quando hai fatto questo poi iniziamo anche a salvare sul DB.Così vediamo come gestisci il lato client e poi il lato server.

  2. #32
    Guest

    Predefinito

    Ovviamente quando inserisci tre lettere per la città deve aprirsi una finestra con l'elenco delle città presenti nel DB partendo dalle tre lettere inserite dall'utente, se la città non è presente si aprirà invece una finestra con CENSISCI CITTA' e l'utente inserirà la città con CAP obbligatorio...quando censisci la città vai a salvare la città sul DB nella tabella città e cap...Così iniziamo a parlare seriamente di gestione dei dati.Scusa ma quando io facevo la gavetta, ribadisco mi impegnavo a capire le miriadi di funzionalità ed ancora oggi ho tantissimo da imparare ma a mio vantaggio ho la fortuna che mi piace programmare e voglio sempre imparare metodi nuovi senza arrogarmi il diritto di sapere tutto.Anzi....

  3. #33
    L'avatar di alemoppo
    alemoppo non è connesso Staff AV
    Data registrazione
    24-08-2008
    Residenza
    PU / BO
    Messaggi
    22,685

    Predefinito

    Guarda, ora sono di "frettissima" e non ho tempo. Al più se avrò voglia lo farò oggi pomeriggio/domani.

    Ti faccio soltanto notare che ad ogni tua replica, ti è stato contro-ribattuto (frase per frase) e non sei stato in grado di ribattere nulla, ma hai sempre "cambiato discorso".

    In generale non ho alcun problema a "dartela vinta". Non devo dimostrarti nulla. L'importante che è gli utenti che per caso visualizzano questo thread non imparino cose errate dalle tue risposte (se provi i tuoi script, nemmeno funzionano); leggendo mi pare che si capisca chi risponde in modo documentato e soprattutto con cose funzionanti e chi invece dice "nonono non è così perché io ci lavoro".

    p.s: ti sembra così difficile la tua richiesta da fare, senza l'utilizzo di jQuery?

    Ciao!
    Ultima modifica di alemoppo : 09-03-2015 alle ore 12.56.59

  4. #34
    Guest

    Predefinito

    Ti ho fatto una domanda ieri sera, cioè che lavoro fai, secondo me ti stai prendendo la prepotenza di sapere come funziona il lavoro senza conoscere nulla di gestione dati(e lo sai benissimo caro alemoppo, quindi esamino di coscienza), io ti sto scrivendo dal lavoro e ribadisco faccio gestione e analisi software per applicazioni aziendali(non sono un grafico web ma un analista funzionale), fai l'esercizio che ti ho detto prima con autocomplete, dialog di inserimento dati validazione e salvataggio, per il momento ti faccio chiamare una pagina solamente cioè quella per ricavare le città in futuro te ne farò chiamare 5-6-7-8-9 quelle che servono, tu hai detto che i siti migliori sono quelli con javascript disabilitato, da qui si vede che non fai un lavoro di gestione dei dati lato client e l'autocomplete è proprio un esempio di chiamata Ajax con dataType:json etc...etc...
    Poi non ho bisogno di mettermi in competizione con te Alemoppo, anche perchè ormai ho quasi i capelli bianchi, quelli pochi che rimangono...Se vuoi imparare qualcosina ripeto sono disponibile ma solo se c'è l'umiltà di imparare ed ascoltare altrimenti non insegno nulla.... ;)
    Ciao buona giornata.

  5. #35
    Guest

    Predefinito

    Ho visto che ci sono state tante risposte alla mia domanda, ne sono orgoglioso e vi ringrazio.
    Però una strada dovrò prenderla e spero non si offenda nessuno.
    Riassumo prima la mia esigenza.
    Devo cancellare solo un dato.
    Questo non è un problema, attualmente lo faccio, ma senza aver nessun riscontro immediato.
    Cioè, quello che mi serve, è appunto avere una precauzione nel malaugurato caso uno clicchi sul pulsante ELIMINA per errore.
    Prima di eliminare un autore, voglio che ci sia la possibilità di dare la conferma o al limite annulare l'operazione.
    Tutto qui.

    Detto questo, ho provato con il codice suggerito da fractalcosmo. Ma non riesco a farlo funzionare.
    Cioè se annullo l'operazione va bene, ma se premo su OK, non mi carica la pagina elimina_autore.php preparata così:
    Codice PHP:
    <?php
    include("collega.php");

    //se ida è selezionato allora inoltro la cancellazione
    if (isset($_GET['ida']))
    {
    $ida = $_GET['ida'];

    $query = "DELETE FROM autori WHERE id_autore = '$ida' " ;
    if (
    mysql_query($query, $db))
    header('location: http://'.$dominio.'inserisci.php'); // reindirizzamento

    }
    ?>
    ma rimane nella pagina del FORM.

    -----------------------------------------------------------------------------------------------------------
    Con il suggerimento di alemoppo invece non so come fare.
    Se metto nel form:
    Codice PHP:
    <form onsubmit="return Conferma_eliminazione()">
    come faccio poi a reindirizzare sulla pagina elimina_autore.php se devo eliminare il record ?

    Ho bisogno di capire meglio anch'io. Scusatemi. Grazie di nuovo a tutti per la pazienza.

  6. #36
    L'avatar di alemoppo
    alemoppo non è connesso Staff AV
    Data registrazione
    24-08-2008
    Residenza
    PU / BO
    Messaggi
    22,685

    Predefinito

    Potrei benissimo fare anche lo spazzino (con ovviamente tutto il rispetto per gli spazzini: pensate come sarebbero le nostre città senza loro...), ma se controbatto delle tue frasi documentando e/o facendo esempi e tu non ribatti, significa che ho ragione io. Quando è capitato questo?

    • Nel #4 sei intervenuto con del codice che non ha nessun senso: quando si invia il form, il tuo codice fa soltanto apparire degli alert (tra l'altro prima di verificare se l'operazione è andata a buon fine). Non gestisci assolutamente l'evento di invio dati, e infatti portier ha risposto che in ogni caso il form eliminava il record (il form viene inviato comunque).

      Nel #6 ho proposto la soluzione banale e più immediata, e poi ho corretto il tuo sorgente.

      A questo punto, visto che dici di saperne più di me avresti dovuto controbattere dicendo del perché in realtà il mio non è corretto mentre il tuo sì (anche se non funziona). Invece hai tirato fuori ajax (#7), che non vedo assolutamente cosa centri con il problema originario.
      In particolare esegue una richiesta get a "elimina_autore.php" passando ?ida=ida. Poi con window.location rifai la stessa cosa. Non ho ancora capito il perché, ma sorvoliamo. Infatti poi quanto l'ho fatto notare, hai modificato il sorgente con un po' più di senso (#9): la prima richiesta la fai a "convalida_autore.php", che immagino serva per sapere se l'autore esiste. Poi con la window.location effettui una seconda richiesta, questa volta senza ajax per eliminare l'autore, a "elimina_autore.php".

      Ah, il tutto usando del codice jQuery che non hai assolutamente spiegato come andrebbe usato: visto l'entità della richiesta, immagino che l'utente non sia molto esperto con queste cose (e in realtà non lo sono nemmeno io: lo sei soltanto tu in questo forum), e almeno avresti dovuto spiegare che occorre importare la libreria per il suo corretto funzionamento.
    • Poi c'é stato il fatto che js non è sempre attivo: concordo con te che se si vuol fare un'applicazione client lato javascript, è ovvio che si è costretti ad usare javascript. Ma in questo caso, per un form, perché non supportare anche l'1% di quelli che non lo supportano?
      Semplicemente, invece di:
      Codice HTML:
      <form>
      <input type="text" name="ida" value="" id="ida">
      <input id="elimina" type="button" value="Elimina" onclick="Conferma_eliminazione();">
      </form>
      fare:
      Codice HTML:
      <form action="elimina_autore.php" method="GET" onsubmit="return Conferma_eliminazione()">
      <input type="text" name="ida" value="" id="ida">
      <input id="elimina" type="submit" value="Elimina">
      </form>
      La tua risposta a questa cosa è stata che non è vero che ci sono visitatori che non supportano javascript, e il sito che ti ho linkato è sbagliato.
    • Addirittura nell'ultimo codice che ho scritto, hai detto che ho usato del codice PHP. Ma stai scherzando?
    • Il famigerato "return" inutile. Ti ho chiesto di provare gli script e dirmi come mai senza return, il codice non funziona.
    • Qui ti sei superato con questa bella chicca:
      Citazione Originalmente inviato da fractalcosmo Visualizza messaggio
      posso scrivere anche AUTORE PIPPO, non fai controlli dei dati lato client e chiami sempre il server a qualsiasi valorizzazione del dato, non si programma così....Ecchecavolo....
      Anche qui ti ho fatto la domanda:
      Uhm, e quindi vorresti dire che quando fai una chiamata ajax, non richiami il server?
      Mi hai risposto con:
      Citazione Originalmente inviato da fractalcosmo Visualizza messaggio
      eridaieeeeee....NOOOOOO CHE NON CHIAMO IL SERVER.....Il server lo chiamo solo quando c'è bisogno e sono sicuro che lo posso chiamare, altrimenti faccio funzioni di callback e chiamate asincrone
      A questo punto non so se era l'orario, ma penso che tu non abbia letto ciò che hai scritto: secondo te le chiamate asincrone verso il server non sono chiamate verso il server. Sembra quasi una battuta!
    • Citazione Originalmente inviato da fractalcosmo Visualizza messaggio
      Con jquery gestisci invece gli eventi di invio e manipoli gli eventi cosa che non puoi fare con javascript di basso livello
      Dopo averti risposto dicendo che anche senza jQuery si possono gestire quegli eventi, anche qui non hai più detto nulla.
    • Citazione Originalmente inviato da fractalcosmo Visualizza messaggio
      fammi questo con javascript senza usare jquery
      Dopo averti mostrato come sia possibilissimo farlo senza jQuery, sei passato ad assegnare compiti, senza dire perché quel codice in realtà non funziona ed è necessario utilizzare jQuery.


    Il bello è che ancora non hai capito cosa sia jQuery: è semplicemente una libreria che usa javascript. Non contiene istruzioni oscure al di fuori dei js. È fatto in js.
    Se apri il sorgente di jQuery in corrispondenza della gestione delle chiamate ajax, già alla riga 9 scoprirai che non si cono istruzioni oscure, ma anche in jQuery viene utilizzato l'oggetto XMLHttpRequest()!

    A parte il compitino che mi hai assegnato, mi sembra di aver risposto a tutte le tue repliche. Tutti i punti sopra invece non li hai minimamente risposti, andando ad aprire ogni volta nuove discussioni cambiando discorso.

    Sinceramente non so se ho voglia di fare quello scriptino, anche perché preferisco aiutare altre persone (o pulire la città da bravo spazzino) invece di dimostrarti aria fritta: jQuery è semplicemente javascript. Questa cosa puoi benissimo vederla da solo leggendo il sorgente.
    Che poi sia più comodo utilizzarlo beh, non c'é dubbio. Includere però migliaia di righe (jQuery) in una pagina per fare una richiesta ajax, sinceramente non mi sembra la mossa più intelligente: è vero che includendola in particolari modi, molto probabilmente lo script risiede già nella cache del browser visto che è comunque uno script utilizzato da altri siti. Però direi che è meglio evitarlo, per quanto possibile.

    _________________________
    @tecadonpiero:
    Citazione Originalmente inviato da tecadonpiero Visualizza messaggio
    Con il suggerimento di alemoppo invece non so come fare.
    Se metto nel form:
    Codice PHP:
    <form onsubmit="return Conferma_eliminazione()">
    come faccio poi a reindirizzare sulla pagina elimina_autore.php se devo eliminare il record ?
    Ovviamente ho aggiunto il "onsubmit", ma il form che hai fatto te andava bene: sono necessari "action", "method", etc che hai messo inizialmente. L'esempio è proprio qui sopra, nella mia risposta.

    Ah, ora vedo che come method hai utilizzato POST. Anche io utilizzo sempre POST, e ovviamente puoi utilizzarlo anche nel tuo caso.

    E comunque, mi ripeto ancora, la soluzione più semplice è prendere il form che hai fatto tu, e aggiungere soltanto onsubmit="return confirm(...)", così:
    Codice HTML:
    <form action="elimina_autore.php" method="POST" onsubmit="return confirm('Sei sicuro?')">
    <input type="hidden" name="ida" value="'.$autore .'" />
    Per eliminare questo autore premi sul bottone.  &nbsp; &nbsp; &nbsp;  
    <input id="elimina" type="submit" value="Elimina" /><br/><br/>
    </form>
    (mi raccomando il "return", altrimenti non funziona nulla) .

    Lasciando perdere ajax, jQuery e tutto il resto, inutili per il tuo problema. Il codice sopra funziona anche per chi ha javascript disabilitato: non chiede la conferma ovviamente, ma funziona. Potresti però implementare ciò che suggeriva karl94, con l'input type hidden.

    Anche per te alcuni suggerimenti: non si possono vedere i "&nbsp;" e "<br><br>" per staccare gli elementi: dovresti usare css per fare ciò!

    Ciao!
    Ultima modifica di alemoppo : 09-03-2015 alle ore 17.42.55

  7. #37
    Guest

    Predefinito

    Caro Alemoppo, sembra che non leggi quello che ho scritto, io non so più cosa dire, il $.get fa una chiamata asincrona nel case OK puoi fare altre chiamate con $.ajax, io ho detto che si può fare tutto dall'url in get con lo switch, ho detto che non necessita di inserire l'action nel form facendo appunto tutto in $.get, ma sembra che tu non leggi e vuoi solo controbattere, includere jquery non includi assolutamente miriadi di codice in html ma solo tre righe, includerai poi nella cartella dove ci sono le funzioni javascript i file jquery ma nell'html sono tre righe e una di css, non credo sia difficile da capire, l'utilità di jquery te l'ho spiegata abbastanza approfonditamente ieri sera ma continui a non voler capire, ti ho chiesto appunto di fare un esempio(che non riesci a fare)proprio dove necessita un autocomplete di chiamata asincrona, a me non interessa saperne più di te, non è proprio la mia ideologia ma tu hai subito risposto attaccando, invece di leggere quello che scrivono gli utenti, ti sei permesso addirittura di dire che consiglio male...andiamo proprio bene.
    Certo che Jquery è javascript ma è scritto proprio per gestire al meglio eventi che con javascript di basso livello avresti da scrivere milioni di righe di codice e sembra che il tuo pregiudizio su jquery non ti faccia capire l'utilità, io sono convinto che tu creda che jquery si usa per fare i menù a tendina :) ma ti assicuro che non è così...Come ti ho risposto ieri sera.
    Jquery è INDISPENSABILE se vuoi fare molte chiamate asincrone e gestirne gli eventi in tutti i momenti della chiamata, gestire gli eventi al passaggio dei parametri e dei valori, ribadisco jquery è javascript, lo sappiamo tutti ma l'utilità di jquery è quella di semplificare le funzionalità e di gestire meglio la scrittura e l'ordine del codice, ovviamente se non sei nell'ambiente non puoi capire.
    Su una cosa hai ragione e cioè che forse dovevo avvertire di inserire la libreria jquery ma se per questo motivo ti scagli contro di me attaccandomi in questo modo fino alle 4 di notte, permettimi di dire, stai sereno che nessuno vuole fare il professorino, spero neanche tu.
    Quando leggo quello che scrivi capisco che non hai molta gestione dati ma che programmi per hobby non lo fai per lavoro, per come ero io da giovane, dicevo una parola in meno ed ascoltavo se potevo imparare da qualcuno.
    Ciao

    Ps:action e metho non sono necessari quando fai una chiamata al click del button in jquery con $.get $.ajax o $.post...L'hidden di cui parli serve proprio per fare quell'esempio che ti ho detto prima, cambiamento di valori oppure no(l'alert non hai fatto nessuna variazione), lo fai con gli hidden...comunque se vuoi per divertimento prova a fare l'esempio che ti ho chiesto usa sqlite che è molto comodo e da lì crei le tabelle...o usa qualsiasi altro DB ma così impari nella pratica l'utilità delle librerie jquery.Ciao

  8. #38
    Guest

    Predefinito

    piero mi metti tutti i file del codice?
    Html, javascript e php tutti quelli che usi...Dopo cena ci do un'occhiata...Ciao

  9. #39
    Guest

    Predefinito

    Piero io non so l'utilità che più si addice alla tua richiesta, comunque possiamo dire che hai visto due modi di farlo, se vuoi inserire una funzione al click il return confirm lo puoi inserire all'interno e poi al return true decidi tu quello che devi fare, se un domani hai molti dati o comunque una situazione diversa da dover gestire con una chiamata ajax sai già come fare,se invece il tuo unico problema è passare una variabile dopo il confirm basta che il return confirm lo inserisci all'interno dell'html...tutto qui....

    Codice HTML:
    <form action="elimina_autore.php" method="post">
    <input type="hidden" name="ida" value="ciao"/>
    Per eliminare questo autore premi sul bottone.  &nbsp; &nbsp; &nbsp;  
     
    <input id="elimina" type="submit" value="Elimina" onclick="return confirm('sei sicuro?')"><br/><br/>
    </form> 
    Ovviamente cambia il type del pulsante, un conto è il submit che si occupa di lanciare il form e recuperare in base al method, mentre se usi una funzione javascript e fai chiamate ajax userai il type="button" e non hai bisogno di inserire nell'html nè il method nè l'action...
    Ciao


    Ps:Che ambaradan ehhh per un return confirm()...

  10. #40
    Guest

    Predefinito

    Ti posto anche l'esempio che abbiamo fatto ad inizio, cambiano alcune cose, hai tre soluzioni adesso :)

    diamo in ID al form e gestiamo con un onclick del button...e invochiamo la funzione Conferma_eliminazione();

    Codice HTML:
    <form action="elimina_autore.php" method="post" id="form">
    <input type="hidden" name="ida" value="ciao"/>
    Per eliminare questo autore premi sul bottone.  &nbsp; &nbsp; &nbsp;  
     
    <input id="elimina" type="button" value="Elimina" onclick="Conferma_eliminazione()"><br/><br/>
    </form>

    Codice:
    function Conferma_eliminazione(){
    	
    	var domanda = confirm("Sei sicuro?");
    	
    	if (domanda==true){
    
           document.forms["form"].submit();
    	}
    	else{
    		alert('Non hai cancellato');
    		return;
    	}
    }


    Ovviamente per il tuo scopo va bene...un domani già sai che se hai dei dati maggiori dentro l'if == true puoi invocare chiamate ajax e tutto quello che vuoi....
    Ciauuu
    Ultima modifica di fractalcosmo : 09-03-2015 alle ore 23.30.44

Pagina 2 di 2 PrimoPrimo 12

Regole di scrittura

  • Non puoi creare nuove discussioni
  • Non puoi rispondere ai messaggi
  • Non puoi inserire allegati.
  • Non puoi modificare i tuoi messaggi
  •