Visualizzazione risultati 1 fino 16 di 16
Like Tree1Likes
  • 1 Post By alemoppo

Discussione: Errore Incorrect integer value: '' for column da questa mattina

  1. #1
    fantalegahop non è connesso Neofita
    Data registrazione
    22-09-2013
    Messaggi
    8

    Predefinito Errore Incorrect integer value: '' for column da questa mattina

    Ciao a tutti:da questa mattina il mio sito http://fantalegahop.altervista.org/ è bloccato a causa di un errore:
    Incorrect integer value: '' for column

    questo perchè fino a ieri eventuali numeri passati come stringhe venivano accettate dal mysql ed ora non più.
    Visto che non ho modificato il codice nè il database è stato modifcato qualcosa sul mysql ?
    E' possibile ripristinarlo ?
    Altrimenti sarò costretto a rivedere ogni singola pagina del sito (e non vorrei farlo...).
    Grazie.

  2. #2
    L'avatar di alemoppo
    alemoppo non è connesso Staff AV
    Data registrazione
    24-08-2008
    Residenza
    PU / BO
    Messaggi
    22,148

    Predefinito

    Può essere dovuto all'aggiornamento di mysql 5.6 che ha impostazioni più stringenti.

    Non puoi salvare una stringa in un campo di interi. Invece di '' modifica lo script in un altro numero o NULL.

    Ciao!

  3. #3
    fantalegahop non è connesso Neofita
    Data registrazione
    22-09-2013
    Messaggi
    8

    Predefinito

    Ciao,intanto grazie per la risposta tempestiva.
    Immaginavo qualcosa del genere..qualche script l'ho già sistemato.
    Il problema è che ho un sacco di script da modificare.
    Posso tornare indietro con la versione mysql oppure non è possibile ?

  4. #4
    L'avatar di alemoppo
    alemoppo non è connesso Staff AV
    Data registrazione
    24-08-2008
    Residenza
    PU / BO
    Messaggi
    22,148

    Predefinito

    No purtroppo non è possibile tornare indietro.

    Ciao!

  5. #5
    fantalegahop non è connesso Neofita
    Data registrazione
    22-09-2013
    Messaggi
    8

    Predefinito

    Ciao,
    ultima e poi ti lascio,
    il problema principale sembra essere quello che prima vuoto veniva considerato 0 mentre ora no.
    C'e' qualche impostazione che possa fare (anche su php magari un set in testata dello script) oppure devo riverificare tutto a mano ?

    Grazie ancora.

  6. #6
    L'avatar di alemoppo
    alemoppo non è connesso Staff AV
    Data registrazione
    24-08-2008
    Residenza
    PU / BO
    Messaggi
    22,148

    Predefinito

    Che io sappia non ci sono impostazioni per modificare questa cosa.
    Come mai immettevi una stringa in un campo numerico?

    Ciao!

  7. #7
    fantalegahop non è connesso Neofita
    Data registrazione
    22-09-2013
    Messaggi
    8

    Predefinito

    Il problema principale è che sono autodidatta e quindi tutto quello che ho imparato l'ho trovato su internet.
    Tutti i script per scrivere i campi chiave auto-increment recitavano :
    "INSERT INTO nome-tabella('',campo2,campo3....

    poi ho visto che 'vuoto' mysql lo considerava 0 e quindi non sono andato tanto per il sottile (utilizzo dei boolean, check box etc etc).
    Ora se provo a scrivere vuoto su campo integer segnala questo errore.
    Forse con una funzione di casting evito il test, devo verificare.
    Ciao.

  8. #8
    L'avatar di alemoppo
    alemoppo non è connesso Staff AV
    Data registrazione
    24-08-2008
    Residenza
    PU / BO
    Messaggi
    22,148

    Predefinito

    Ma se è auto-increment, perché immetti '' che dici considera 0? (non vuoi inserire 0 ma appunto l'indice incrementato). Un campo auto-increment non devi specificarlo nella query, lo setterà automaticamente mysql.

    (anche io autodidatta :D )

    Ciao!

  9. #9
    fantalegahop non è connesso Neofita
    Data registrazione
    22-09-2013
    Messaggi
    8

    Predefinito

    Come scriveresti la query in php ?

  10. #10
    L'avatar di alemoppo
    alemoppo non è connesso Staff AV
    Data registrazione
    24-08-2008
    Residenza
    PU / BO
    Messaggi
    22,148

    Predefinito

    Se hai una tabella con:
    Codice:
    id (auto increment, primary key) | campo1 | campo2
    Semplicemente non specifichi l'id, quindi:
    Codice:
    INSERT INTO tabella (campo1, campo2) VALUES ('valore campo1','valore campo2')
    Ciao!
    darbula likes this.

  11. #11
    fantalegahop non è connesso Neofita
    Data registrazione
    22-09-2013
    Messaggi
    8

    Predefinito

    Proverò ! Grazie.

  12. #12
    fantalegahop non è connesso Neofita
    Data registrazione
    22-09-2013
    Messaggi
    8

    Predefinito

    Scusami, problema similare, non riesco a gestire i campi Boolean in quanto da Mysql sono considerati tinyint e se il campo è FALSE (quindi zero) segnala: Incorrect integer value: '' for column 'nome-colonna

  13. #13
    L'avatar di alemoppo
    alemoppo non è connesso Staff AV
    Data registrazione
    24-08-2008
    Residenza
    PU / BO
    Messaggi
    22,148

    Predefinito

    tinyint dovrebbe accettare 0.

    Ciao!

  14. #14
    fantalegahop non è connesso Neofita
    Data registrazione
    22-09-2013
    Messaggi
    8

    Predefinito

    si, forse è php che mette vuoto. Devo vedere come forzare.
    approfitto per un OT. succede alle volte che tutte le mia pagine php vengano lanciate una ad una da un utente esterno (ho messo un log, non è un operazioen manuale). E' una procedura standard di altervista oppure è un attacco di qualche tipo ?

  15. #15
    L'avatar di alemoppo
    alemoppo non è connesso Staff AV
    Data registrazione
    24-08-2008
    Residenza
    PU / BO
    Messaggi
    22,148

    Predefinito

    No, probabilmente si tratta di bot o crawler (ad esempio dei motori di ricerca per l'indicizzazione). Oppure nel log salva l'indirizzo, a volte ci sono bot asiatici che tentano di accedere tentando url con parametri strani, ma nulla di preoccupante.

    Ciao!

  16. #16
    darbula non è connesso AlterGuru 2500
    Data registrazione
    24-04-2011
    Messaggi
    2,894

    Predefinito

    Questo tipo d'errore indica che mysql si aspetta un intero.. (il tipo del campo è specificato come tinyint o int).
    Boolean o Bool è sinonimo di tinyint dove il valore (intero) 0 indica falso..
    Il problema sta nella query utilizzata.
    Ultima modifica di darbula : 04-03-2018 alle ore 19.01.32

Regole di scrittura

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