Pagina 1 di 2 1 2 ultimoultimo
Visualizzazione dei risultati da 1 a 10 su 19

Discussione: Modificare record

  1. #1
    Utente di HTML.it
    Registrato dal
    Apr 2009
    Messaggi
    133

    Modificare record

    Ciao! Per modificare un record cosa sbaglio?

    Codice PHP:
    $id=$_POST['id'];
    $cognome=$_POST['cognome'];
    $nome=$_POST['nome'];
    $query=mysql_query("UPDATE inserimento_dati SET cognome = '$cognome', nome = '$nome' WHERE id = '$id'");  
    $risultato =  mysql_query($query) or die ("Query \"$query\" fallita:::".mysql_error());
    ?>
    <form method="post" action="inserimento_dati.php">
    <input type="submit" value="Invia" />
    </form> 
    Mi dice questo: Notice: Undefined index: id in c:\programmi\easyphp1-8\www\modifica_dati_clienti3.php on line 14

    Notice: Undefined index: cognome in c:\programmi\easyphp1-8\www\modifica_dati_clienti3.php on line 15

    Notice: Undefined index: nome in c:\programmi\easyphp1-8\www\modifica_dati_clienti3.php on line 16
    Query "1" fallita:::Errore di sintassi nella query SQL vicino a '1' linea 1

    Grazie!

  2. #2
    Utente di HTML.it L'avatar di clasku
    Registrato dal
    Aug 2006
    Messaggi
    3,197
    Beh, direi che la segnalazione di errore è abbastanza chiara

    Le variabili che ricevi via POST non sono valorizzate, controlla che vengano inviate correttamente e che quando le ricevi non ci siano errori nei nomi

  3. #3
    Utente di HTML.it
    Registrato dal
    Apr 2009
    Messaggi
    133
    Aiuto, sono agli inizi Come faccio a valorizzarle?

    Grazie!

  4. #4
    Utente di HTML.it L'avatar di polinet
    Registrato dal
    Nov 2000
    Messaggi
    993
    guarda se le tua variabili contengono qualche cosa.... prima
    Codice PHP:
    $id=$_POST['id'];
    echo 
    $id
    le valorizzi dal momento che le passi
    ¿Hasta la pasta?

  5. #5
    Utente di HTML.it
    Registrato dal
    Apr 2009
    Messaggi
    133
    E per quanto riguarda l'errore di sintassi della query?

  6. #6
    Utente di HTML.it L'avatar di clasku
    Registrato dal
    Aug 2006
    Messaggi
    3,197
    risolvi prima quello delle variabili non valorizzate
    una volta fatto quello vedi se l'errore persiste
    nel caso stampa la query prima di eseguirla, così vedi cosa passa esattamente

  7. #7
    Utente di HTML.it
    Registrato dal
    Apr 2009
    Messaggi
    133
    Come faccio a valorizzare una variabile, mi stò confondendo...

    Grazie!

  8. #8
    Utente di HTML.it L'avatar di clasku
    Registrato dal
    Aug 2006
    Messaggi
    3,197
    A parte che ci sono guide su guide sull'argomento che andrebbero per lo meno lette (anche su html.it ce ne sono di molto interessanti).

    ti faccio un esempio di quello che devi fare:
    - pagina form.php che contiene un form che tu andrai a valorizzare e che trasmetterà i dati via POST
    codice:
    <form method="POST" action="script.php">
    <input type="text" name="nome">
    <input type="submit" value="invia">
    - pagina script.php che riceve la variabile e effettua le azioni che servono: in pratica la parte di codice php che hai scritto nel tuo codice

    Ovviamente puoi anche inserire form e script nella stessa pagina, come hai fatto tu: quello che manca nel tuo script è la parte di inserimento dei dati ed il controllo che eviti la segnalazione di errore e l'esecuzione della query se i dati non sono stati passati. Prendendo il tuo script:

    Codice PHP:
    <?php
    if (isset($_POST['id']) && !empty($_POST['id'])) {
    $id=$_POST['id']; 
    $cognome=$_POST['cognome']; 
    $nome=$_POST['nome']; 
    $query=mysql_query("UPDATE inserimento_dati SET cognome = '$cognome', nome = '$nome' WHERE id = '$id'");   
    $risultato =  mysql_query($query) or die ("Query \"$query\" fallita:::".mysql_error()); 
    echo 
    "update eseguito";
    }
    else {
    ?> 
    <form method="post" action=""> 
    <input type="text" name="id">

    <input type="text" name="nome">

    <input type="text" name="cognome">

    <input type="submit" value="Invia" /> 
    </form>
    <?php ?>
    Questo sopra è pseudocodice, spero ti torni utile per approfondire l'argomento

  9. #9
    Utente di HTML.it
    Registrato dal
    Apr 2009
    Messaggi
    133
    Le guide le ho lette, ma le trovo difficili, ora stò leggendo un libro (non per esperti).

    Hai usato isset...mi spieghi perchè per favore?

    E poi ho visto che hai messo il controllo errore, se fà l'update "update eseguito" altrimenti ti riporta al form.

    E infatti mi riporta al form...perchè?

    Io prendo l'id, il nome e il cognome da una lista clienti perfetta e funzionante "inserimento_dati". Se sbaglio a scrivere nome e cognome del cliente lo vorrei modificare...tutto qui...il form mi serve per mettere il nome e il cognome corretto.

    Perchè non funziona?

    Grazie!

  10. #10
    Utente di HTML.it
    Registrato dal
    Apr 2009
    Messaggi
    133
    Come le hai valorizzate le variabili?

    Grazie e scusami!

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.