Visualizzazione risultati 1 fino 4 di 4

Discussione: Query UPDATE con PHP

  1. #1
    Guest

    Predefinito Query UPDATE con PHP

    Buonasera
    Voglio poter modificare i dati di un record di una tabella nel mio database, per far questo voglio utilizzare una form.
    Il mio problema č che i dati non vengono aggiornati nel database, nonostante MySQL non restituisca errori di sintassi o altro.
    (O meglio, vengono aggiornate, ma sembra che non riconosca il tipo di dato, ad esempio ho due campi di tipo 'date' e vengono aggiornati sotto forma di 0000-00-00 , oppure un campo varchar viene messo vuoto)
    Vi posto il codice:

    Codice PHP:
    <?php
    $luogo
    = $_GET['luogo'];
    $data_partenza=$_GET['data_partenza'];
    $data_arrivo=$_GET['data_arrivo'];
    echo
    $data_arrivo." ".$data_partenza." ".$luogo;
    include
    "config.php"; // includo il file di connessione al Db
    $sql="UPDATE eventi SET luogo='$luogo', data_arrivo='$data_arrivo', data_partenza='$data_partenza' WHERE nome_evento='".$name."'";
    $query=mysql_query($sql) or die (mysql_error());
    ?>
    Grazie per l'aiuto
    Ultima modifica di saitfainder : 12-01-2015 alle ore 18.38.06

  2. #2
    L'avatar di saitfainder
    saitfainder non č connesso Sėniör Stäff
    Data registrazione
    06-12-2002
    Residenza
    Torino
    Messaggi
    8,715

    Predefinito

    Fatti stampare il contenuto di $sql e verifica che la query sia corretta.


    «Č una mia peculiaritą distorcere la veritą e inventarne di nuove.»
    «I tuoi orientamenti hanno su di me un effetto prossimo allo zero.»


  3. #3
    Guest

    Predefinito

    Risolto, grazie al tuo suggerimento ho scoperto che non vedeva la variabile $name, correggendo l'errore, funziona perfettamente, grazie!!

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

    Predefinito

    Considera anche il passaggio dalle funzioni mysql_ (gią deprecate!) a qualcosa come mysqli_ oppure PDO, che rendono lavorare con il database meno faticoso:

    Ad esempio, PDO si occupa per te di fare escape dei parametri, limitando certi rischi:
    Codice PHP:
    $db = new PDO(....);
    $st = $db->prepare("UPDATE eventi SET luogo = ?, data_arrivo = ?, data_partenza = ? WHERE nome_evento = ?");
    $st->execute([ $luogo, $arrivo, $partenza, $nome ]);



    .

Regole di scrittura

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