Pagina 1 di 2 1 2 ultimoultimo
Visualizzazione dei risultati da 1 a 10 su 11
  1. #1

    [PHP & MySQL] valore NULL

    Ciao a tutti,
    ho un piccolo problema:
    ho creato in DB MySQL una tabella, nella tabella c'è un capo di tipo tynint, unsigned che può contenere vaolore NULL.
    Ho creato un semplice front-end in PHP per l'inserimento dei dati, quando inserisco i dati da front-end e nel campo, sopra indicato, non inserisco alcun valore, nella tabella viene salvato con valore uguale a '0' e non di tipo 'NULL'.
    Come posso risolvere questo problema?
    Grazie

    Luchino
    Hello Word!

  2. #2
    Utente di HTML.it
    Registrato dal
    Apr 2003
    Messaggi
    534
    Se hai dichiarato il campo NULL però inserisci campo="" questo diventa 0 di default. Se vuoi il campo = NULL se mi ricordo bene, devi mettere campo = NULL oppure ometterlo del tutto.

    Così mi pare che sia.


  3. #3
    Ciao Pierotto,
    grazie per la risposta.
    Ho già provato a dare alla variabile un valore tipo 'NULL':
    $campo = NULL;
    ma niente da fare il valore viene salvato con valore uguale a '0'.
    Hello Word!

  4. #4
    Utente di HTML.it
    Registrato dal
    Apr 2003
    Messaggi
    534
    Originariamente inviato da Luchino1976
    Ciao Pierotto,
    grazie per la risposta.
    Ho già provato a dare alla variabile un valore tipo 'NULL':
    $campo = NULL;
    ma niente da fare il valore viene salvato con valore uguale a '0'.
    ma il campo è dichiarato NULL? Mi sa che per default sono tutti NOT NULL.

  5. #5
    Si, è dichiarato 'NULL'.
    Hello Word!

  6. #6
    Utente di HTML.it
    Registrato dal
    Apr 2003
    Messaggi
    534
    Originariamente inviato da Luchino1976
    Ciao Pierotto,
    grazie per la risposta.
    Ho già provato a dare alla variabile un valore tipo 'NULL':
    $campo = NULL;
    ma niente da fare il valore viene salvato con valore uguale a '0'.
    Non avevo letto a fondo.

    Non credo che tu possa passare NULL tramite una variabile. Sarebbe un valore booleano di PHP equivalente a zero oppure "". Devi passarlo come valore "NULL" di mysql.

    SET campo = NULL altrimenti mi sa che viene interpretato come "".


  7. #7
    Utente di HTML.it L'avatar di erme2
    Registrato dal
    Oct 2002
    Messaggi
    177
    Originariamente inviato da pierotto
    Non avevo letto a fondo.

    Non credo che tu possa passare NULL tramite una variabile. Sarebbe un valore booleano di PHP equivalente a zero oppure "". Devi passarlo come valore "NULL" di mysql.

    SET campo = NULL altrimenti mi sa che viene interpretato come "".

    esatto la query che ti aggiorna il campo a null deve essere scritta più o meno cosi:
    codice:
    UPDATE nome_tabella SET nome_campo=NULL;
    eRMéS! RM98!
    "...è mai possibile oh porco di un cane, che le avventure in codesto reame, debban risolversi tutte con grandi puttane!..." - (Carlo Martello ritorna dalla battaglia di Poitiers -Fabrizio De Andrè/Paolo Villaggio)

  8. #8
    Ciao erme2,
    ho provato a fare una cosa del genere:

    $campo = NULL;

    INSERT INTO Tabella (campo) VALUES('$campo')

    ma il risultato non cambia: il valore sul DB viene salavato come uguale a '0'.
    Hello Word!

  9. #9
    Utente di HTML.it
    Registrato dal
    Apr 2003
    Messaggi
    534
    Originariamente inviato da Luchino1976
    Ciao erme2,
    ho provato a fare una cosa del genere:

    $campo = NULL;

    INSERT INTO Tabella (campo) VALUES('$campo')

    ma il risultato non cambia: il valore sul DB viene salavato come uguale a '0'.


    Ti abbiamo detto in due che non puoi fare:

    $campo = NULL;

    e poi passare la variabile, ma che devi mettere NULL nella query. Se poi si tratta di una INSERT, basta omettere il campo se questo è dichiarato NULL.


  10. #10
    $campo = NULL;

    INSERT INTO Tabella (campo) VALUES('$campo')
    che diventa
    INSERT INTO Tabella (campo) VALUES('')

    cosi non funziona

    devi mettere $campo='NULL'; a te serve la stringa NULL non il valore null

    INSERT INTO Tabella (campo) VALUES($campo)

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.