phpBB Italia chiude!
phpBB Italia ringrazia tutti gli utenti che hanno dato fiducia al nostro progetto per ben 9 anni, e che, grazie al grande lavoro fatto da tutto lo Staff (rigorosamente a titolo gratuito), hanno portato il portale a diventare il principale punto di riferimento italiano alla piattaforma phpBB.

Purtroppo, causa motivi personali, non ho più modo di gestirlo e portarlo avanti. Il forum viene ora posto in uno stato di sola lettura, nonché un archivio storico per permettere a chiunque di fruire di tutte le discussioni trattate.

Il nuovo portale di assistenza per l'Italia di phpBB diventa phpBB-Store.it, cui ringrazio per aver deciso di portare avanti questo grande progetto.

Grazie ancora,
Carlo - Amministratore di phpBB Italia

Ricreare indici discussioni

Supporto per phpBB 3.1.x.
Avatar utente
Micogian
Leader Programmatori
Leader Programmatori
Messaggi: 3704
Iscritto il: 07/01/2010, 8:51
Versione: 3.2.0
Server: UNIX/Linux
PHP: 5.4.36
Database: MySQL 5.1.70-log
Località: Udine
Contatta:

Re: Ricreare indici discussioni

Messaggio da Micogian » 17/05/2016, 20:52

Allora non mi sono spiegato. Tu non devi controllare se i campi di 2 records sono uguali, devi controllare se eistono i relativi riferimenti nelle altre tabelle.
Faccio un esempio: la tabella topics contiene il record che si riferisce ad una discussione, nel topic c'è il titolo ma non il testo che invece si trova nella tabella posts. La tabella posts deve avere tutti i posts (le pagine) del topic e nel campo topic_id deve esserci il numero della discussione che si trova nella tabelle topic.
Poi il topic è presente nella tabella forum se contiene la risposta più recente, e così via. Le tabelle interessate sono diverse e se manca un riferimento può essere la causa che il topic non compare nella lista del Forum.
Ti avevo fatto una richiesta ben precisa alla quale non hai risposto: "come hai importato i dati? quali tabelle?"

giabar1974
Utente
Utente
Messaggi: 126
Iscritto il: 11/06/2015, 13:42
Sesso: Maschio
Versione: 3.1.9
Server: UNIX/Linux
PHP: 5.4.42
Database: MySQL

Re: Ricreare indici discussioni

Messaggio da giabar1974 » 17/05/2016, 21:42

Scusa! Si eri stato chiaro ma avevo letto io di corsa! [emoji17]
Sinceramente dopo aver importato la phpbb_topics ho visto che in ciascun topic erano presenti i vari posts così ho pensato di fermarmi li.
Evidentemente mi sbagliavo! [emoji16]


Inviato dal mio iPhone usando Tapatalk

giabar1974
Utente
Utente
Messaggi: 126
Iscritto il: 11/06/2015, 13:42
Sesso: Maschio
Versione: 3.1.9
Server: UNIX/Linux
PHP: 5.4.42
Database: MySQL

Re: Ricreare indici discussioni

Messaggio da giabar1974 » 18/05/2016, 9:59

Ciao,
un piccolo aggiornamento:

ho provato tramite sql query a cancellare le discussioni pre-2012 dal php_topics.

Per magia rivedo i topics dal 2008 al 2013.

Ho provato a re-importare le discussioni pre-2012 e spariscono quelle dal 2008 al 2013.

Mah !!??

Avatar utente
Micogian
Leader Programmatori
Leader Programmatori
Messaggi: 3704
Iscritto il: 07/01/2010, 8:51
Versione: 3.2.0
Server: UNIX/Linux
PHP: 5.4.36
Database: MySQL 5.1.70-log
Località: Udine
Contatta:

Re: Ricreare indici discussioni

Messaggio da Micogian » 18/05/2016, 10:47

Ma io non ho ancora capito cosa intenti per "cancellare o reimortare le discussioni", quali sono i records che importi e di quali tabelle?
E' possibile che i records che tu importi (o elimini) contengano ID già presenti e che si riferiscano ad altre discussioni.

Il testo di una discussione sta nella tabella posts e ogni record avrà un suo post_id.
Ogni record della tabella posts deve contenere il campo topic_id che sarà presente nella tabella topics e avrà quel topic_id. Nella tabella topics c'è il titolo della discussione oltre atutti gli altri dati.
Nella tabella topics ci sarà il campo forum_id che indica in quale Forum deve stare la discussione. Ci deve essere anche chi e quando ha messi il primo topic e l'ultimo.
Anche la tabella forums deve contenere l'ultimo topic e questo potrebbe essere il motivo per cui non compare nella lista.
Senza contare collegamenti della discussione con altre tabelle che al momento non ricordo.
Aggiungere una discussione a un database è cosa complessa e si può fare solamente se si sa quali sono le tabelle interessate, affermare "ho aggiunto una discussione" non vuol dire niente. probabilmente hai aggiunto dei records ma senza i necessari collegamenti o con numerazioni (ID) doppie.

giabar1974
Utente
Utente
Messaggi: 126
Iscritto il: 11/06/2015, 13:42
Sesso: Maschio
Versione: 3.1.9
Server: UNIX/Linux
PHP: 5.4.42
Database: MySQL

Re: Ricreare indici discussioni

Messaggio da giabar1974 » 18/05/2016, 11:11

Micogian innanzitutto grazie per il tuoi aiuto e per la pazienza!

Qualche mese fa avevo spostato l'intero forum da un hosting ad un altro.

L'operazione di import sembrava andata a buon fine ma, ahime', dopo qualche settimana mi accorsi che mancavano tutte le discussioni dal 2004 al 2012 (pre 2012).

Per fortuna queste discussioni erano presenti nel database esportato dal vecchio hosting.

Sul vecchio database effettuando una query tipo:
select * from phpbb_topics where `topic_id` < xxxxxxxxxxx
riuscii ad esportare i topics pre-2012 che mancavano sul nuovo!

Presi questo nuovo database pre2012 (fatto dalla sola phpbb_topics) tolsi le istruzioni tipo (drop table if exists, alter add primary key, ecc) e lo importai sul nuovo database del nuovo hosting.

I topics pre-2012 ora sono visibili in elenco, e vedo tutto dentro di essi (posts, immagini,ecc) quindi presumo che le tabelle phpbb_posts, phpbb_attachments fossero corrette sin dal primo import.

Sono invece spariti dall'elenco del forum i topics che vanno dal 2008 al 2013 che sono accessibili solo via ricerca!

Ieri sera ho provato con una query sql:
DELETE * from phpbb_topics WHERE topic_time < xxxxxxx
a rimuovere i topics pre2012 e per magia sono riapparse in elenco quelle tra 2008 e 2013 !

Sembra che le une sostituiscano le altre !

Eppure i topic_id sono differenti !

Spero di essere stato un po' piu' chiaro!

giabar1974
Utente
Utente
Messaggi: 126
Iscritto il: 11/06/2015, 13:42
Sesso: Maschio
Versione: 3.1.9
Server: UNIX/Linux
PHP: 5.4.42
Database: MySQL

Re: Ricreare indici discussioni

Messaggio da giabar1974 » 18/05/2016, 13:17

giabar1974 ha scritto:Micogian innanzitutto grazie per il tuoi aiuto e per la pazienza!

Qualche mese fa avevo spostato l'intero forum da un hosting ad un altro.

L'operazione di import sembrava andata a buon fine ma, ahime', dopo qualche settimana mi accorsi che mancavano tutte le discussioni dal 2004 al 2012 (pre 2012).

Per fortuna queste discussioni erano presenti nel database esportato dal vecchio hosting.

Sul vecchio database effettuando una query tipo:
select * from phpbb_topics where `topic_id` < xxxxxxxxxxx
riuscii ad esportare i topics pre-2012 che mancavano sul nuovo!

Presi questo nuovo database pre2012 (fatto dalla sola phpbb_topics) tolsi le istruzioni tipo (drop table if exists, alter add primary key, ecc) e lo importai sul nuovo database del nuovo hosting.

I topics pre-2012 ora sono visibili in elenco, e vedo tutto dentro di essi (posts, immagini,ecc) quindi presumo che le tabelle phpbb_posts, phpbb_attachments fossero corrette sin dal primo import.

Sono invece spariti dall'elenco del forum i topics che vanno dal 2008 al 2013 che sono accessibili solo via ricerca!

Ieri sera ho provato con una query sql:
DELETE * from phpbb_topics WHERE topic_time < xxxxxxx
a rimuovere i topics pre2012 e per magia sono riapparse in elenco quelle tra 2008 e 2013 !

Sembra che le une sostituiscano le altre !

Eppure i topic_id sono differenti !

Spero di essere stato un po' piu' chiaro!
Qui' e' topic_time, non topic_id. Scusa!

Avatar utente
Micogian
Leader Programmatori
Leader Programmatori
Messaggi: 3704
Iscritto il: 07/01/2010, 8:51
Versione: 3.2.0
Server: UNIX/Linux
PHP: 5.4.36
Database: MySQL 5.1.70-log
Località: Udine
Contatta:

Re: Ricreare indici discussioni

Messaggio da Micogian » 18/05/2016, 13:36

E' evidente che è un bel pasticcio.
Mi pare strano che nell'importazione siano stati caricati tutti i posts eh non siano stati caricati ii topics, sarebbe stato più logico il contrario, è la tabella posts quella più grossa e se l'importazione avviene con phpmyadmin ci può essere un caricamento parziale della tabella.
E' difficile capire dove sta il problema senza vedere il contenuto delle tabelle, potrei pensare che il fatto che alcuni topic spariscano sia dovuto al fatto che abbiano gli stessi riferimenti al post_id o comunque un dato comune che visualizza un record e ne esclude l'altro e viceversa.
Comunque questa è la prova che importare parti di un database relazionale è sempre problematico.

giabar1974
Utente
Utente
Messaggi: 126
Iscritto il: 11/06/2015, 13:42
Sesso: Maschio
Versione: 3.1.9
Server: UNIX/Linux
PHP: 5.4.42
Database: MySQL

Re: Ricreare indici discussioni

Messaggio da giabar1974 » 21/05/2016, 0:32

Ciao.

HO RISOLTO!!!!

Vedo tutte le discussioni elencate !

E' bastato risincronizzare i forum da PCA !

Grazie a tutti per l'aiuto!

Rispondi

Torna a “[3.1.x] Forum di Supporto”

Chi c’è in linea

Visitano il forum: Nessuno e 40 ospiti