Visualizzazione risultati 1 fino 15 di 15

Discussione: eseguire operazioni crud sul db tramite form html

  1. #1
    Guest

    Exclamation eseguire operazioni crud sul db tramite form html

    Buonasera!...ho bisogno di aiuto visto che domani il mio prof vuole il lavoro completato.
    Io per farlo ho bisogno di sapere come posso fare per aggiornare, selezionare, cancellare, aggiungere i campi di una tabella di un database attraverso una pagina html, con un form che contiene le text box riferite ai campi della tabella, nelle quali l'utente inserisce i dati. Io vorrei fare che ci siano 4 bottoni: aggiorna - seleziona - aggiungi - cancella
    e che poi cliccando su uno di essi, ogni bottone chiamasse una pagina html con script php diversa, che dà come risposta il risultato della query. Non riesco a fare il form nidificato, perchè non so come chiamare per ogni bottone una pagina diversa...sono stata chiara??...chi mi può aiutare??...per favore, sono a rischio, voi siete il mio ultimo tentativo...li ho provati tutti e ora è troppo tardi...rispondete presto x favore...
    grazie, debora

  2. #2
    Guest

    Predefinito

    Il tuo prof ti avrà dato qualche libro di PHP e HTML?

    Devi per prima cosa imparare a collegarti ad un database con php
    poi impari a creare tabelle poi ad inserire ed eliminare record e infine
    a fare query.

    Devi realizzarlo in locale?
    Ti serve anche un server virtuale che interpreti il php

    fammi sapere domande specifiche magari posso consigliarti qualcosa
    Ultima modifica di gattilandia : 21-05-2008 alle ore 00.15.09

  3. #3
    Guest

    Predefinito

    Codice PHP:
    <form id="add" action="aggiungi.php" method="GET">
    <
    input type="text" name="campo1">
    <
    input type="text" name="campo2">
    <
    input type="text" name="campo3">
    <
    input type="submit" value="Aggiungi" name="Aggiungi">
    </
    form>
    nella pagina aggiungi.php, includerai il codice php che preleverà il valore di $_GET ed eseguirà una query che inserirà il nuovo regord nella tabella che avrai già creato manualmente.

    Per eliminare un record:
    Codice PHP:
    <form id="del" action="elimina.php" method="GET">
    <
    input type="text" name="id">
    <
    input type="submit" value="Elimina" name="Elimina">
    </
    form>
    La pagina elimina.php eseguirà una query che elimina il record in cui il campo id è settato uguale a valore immesso nella casella di testo.

    Per mdificare un record, puoi fare nello stesso modo con cui aggiungi un nuovo record con l'accortezza di inserire una casella di testo nascosta che conterrà l'id del record da modificare. Ovviamente la query sarà diversa...

    Spero di esserti stato di aiuto. Altrimenti "marina"

    Buona fortuna per domani.

  4. #4
    Guest

    Predefinito

    Si,ho tutti i libri a disposizione, so fare il collegamento al db, creare tabelle e aggiungere record. So fare tutto....ain!
    A parte gli scherzi...quello che mi ha suggerito giuseppeiemma l'ho capito e mi sembra fattibile...ma in quel modo devo creare tanti form, ognuno per ogni operazione che desidero fare sulla tabella del db?? Sai se è possibile creare un unico form con tanti bottoni che si collegano a pagine diverse, in base all'operazione da eseguire?...Perchè con il form normale nel tag <form action... io posso chiamare solo una pagina...io vorrei chiamarne una ogni bottone...
    chiaro?...
    risp e grazie!!

  5. #5
    Guest

    Predefinito

    Citazione Originalmente inviato da cardettadebora Visualizza messaggio
    ma in quel modo devo creare tanti form, ognuno per ogni operazione che desidero fare sulla tabella del db??
    un form fa un azzione quindi si devi farti un form per ogni operazione sulla tabella.
    Però potresti fare un unico form solo nel caso in cui unissi i due file aggiungi.php
    ed elimina.php in un unico file e dovresti modificare il codice php in modo che si
    distingua tra le operazioni in base al bottone cliccato dal form.

    Ma scusa xke non puoi usare più form?

  6. #6
    Guest

    Predefinito

    Citazione Originalmente inviato da cardettadebora Visualizza messaggio
    ma in quel modo devo creare tanti form, ognuno per ogni operazione che desidero fare sulla tabella del db??
    Si.

    Citazione Originalmente inviato da cardettadebora Visualizza messaggio
    Sai se è possibile creare un unico form con tanti bottoni che si collegano a pagine diverse, in base all'operazione da eseguire?...Perchè con il form normale nel tag <form action... io posso chiamare solo una pagina...io vorrei chiamarne una ogni bottone...
    chiaro?...
    risp e grazie!!
    Unico form e più pagine... mi dispiace, non sò come e se si possa fare.
    Scusami, ma non riesco a capire perchè non và bene usare 3 form... ti è stato imposto dal professore?

  7. #7
    Guest

    Predefinito

    PROPRIO COSI'!! Il mio professore mi ha sempre detto di usare i form nidificati, ma io non li ho saputi mai fare...boooo!!!...ho sempre trovato soluzioni alternative, tipo quella di fare ogni form per ogni operazione. Ma il prof mi diceva sempre: "E' troppo ripetitivo...sempre lo stesso form!!...Cambiano solo i nomi dei bottoni...fallo nidificato!..."
    E COME?!?!?
    Domani è il giorno fatidico...prima delle pagelle...uao!

    Io sto lavorando in locale e uso EASYPHP.
    ...H E L P...

  8. #8
    Guest

    Predefinito

    Citazione Originalmente inviato da cardettadebora Visualizza messaggio
    PROPRIO COSI'!! Il mio professore mi ha sempre detto di usare i form nidificati, ma io non li ho saputi mai fare...boooo!!!...ho sempre trovato soluzioni alternative, tipo quella di fare ogni form per ogni operazione. Ma il prof mi diceva sempre: "E' troppo ripetitivo...sempre lo stesso form!!...Cambiano solo i nomi dei bottoni...fallo nidificato!..."
    E COME?!?!?
    Domani è il giorno fatidico...prima delle pagelle...uao!

    Io sto lavorando in locale e uso EASYPHP.
    ...H E L P...
    Guarda questo:
    Codice PHP:
    <form action="aggiorna_db.php" name="aggiornamento" method="post">
    <
    form action="anteprima.php" name="anteprima" method="post" target="_blank">
    <
    textarea name="testo" rows="15" cols="85">bla bla bla</textarea>
    <
    input name="aggiorna" type="submit" value="Salva">
    </
    form>
    <
    input name="aggiorna" type="submit" value="Salva">
    </
    form>
    Non si possono nidificare i form... ma si possono dotare di pulsanti che svolgono diverse azioni.
    Codice PHP:
    <form action="aggiorna_db.php" name="aggiornamento" method="post">
    <
    textarea name="testo" rows="15" cols="85">bla bla bla</textarea>
    <
    input name="aggiorna" type="button" value="Salva"
    onclick="this.form.action='aggiorna_db.php';this.form.target='_self';this.form.submit();">
    <
    input name="anteprima" type="button" value="Anteprima"
    onclick="this.form.action='anteprima.php';this.form.target='_blank';this.form.submit();">
    </
    form>
    Se poi scopri come si nidificano postami il codice.
    secondo me il prof ti voleva dire qualcos'altro.
    non stai confondendo form con frame o con tabelle ?
    ciao
    Ultima modifica di gattilandia : 21-05-2008 alle ore 01.05.23

  9. #9
    Guest

    Predefinito

    Ok. Proviamo a fare che inserisco in un unico form tanti bottoni, ognuno che dovrebbe fare una diversa operazione.

    <form action = "NuovoUtente2.php" method = "POST">
    CODICE: <input type="text" name="codice">
    COGNOME: <input type="text" name="cognome">
    NOME:<input type="text" name="nome">
    INDIRIZZO: <input type="text" name="indirizzo">
    CITTA':<input type="text" name="citta">
    <input type="submit" value="Aggiungi">
    <input type="submit" value="Aggiorna">
    <input type="submit" value="Cancella">
    <input type="submit" value="Seleziona">
    <input type="reset" value="Pulisci">
    </form>

    ed ora?? Io devo pur collegare ad ogni bottone una pagina php...con le diverse query sul db...
    come posso fare?
    grazie

  10. #10
    Guest

    Predefinito

    Prova con questo:

    Codice:
    <form action = "NuovoUtente2.php" method = "POST">
    CODICE: <input type="text" name="codice">
    COGNOME: <input type="text" name="cognome">
    NOME:<input type="text" name="nome">
    INDIRIZZO: <input type="text" name="indirizzo">
    CITTA':<input type="text" name="citta">
    <input type="submit" value="Aggiungi" onclick=" this.form.action='aggiungi.php';this.form.target='_self';this.form.submit();">
    <input type="submit" value="Aggiorna" onclick=" this.form.action='aggiorna.php';this.form.target='_self';this.form.submit();">
    <input type="submit" value="Cancella" onclick=" this.form.action='cancella.php';this.form.target='_self';this.form.submit();">
    <input type="submit" value="Seleziona" onclick=" this.form.action='seleziona.php';this.form.target='_self';this.form.submit();">
    <input type="reset" value="Pulisci" onclick=" this.form.action='pulisci.php';this.form.target='_self';this.form.submit();">
    </form>
    Ultima modifica di gattilandia : 21-05-2008 alle ore 01.16.05

  11. #11
    Guest

    Predefinito

    Niente...ho scritto questo codice ma quando clicco sia su aggiungi che su aggiorna mi apre sempre la pagina "aggiorna.php" quando dovrebbero essere diverse,,,
    Non so come fare...sai poi c'è il problema anche nel codice php dell'aggiornamento con il comando sql UPDATE e con DELETE per la cancellazione.
    Il prof vuole che dal form l'utente inserisce i dati nei campi e se vuole aggiungere l'utente clicca su aggiungi, se vuole aggiornarne uno preesistente clicca su aggiorna e se vuole cancellarlo, su cancella.
    Io non riesco nemmeno a creare un codice dinamico che si possa adattare ai dati inseriti nel form per fare le query sul db evitando di perdere dati!...
    sono stata chiara?
    risp x favore
    grazie

  12. #12
    Guest

    Predefinito

    ciao! per quanto riguarda lo script php; come si fa ad aggiornare un database usando pagine html con linguaggio php e con i form?

    risp x favore

    Ciao!

    edit:

    qualcuno sa come si fa per visualizzare i dati di un record di un database in un form??
    per favore qualcuno che mi risponda! E' urgente!! Devo consegnare i miei lavori e non ho fniroo!!

    ciao!
    Ultima modifica di dreadnaut : 03-06-2008 alle ore 21.25.21

  13. #13
    L'avatar di dreadnaut
    dreadnaut non è connesso Super Moderatore
    Data registrazione
    22-02-2004
    Messaggi
    6,306

    Predefinito

    estrai il record dal database eseguendo una query (mysql_query()) e recuperandone il risultato (con una delle funzioni mysql_fetch_qualcosa()).

    A quel punto hai il tuo risultato, e per mostrarlo lo imbelletti con un po' di html attorno. Se devi metterlo in un form, puoi mettere i vari valori negli attributi value dei campi:
    Codice PHP:
    <input type="text" value="<?= $risultato ?>" name="campo1" />
    Sempre meglio passare tutti i campi in htmlspecialchars, prima di mandarli in output.

  14. #14
    L'avatar di seneca
    seneca non è connesso Super Moderatore
    Data registrazione
    18-12-2004
    Residenza
    la Città Eterna
    Messaggi
    8,376

    Predefinito

    Scusa, ma cosa è cambiato dalla tua richiesta precedente?


    -- Aut Roma Aut Nihil!

  15. #15
    Guest

    Predefinito

    Allora:
    Io ho creato una pag. html con un form action che si collega ad una pagina cn lunguaggio php. In questo form l'utente inserisce il codice dell'utente del db che vorrebbe aggiornare.
    automaticamente uso il metodo POST per passare il parametro codice e nella pag php ho scritto così:
    Codice PHP:
    <?php
    // Apre la connessione con il server MYSQL
    $conn = mysql_connect("localhost", "root", "");
    if (!
    $conn)
    {
    echo (
    "Errore durante la connessione a MySQL.");
    exit();
    }
    // Selezione del database "utenze"
    mysql_select_db("utenze");
    // Acquisizione dei dati dal form HTML
    $codice = $_POST["codice"];
    $cognome = $_POST["cognome"];
    $nome = $_POST["nome"];
    $indirizzo = $_POST["indirizzo"];
    $citta = $_POST["citta"];

    $strSQL = " SELECT * ";
    $strSQL .= " FROM Utenti ";
    $strSQL .= " WHERE codice = '$codice' ";

    $risultato = mysql_query($strSQL);
    if (!
    $risultato)
    {
    echo (
    "Errore nel comando SELECT");
    exit();
    }
    if (
    mysql_num_rows($risultato) == 0)
    {
    echo (
    "Nessun utente è presente!");
    exit();
    }
    else
    {
    echo (
    "<form>");
    echo (
    " CODICE: <input type = "text" value = "codice"> ");
    echo(
    "<br>");
    echo (
    "COGNOME: <input type="text" value="cognome">");
    echo(
    "<br>");
    echo (
    "NOME: <input type="text" value="nome">");
    echo(
    "<br>");
    echo (
    "INDIRIZZO: <input type="text" value="indirizzo">");
    echo(
    "<br>");
    echo (
    "CITTA': <input type="text" value="citta">");
    echo(
    "<br>");
    echo(
    "<br>");
    echo (
    "</form>");
    }
    ?>
    Il codice è da correggere perchè ci sono diversi errori!...
    Il problema sorge nel visualizzare il record in un form, come dovrei fare per adempiere al tuo consiglio??....Visto che credo che sia la soluzione??...

    risp
    Ultima modifica di seneca : 03-06-2008 alle ore 21.43.18

Regole di scrittura

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