Visualizzazione risultati 1 fino 10 di 10

Discussione: errore bbcode

  1. #1
    Guest

    Question errore bbcode

    scusate ho un problema nel creare bbcode, quando cerco di crearne uno mi esce questo errore:

    Codice:
    Errore Generale
    SQL ERROR [ mysql4 ]
    
    Duplicate entry '127' for key 1 [1062]
    
    SQL
    
    INSERT INTO avphpbb_bbcodes (bbcode_tag, bbcode_match, bbcode_tpl, display_on_posting, bbcode_helpline, first_pass_match, first_pass_replace, second_pass_match, second_pass_replace, bbcode_id) VALUES ('warnbox', '[warnbox]{TEXT}[/warnbox]', '<div style=\"margin-bottom: 10px; background: #ffe5b2; padding: 6px; height:auto; border: 2px solid #ffd580; border-radius: 5px; -moz-border-radius: 5px; -webkit-border-radius: 5px;\"><img src=\"images/warningM.png\" alt=\"\" style=\"padding-right: 6px; vertical-align: middle;\" />{TEXT}</div>', 0, '[warnbox] tuo testo [/warnbox]', '!\\[warnbox\\](.*?)\\[/warnbox\\]!ies', '\'[warnbox:$uid]\'.str_replace(array(\"\\r\\n\", \'\\\"\', \'\\\'\', \'(\', \')\'), array(\"\\n\", \'\"\', \''\', \'(\', \')\'), trim(\'${1}\')).\'[/warnbox:$uid]\'', '!\\[warnbox:$uid\\](.*?)\\[/warnbox:$uid\\]!s', '<div style=\"margin-bottom: 10px; background: #ffe5b2; padding: 6px; height:auto; border: 2px solid #ffd580; border-radius: 5px; -moz-border-radius: 5px; -webkit-border-radius: 5px;\"><img src=\"images/warningM.png\" alt=\"\" style=\"padding-right: 6px; vertical-align: middle;\" />${1}</div>', 128)
    
    BACKTRACE
    
    FILE: includes/db/mysql.php
    LINE: 174
    CALL: dbal_mysql->sql_error()
    
    FILE: includes/acp/acp_bbcodes.php
    LINE: 220
    CALL: dbal_mysql->sql_query()
    
    FILE: includes/functions_module.php
    LINE: 507
    CALL: acp_bbcodes->main()
    
    FILE: adm/index.php
    LINE: 75
    CALL: p_master->load_active()
    qualcuno sa' come potrei risolvere, grazie.

    Alan

  2. #2
    L'avatar di silvermaledetto
    silvermaledetto non è connesso AlterGuru 2500
    Data registrazione
    01-03-2007
    Residenza
    Provincia di Modena
    Messaggi
    4,613

    Predefinito

    spiegare come li crei sarebbe propedeutico.
    Io ne ho... visti forum che voi umani non potreste immaginarvi... PhpBB3 in panne al largo dei database MySQL di Orione... E ho visto i TAG [B] balenare nel buio vicino al postreply di Tannhäuser.... E tutti quei... momenti andranno perduti nel tempo... Come... lacrime... nella pioggia... È tempo... di backuppare....

  3. #3
    Guest

    Predefinito

    Citazione Originalmente inviato da alascico Visualizza messaggio
    scusate ho un problema nel creare bbcode, quando cerco di crearne uno mi esce questo errore:
    Codice:
    Duplicate entry '127' for key 1 [1062]
    A occhio e croce stai superando la misura massima di bbcode consentiti, che dovrebbero essere 128.

    Credo tu possa farci poco, a meno che tu non te la senta di metter mano al database. Se te la senti si prova a fare un esperimento, ma devi almeno essere in grado di fare per precauzione un backup di una tabella per mezzo di phpMyAdmin.

    Considera che personalmente non ho mai superato i 128 bbcode (dunque andrei alla cieca) ma più o meno so come entrare in un DB per modificarne i parametri. Dimmi tu.

  4. #4
    Guest

    Predefinito

    Grazie per le vostre risposte:

    @silvermaledetto : non faccio altro che un copia e incolla da http://www.phpbb3bbcodes.com/viewforum.php?f=4

    @webeginner : ne avevo 102 di bbcode, ne ho tolti due e riprovando l'errore rimane.....ora ne ho 100 e non penso sia quello il problema...

  5. #5
    Guest

    Predefinito

    Citazione Originalmente inviato da alascico Visualizza messaggio
    @webeginner : ne avevo 102 di bbcode, ne ho tolti due e riprovando l'errore rimane.....ora ne ho 100 e non penso sia quello il problema...
    Se il database è strutturato come credo sia, non ha importanza quanti ne hai, conta quanti ne hai creati nel tempo. Il numero cresce anche se li cancelli.

    Togliamoci la curiosità, tanto non rischi niente: raggiungi il database con phpMyAdmin, clicca sulla voce xxxxx_bbcodes (menu nel frame di sinistra). Sul frame di destra, la prima voce del menu in alto è Mostra. Cliccaci sopra. Nella nuova schermata, la prima colonna si chiama bbcode_id. Scendi in basso e guarda qual è l'ultimo numero: se è 127 ci sono molte probabilità che tu abbia raggiunto il limite massimo di bbcode.

    Mica per far modifiche, ma almeno sai da cosa deriva quell'errore.
    Ultima modifica di webeginner : 08-03-2011 alle ore 19.41.54

  6. #6
    Guest

    Predefinito

    Grazie ancora.

    Ho guardato bene tutta la pagina del database dei bbcode, tutto ok non superano i numeri consentiti, mentre se invece di andare su mostra vado su struttura e alla voce bbcode_id vado su naviga tra i valori distinct, in quella tabella risultano 127, qui c'e il pdf di tutta la struttura dei bbcode della tabella:

    http://www.mediafire.com/?8nxkzz5arzi3snt

  7. #7
    Guest

    Predefinito

    Se vuoi risolvere il problema (non facendoti i cazzi tuoi diciamo e facendo prima un backup del database) allora cambia il valore da TINYINT a INT.
    Visto che TINYINT ha un range di 128 elemente, da 0 a 127.
    O cambi il campo in INT o sennò puoi cambiare l'ATTRIBUTO del campo e mettere UNSIGNED che ha un range fino a 255 elementi.

    Tutto questo se non ti vuoi fare i ca**i tuoi XD


    PS: na curiosità che non ho ben capito, visto che c'è un INSERT nella query tu vuoi inserire un nuovo campo giustamente no? O vuoi solo fare un UPDATE di quel campo? Perchè da come hai scritto hai fatto il copia e incolla in maniera brutale :P

  8. #8
    Guest

    Predefinito

    Citazione Originalmente inviato da alascico Visualizza messaggio
    mentre se invece di andare su mostra vado su struttura e alla voce bbcode_id vado su naviga tra i valori distinct, in quella tabella risultano 127
    C'avrei messo la firma Con questo non voglio dire che abbiamo risolto, ma che almeno si può fare un tentativo per risolvere.

    Dunque, theroot ha praticamente già risposto a tutto. Io però eviterei la conversione da TINYINT a INT (non mi dilungo sul perché: è una precauzione che prendo se non ho progettato personalmente il DB), mentre non vedo controindicazioni sul portare a UNSIGNED l'attributo del campo, il cui range passerà da -127|+127 a 0|255, dunque avrai altri 128 bbcode disponibili.

    I passi da compiere, DOPO AVER FATTO UN BACKUP DELLA TABELLA (un minimo rischio c'è sempre) sono i due che vedi cliccando sui link.

    Famme sape', ciao

    http://img687.imageshack.us/img687/6844/62880837.jpg

    http://img98.imageshack.us/img98/2818/20897363.jpg

  9. #9
    Guest

    Predefinito

    Ah aspè capo... sono andato a vedere il database di phpbb e ho visto che nella tabella bbcodes il campo bbcode_id non ha il valore auto_increment, quindi puoi evitare di fare quelle modifiche.

    Puoi nella query di inserimento al posto del valore 128 che è l'ultimo in fondo alla stringa, mettere un valore che non hai nella tabella, quindi se hai gli id [0 1 2 4] puoi mettere al posto del 128 il 3 che è assente.

    All'inizio ti da quell'errore perchè tu hai un campo con id 127, quindi anche se 128 supera il limite del range di TINYINT si posizionerà sempre all'ultimo posto che è il 127. Ci poteva anche stare 2000 al posto del 128, tanto sempre all'ultima posizione te lo metteva.

    Ps: siccome stò un pò arruginito con sql, prima di sparare stè presunte ca*** te ho fatto na prova e funziona.
    Pps: ovvio che però che un backup del database và sempre fatto. Il database và sempre backuppato anche se lo stai solo a guardà XD

  10. #10
    Guest

    Predefinito

    vi ringrazio ma ci ho capito poco anche perchè di sql sono alquanto ignorante, potreste spiegarmi quale delle soluzioni che avete dato devo provare a fare grazie
    Inoltre mi chiedo, i miei id dei bbcode partono da 13 e non da 0 o 1 e poi i numeri non sono continui per esempio il primo e 13 poi magari fa 14 - 15 - 16 - 19 ne salta due, non vorrei che il problema siano proprio negli id...se rinomino gli id in ordine numerico succede qualcosa e puo essere utile ?

Regole di scrittura

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