Navigazione

    Privacy - Termini e condizioni
    © 2020 Search On Media Group S.r.l.
    • Registrati
    • Accedi
    • CATEGORIES
    • Discussioni
    • Non letti
    • Recenti
    • Hashtags
    • Popolare
    • Utenti
    • Stream
    • Interest
    • Categories
    1. Home
    2. Categorie
    3. Coding e Sistemistica
    4. Coding
    5. Come modificare un campo record?
    Questa discussione è stata cancellata. Solo gli utenti con diritti di gestione possono vederla.
    • T
      thedarkita ModSenior • ultima modifica di

      La pagina che hai appena postato si occupa dell'inserimento e non dell'aggiornamento del record. Fanno anche riferimento a 2 tabelle differenti.

      0 Miglior Risposta Ringrazia Cita Rispondi

        1 Risposta Ultima Risposta
      • F
        fabrizio23 User Attivo • ultima modifica di

        Per le tabelle differenti te l'ho detto, quello era uno script non aggiornato, dato che dietro di me avevo solo la penna, ma in quello originale coindidono, infatti funziona perfettamente. 🙂

        0 Miglior Risposta Ringrazia Cita Rispondi

          1 Risposta Ultima Risposta
        • F
          fabrizio23 User Attivo • ultima modifica di

          Ciao! Ecco la pagina modifica_dati_clienti.php intera 🙂
          Gli ho aggiunto l'isset.
          [php]<?php
          // Dati connessione al database
          $db_host = 'localhost'; // Host - solitamente localhost
          $db_utente = 'root'; // Nome utente del Database
          $db_password = ''; // Password del Database
          $db_nomedb = ''; // Nome del Database
          // Effettua la connessione al database
          $dbh=mysql_connect ($db_host, $db_utente, $db_password) or die ('Errore nella stringa di connessione al database: '.mysql_error());
          mysql_select_db($db_nomedb);

          if (isset($_POST['id_cl']) && !empty($_POST['id_cl'])) {
          $id=$_POST['id_cl'];
          $cognome=$_POST['cognome'];
          $nome=$_POST['nome'];
          $query=mysql_query("UPDATE inserimento_dati SET cognome = '$cognome', nome = '$nome' WHERE id_cl = '$id_cl'");
          $risultato = mysql_query($query) or die ("Query "$query" fallita ::: ".mysql_error());
          echo "update eseguito";
          }
          else {
          ?>
          <form method="post" action="modifica_dati_clienti.php">
          <input type="hidden" name="id_cl"><br />
          NOME <input type="text" name="nome"><br />
          COGNOME <input type="text" name="cognome"><br />
          <input type="submit" value="Invia" />
          </form>
          <?php } ?>
          [/php]

          Non mi dà nessun errore, nè warning nè notice, mi fà compilare il form e mi rimanda al form, come da richiesta se l'update non è stato eseguito.

          0 Miglior Risposta Ringrazia Cita Rispondi

            1 Risposta Ultima Risposta
          • T
            thedarkita ModSenior • ultima modifica di

            Perciò ora non ti da nessun errore ma non ti modifica i campi?
            Nella tabella c'è il record con quell'id?

            0 Miglior Risposta Ringrazia Cita Rispondi

              1 Risposta Ultima Risposta
            • F
              fabrizio23 User Attivo • ultima modifica di

              Nella tabella db c'è id_cl, nome e cognome...PINCO PALLO...ma non modifica nulla...mi riporta al form...

              0 Miglior Risposta Ringrazia Cita Rispondi

                1 Risposta Ultima Risposta
              • T
                thedarkita ModSenior • ultima modifica di

                Ah, ti rimostra proprio il form.
                Prova cosi:
                [php]
                <?php
                // Dati connessione al database
                $db_host = 'localhost'; // Host - solitamente localhost
                $db_utente = 'root'; // Nome utente del Database
                $db_password = ''; // Password del Database
                $db_nomedb = ''; // Nome del Database
                // Effettua la connessione al database
                $dbh=mysql_connect ($db_host, $db_utente, $db_password) or die ('Errore nella stringa di connessione al database: '.mysql_error());
                mysql_select_db($db_nomedb);

                if(isset($_POST['nome'])) {
                $id=$_POST['id_cl'];
                $cognome=$_POST['cognome'];
                $nome=$_POST['nome'];
                $query=mysql_query("UPDATE inserimento_dati SET cognome = '$cognome', nome = '$nome' WHERE id_cl = '$id_cl'");
                $risultato = mysql_query($query) or die ("Query "$query" fallita ::: ".mysql_error());
                echo "update eseguito";
                }
                else {
                ?>
                <form method="post" action="modifica_dati_clienti.php">
                <input type="hidden" name="id_cl"><br />
                NOME <input type="text" name="nome"><br />
                COGNOME <input type="text" name="cognome"><br />
                <input type="submit" value="Invia" />
                </form>
                <?php } ?>
                [/php]
                Ma comunque $_POST['id_cl'] non ha alcun valore perchè l'input non ha alcun value perciò non potrà fare l'update di niente.

                0 Miglior Risposta Ringrazia Cita Rispondi

                  1 Risposta Ultima Risposta
                • F
                  fabrizio23 User Attivo • ultima modifica di

                  Mi rimostra sempre il form...

                  0 Miglior Risposta Ringrazia Cita Rispondi

                    1 Risposta Ultima Risposta
                  • T
                    thedarkita ModSenior • ultima modifica di

                    Non può essere, ma questa pagina si chiama modifica_dati_clienti.php?

                    0 Miglior Risposta Ringrazia Cita Rispondi

                      1 Risposta Ultima Risposta
                    • F
                      fabrizio23 User Attivo • ultima modifica di

                      No, scusami, mi dice:

                      Notice: Undefined variable: id_cl in c:\programmi\easyphp1-8\www\modifica_dati_clienti.php on line 15
                      Query "" fallita ::: La query e` vuota

                      Ma perchè è vuota??? :arrabbiato:

                      0 Miglior Risposta Ringrazia Cita Rispondi

                        1 Risposta Ultima Risposta
                      • T
                        thedarkita ModSenior • ultima modifica di

                        Te l'ho scritto prima:
                        $_POST['id_cl'] non ha alcun valore perchè l'input non ha alcun value perciò non potrà fare l'update di niente.

                        0 Miglior Risposta Ringrazia Cita Rispondi

                          1 Risposta Ultima Risposta
                        • F
                          fabrizio23 User Attivo • ultima modifica di

                          Avevo scritto male la pagina...una lettera digitata in più...scusami...ora:

                          Notice: Undefined variable: id_cl in c:\programmi\easyphp1-8\www\modifica_dati_clienti.php on line 15
                          Query "1" fallita ::: Errore di sintassi nella query SQL vicino a '1' linea 1

                          0 Miglior Risposta Ringrazia Cita Rispondi

                            1 Risposta Ultima Risposta
                          • F
                            fabrizio23 User Attivo • ultima modifica di

                            Ma il problema è l'id_cl? bisogna dagli un value? non credo...:?

                            0 Miglior Risposta Ringrazia Cita Rispondi

                              1 Risposta Ultima Risposta
                            • T
                              thedarkita ModSenior • ultima modifica di

                              Se non gli dai un value cosa vuoi passare? Passi una variabile senza valore...

                              0 Miglior Risposta Ringrazia Cita Rispondi

                                1 Risposta Ultima Risposta
                              • F
                                fabrizio23 User Attivo • ultima modifica di

                                Comunque nel codice mancava il "cl"...ora non mi dà più il notice...ma il resto come lo si risolve?

                                0 Miglior Risposta Ringrazia Cita Rispondi

                                  1 Risposta Ultima Risposta
                                • F
                                  fabrizio23 User Attivo • ultima modifica di

                                  Ma anche il nome e cognome non hanno un value...o sbaglio?

                                  0 Miglior Risposta Ringrazia Cita Rispondi

                                    1 Risposta Ultima Risposta
                                  • T
                                    thedarkita ModSenior • ultima modifica di

                                    L'id da qualche parte devi tenertelo...
                                    Solitamente si passa in GET alla pagina, tipo voglio modificare l'utente con ID 3 uso la pagina modifica.php?id=3
                                    E mi recupero l'id con $_GET['id'].

                                    0 Miglior Risposta Ringrazia Cita Rispondi

                                      1 Risposta Ultima Risposta
                                    • T
                                      thedarkita ModSenior • ultima modifica di

                                      Il nome e cognome viene inserito manualmente perciò il value non serve, anche perchè non è usato come condizione nella query è può avere come valore una stringa vuota.

                                      0 Miglior Risposta Ringrazia Cita Rispondi

                                        1 Risposta Ultima Risposta
                                      • F
                                        fabrizio23 User Attivo • ultima modifica di

                                        Ma quindi è impossibile fare quello che vorrei fare...cioè cliccare semplicemente sul cognome da modificare e modificarlo...

                                        Se lo devo fare con GET tanto vale non è più semplice farlo attraverso il db?

                                        0 Miglior Risposta Ringrazia Cita Rispondi

                                          1 Risposta Ultima Risposta
                                        • F
                                          fabrizio23 User Attivo • ultima modifica di

                                          Tornando al discorso di prima...mi dà errore nella query:

                                          Query "1" fallita ::: Errore di sintassi nella query SQL vicino a '1' linea 1

                                          0 Miglior Risposta Ringrazia Cita Rispondi

                                            1 Risposta Ultima Risposta
                                          • F
                                            fabrizio23 User Attivo • ultima modifica di

                                            Ciao!!!

                                            Ho un pò letto e guarda il codice che ovviamente non và, però penso che io abbia imboccato la strada giusta...

                                            Quando clicco sul cognome (vedo che mi dà id_cl progressivo per cliente) clicco sul cognome ma mi dà questo errore:

                                            Query 'SELECT nome, cognome FROM inserimento_dati where id_cl=>2 ACCETTATO DA: <a href= LIMIT 1' fallita

                                            spoiler
                                            " . mysql_error() );
                                            $inserimento_dati = mysql_fetch_array( $risultato );
                                            [/PHP]

                                            Poi ho la pagina modifica_dati_clienti.php
                                            [PHP]<form method="post" action="">
                                            <input type="hidden" name="id_cl" value="<?php echo $id_cl; ?>"><br />
                                            NOME <input type="text" name="nome" value="<?php echo $inserimento_dati['nome']; ?>" ><br />
                                            COGNOME <input type="text" name="cognome" value=$inserimento_dati['cognome']; ?>" ><br />
                                            <input type="submit" value="Invia" />
                                            </form>
                                            <?php
                                            if (isset($_POST['submit']) && !empty($_POST['id_cl'])) {
                                            $id_cl=$_POST['id_cl'];
                                            $cognome=$_POST['cognome'];
                                            $nome=$_POST['nome'];
                                            $query=mysql_query("UPDATE inserimento_dati SET cognome = '$cognome', nome = '$nome' WHERE id_cl = '$id_cl'");
                                            $risultato = mysql_query($query) or die ("Query "$query" fallita ::: ".mysql_error());
                                            echo "update eseguito";
                                            }
                                            else {
                                            echo "impossibile procedere con l'update";
                                            }
                                            ?>
                                            [/PHP]
                                            E mi dice impossibile procedere con l'update. 😢
                                            Grazie moltissime per la pazienza! 🙂

                                            0 Miglior Risposta Ringrazia Cita Rispondi

                                              1 Risposta Ultima Risposta
                                            Caricamento altri post
                                            Rispondi
                                            • Topic risposta
                                            Effettua l'accesso per rispondere
                                            • Da Vecchi a Nuovi
                                            • Da Nuovi a Vecchi
                                            • Più Voti