Visualizzazione dei risultati da 1 a 10 su 10
  1. #1

    Query UPDATE che non funziona

    Ciao a tutti!
    Il problema è semplice: eseguo il codice sottostante per modificare un elemento del db, ma stranamente non fa' cioò per cui è nato!


    $query = mysql_query('UPDATE admin SET categoria =\''.$categoria.'\', titolo =\''.$titolo.'\', descrizione =\''.$descrizione.'\',
    prezzo =\''.$prezzo.'\', prezzo_scontato =\''.$prezzo_scontato.'\', data =\''.$current_data.'\' WHERE id ='.$id.'');



    Penso ci sia un problema negli apici.
    Voi che dite?
    Thanks!


    P.S. non ho usato i tag [PHP] del forum perché mi toglieva i caratteri d'escape che ho messo nella query.

  2. #2
    Effettivamente c'e' un problema negli apici

    Qualunque valore non numerico deve essere racchiuso tra apici.

  3. #3
    Ma devo usare apici singoli o doppi?
    Nel mio esempio, gl iapici sono singoli, cioè sono due singoli ma vicini

  4. #4
    Ah allora oltre agli apici (a che servono due uno accanto all'altro ) c'e' anche un problema con l'operatore di concatenazione

    Comunque meglio non essere tirchi con il numero di righe di codice, qualche a capo aiuta tantissimo la leggibilita':

    Codice PHP:
    <?php
    $sql 
    "UPDATE admin SET 
            categoria = '
    $categoria',
            titolo = '
    $titolo',
            descrizione = '
    $descrizione',
            prezzo = '
    $prezzo',
            prezzo_scontato = '
    $prezzo_scontato',
            data = '
    $current_data
            WHERE id ='
    $id'";
    mysql_query($sql);
    /* etc etc etc */
    ?>

  5. #5
    Ho provato, ma non funziona nemmeno così (copiata e incollata spudoratamente!)

  6. #6
    Fai cosi':

    Codice PHP:
    mysql_query($sql) or die(mysql_error()); 
    e vedi che errore ti da'.

  7. #7
    Trovato: vi sono degli apici che rompono l'anima nel testo di un campo dati che carico -_____-

  8. #8
    Utente di HTML.it L'avatar di hyb
    Registrato dal
    Aug 2003
    Messaggi
    424
    Originariamente inviato da trez
    Trovato: vi sono degli apici che rompono l'anima nel testo di un campo dati che carico -_____-
    e sì l'escape deve essere fatto sempre e su ogni variabile passata nelle query
    C'è chi si mette degli occhiali da sole, per avere più carisma e sintomatico mistero.

  9. #9
    So che c'è il modo per farlo direttamente da sql vero?
    C'è un comando php per attivare questa opzione?

  10. #10
    Utente di HTML.it L'avatar di hyb
    Registrato dal
    Aug 2003
    Messaggi
    424
    c'è la funzione mysql_real_escape_string, da usare dopo la connessione al db e prima della query.
    C'è chi si mette degli occhiali da sole, per avere più carisma e sintomatico mistero.

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 © 2025 vBulletin Solutions, Inc. All rights reserved.