Visualizzazione dei risultati da 1 a 10 su 10

Discussione: Errore MySql con PHP

  1. #1
    Utente di HTML.it
    Registrato dal
    May 2001
    Messaggi
    231

    Errore MySql con PHP

    Ciao a tutti,
    stranamente mi viene restituito il seguente errore da MySql, cercando di fare un inserimento in una tabella tramite PhpMyAdmin:

    Messaggio di MySQL:

    #1264 - Out of range value adjusted for column 'id' at row 1
    ecco la stringa SQL:

    query SQL:

    INSERT INTO `links` ( `id` , `nome` , `link` , `descrizione` , `id_cat` ) VALUES ('', '1', '1', '', '1')
    Se inserisco manualmente il campo id, invece di lasciarlo vuoto, funziona... Non capisco perchè, eppure il campo id è di autoincremento e primary key .

    Vi saluto Max
    http://www.mdlwork.com

  2. #2
    Utente di HTML.it L'avatar di marco80
    Registrato dal
    May 2005
    Messaggi
    1,357
    Se e' auto increment non serve nemmeno specificarlo nella lista dei campi e nemmeno il valore.
    Poi non so gli apici che hai messo nei campi se servono. Nei values si ma nella lista campi si possono tralasciare se non sbaglio.

  3. #3
    Utente di HTML.it
    Registrato dal
    May 2001
    Messaggi
    231

    ciao Marco

    Quello è semplicemente il risultato della query che mi da PhpMyAdmin.

    Proprio perchè è auto increment dovrebbe funzionare, ma invece accade il contrario ed è proprio questo che non capisco...

    Poi sul mio Pc funziona a meraviglia, su uno spazio web online mi da questo errore, mah...

    Cosa può essere?
    http://www.mdlwork.com

  4. #4
    Utente di HTML.it L'avatar di thitan
    Registrato dal
    Feb 2001
    Messaggi
    716
    prova con
    Codice PHP:
    INSERT INTO `links` ( `nome` , `link` , `descrizione` , `id_cat` ) VALUES '1''1''''1'

    www.inter-rail.it
    travellers, not tourist
    Is cuma cá mhinice a théann tú ar strae; is é is tábhachtaí gurb áil leat do bhealach a aimsiú arís.

  5. #5
    Utente di HTML.it
    Registrato dal
    May 2001
    Messaggi
    231

    thitan

    già fatto tramite un mio script, ovvero trascurare l'id e non funziona uguale non inserisce un bel niente...

    Purtroppo, questa query:

    INSERT INTO `links` ( `id` , `nome` , `link` , `descrizione` , `id_cat` ) VALUES ('', '1', '1', '', '1')

    la inserisce phpMyAdmin in automatico..
    http://www.mdlwork.com

  6. #6
    Controlla la versione di phpmyadmin. la versione 2.6.x non va, devi usare la 2.8.1

    nella versione 5 mysql e' piu' rigido. per esempio nell'autoincrement se citato devi mettere NULL, il numerico non vuole gli apici... ed altre cosine. Se usi la finestra di insert di phpmyadmin il campo va lasciato vuoto.

    Il silenzio è spesso la cosa migliore. Pensa ... è gratis.

  7. #7

  8. #8
    Originariamente inviato da luca200
    Dipende anche dall'sql-mode.

    http://database.html.it/guide/lezion...e-di-mysql-ii/
    E' vero questo per quanto riguarda il settaggio di MySQL e la scelta del gestore, ma il problema e' di phpmyadmin che non si adegua a comportarsi secondo il settaggio scelto dallo user.

    Dovrebbe quantomeno adeguarsi al settaggio di default di MySQL e non essere costretti a modificare la variabile "sql mode" per poter lavorare con questo tool. Questo lo valuto come bug.

    Inoltre mi piacerebbe conoscere il tuo parere sulla scelta degli sviluppatori di phpmyadmin di usare le sessioni e metterci dentro "in chiaro" anche user e password..... mi pare una cosa molto buffa. Con 5/6 righe di script si possono leggere tutti i file di sessione.

    Il silenzio è spesso la cosa migliore. Pensa ... è gratis.

  9. #9
    Utente di HTML.it L'avatar di luca200
    Registrato dal
    Apr 2002
    Messaggi
    4,120
    Originariamente inviato da piero.mac
    Inoltre mi piacerebbe conoscere il tuo parere sulla scelta degli sviluppatori di phpmyadmin di usare le sessioni e metterci dentro "in chiaro" anche user e password..... mi pare una cosa molto buffa. Con 5/6 righe di script si possono leggere tutti i file di sessione.
    Così su due piedi non saprei che dire...
    E' chiaro che non è un inno alla sicurezza, per un eufemismo. Però se si dice che non va bene bisogna anche suggerire un'alternativa, e a me non ne vengono in mente, almeno sul momento....

  10. #10
    Originariamente inviato da luca200
    Così su due piedi non saprei che dire...
    E' chiaro che non è un inno alla sicurezza, per un eufemismo. Però se si dice che non va bene bisogna anche suggerire un'alternativa, e a me non ne vengono in mente, almeno sul momento....
    almeno criptare od omettere....

    ho fatto prove sul problema aperto da questo thread ed ho scoperto che se si rimuovono tutte le opzioni di SQL MODE e poi si reimmettono (ovviamente restartando il server) phpmyadmin mette correttamente NULL nell'id lasciato vuoto nel form dell'insert invece delle erronee apici ""..

    non mi chiedo il perche' ma non capisco. Dopo questo su e giu' del SQL mode mi pare che anche altri particolari che trovavo strani si siano regolarizzati.

    masdel1979 potrebbe provare a farlo pure lui.

    Da mysql administrator -> startup varibles -> advanced -> SQL MODE

    Il silenzio è spesso la cosa migliore. Pensa ... è gratis.

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.