[GDRCD 5.4.1] Spostare una discussione da un forum ad un altro postato il 12/07/2017 17:09:12 nel forum programmazione, gdrcd, open source, hosting
Buongiorno,
Una precisazione... per spostare un thread da una bacheca all'altra è necessario fare questo ragionamento? ditemi se son sulla buona strada o se invece sto affogando nell'ignoranza...
Bisogna fare una query di INSERT messaggio
e subito dopo una di DELETE... del messaggio precedente, e mai il contrario.
Il principio del ragionamento che devo fare è corretto?
Grazie anticipatamente
Pagine → 1
12/07/2017 17:20:34
Non conosco GdRCD 5.4, MA suppongo che qualsiasi topic nel forum venga salvato in una propria riga di db, è che tutte le entry facciano parte della stessa tabella.
Se è così, devi identificare il o i valori che "posizionano" il topic in una determinata sezione e modificarli per spostarlo.
Per farlo ti basta un UPDATE :)
20/05/2021 11:24:13
Riporto su perché secondo me sarebbe una bella implementazione da fare, magari se ci mettiamo insieme a ragionarci con più teste si riesce.
Dunque, attualmente su gdrcd i messaggi vengono inseriti nella tabella del database chiamata messaggioaraldo e ogni messaggio è identificato da id_messaggio.
Possono essere:
messaggi padre, e in tal caso nel campo id_messaggio_padre riportano -1
messaggi di risposta, e in tal caso nel campo id_messaggio_padre riportano l'id del messaggio cui sono collegati.
Ora, mi è capitato di dover spostare un thread che non volevo perdere ma neanche lasciare visibile, tant'è che ho proprio creato la bacheca cestino, e quando l'ho fatto, ho sempre agito sul database. Basta cambiare il campo id_araldo.
Qual è il problema? Che a quel punto compare l'alert (Nuovo messaggio) perché nella tabella araldo_letto (che è quella che indica se un personaggio ha letto i nuovi post oppure no) non c'è solo il thread_id (che corrisponde a id_messaggio della tabella messaggioaraldo) ma anche araldo_id che corrisponde a id_araldo di messaggioaraldo.
Quindi, manualmente, ho sempre dovuto fare la modifica anche lì. Finché una land è piccola, si fa pure, dopo si diventa scemi.
Ora, concettualmente credo di sapere cosa serve, ma non sono una programmatrice.
Bisognerebbe creare un qualcosa che:
1) nella tabella messaggioaraldo sposta id_messaggio da attuale id_araldo a nuovo id_araldo;
2) nella tabella messaggioaraldo sposta tutti gli id_messaggio che hanno id_padre = id_messaggio(padre) da attuale id_araldo a nuovo id_araldo;
3) nella tabella araldo_letto cambia araldo_id a tutti i thread_id coinvolti nello spostamento, inserendo come numero quello del nuovo id_araldo;
Lato programmazione partendo da zero io ammetto di non essere in grado e alzo le mani. Ma se qualcuno riuscisse a buttar giù qualcosa, mi metto a disposizione per tutte le prove necessarie e contribuire a far funzionare il codice.
20/05/2021 15:43:41 e modificato da haruka il 20/05/2021 15:45:57
20/05/2021 17:07:00
A quanto pare mi sottovaluto ^^'
Pacchetto in via di completamento, nel frattempo per chi vuole
STEP 1
aprire il file: config.inch.php
cercate
20/05/2021 20:11:21
20/05/2021 20:22:51
AHHH No, ho capito ora. Ecco cosa "visibile", quella è una mia aggiunta xD
Riposto il codice corretto del file che va in /pages/ con nome gestione_spostathread.inc.php
Discussione seguita da
Pagine → 1
Rispondi alla Discussione Aggiungi ai Preferiti Inoltra Discussione Forum Programmazione, GDRCD, Open Source, Hosting Elenco Forum
I dati del generatore di rank sono stati aggiornati!