[RISOLTO - GDRCD 5.6.0.5] Messaggi anonimi in bacheca
Pagine → 1 2
21/02/2023 16:44:08
emendil ha scritto: Si, come detto è stata una soluzione tampone XD Appena il lavoro mi concede un po' di respiro ci rimetto mano (se santa @Anneth non risolve prima :3)
ahahaha ma va la XD comunque.. in soldoni il pacchetto è un pò quello che ho già scritto su. Il pacchetto include solamente i file con le modifiche.
Se hai tempo prova a dargli un occhio e fammi sapere! A breve comunque esce il pacchetto ufficiale ^-*
27/02/2023 18:57:36 e modificato da staff shadowland il 27/02/2023 18:59:51
Ho testato il pacchetto adattandolo alla mia versione. Nella parte interna funziona (quando si ha accesso ad un Topic per intenderci) ma il problema si presenta nel momento in cui si ha accesso alla pagina inerente tutti gli argomenti trattati in ogni singola bacheca (la pagina che mostra autore/topic/risposte) dove compare in chiaro il nome dell'autore anche se il messaggio è settato su anonimo.
Ho provato ad inserire il codice di visualizzazione anonimo come quello interno ma il risultato che ottengo è praticamente quello di non visualizzare più alcuna informazione alla voce autore. Sono certa ci sia qualcosa di sbagliato, un aiutino così da completare l'implementazione? Ve ne sarei grata.
Posto di seguito la mia parte di codice (premetto che lavoro su un unico file chiamato forum)
<?php while($row=gdrcd_query($result, 'fetch'))
{
$readinfo=gdrcd_query("SELECT MAX(data_messaggio) AS latest, COUNT(*) AS replies FROM messaggioaraldo WHERE id_messaggio_padre = ".gdrcd_filter('get',$row['id_messaggio'])."");
$lastupdate=$readinfo['latest'];
$postsnumber=$readinfo['replies'];
$autore_ultimo_messaggio = gdrcd_query("SELECT autore FROM messaggioaraldo WHERE id_messaggio_padre = " . gdrcd_filter('get', $row['id_messaggio']) . " ORDER BY id_messaggio DESC LIMIT 1");
?>
<div class="elementi_elenco"><!-- Autore -->
<?php
if(ANONIMO){
if(gdrcd_filter('int', $row['anonimo'])){
echo "Anonimo";
if($_SESSION['permessi'] >= MODERATOR){?>
<a href="main.php?page=scheda&pg=<?php echo gdrcd_filter('out', $row['autore']); ?>">
<?php echo gdrcd_filter('out', $row['autore']); ?>
</a>
<? }
?>
<div class="forum_date_big">Data: <?php echo gdrcd_format_date($row['data_messaggio']).'
Ore: '.gdrcd_format_time($row['data_messaggio']); ?></div>
<?php }
}else{
?>
<?php } ?>
<!-- Topic -->
ecc. ecc.
28/02/2023 10:18:41
Le prove sul pacchetto continuano e ho notato che oltre a quanto detto su:
- Il quote dovrebbe essere modificato poiché anche se un pg posta in bacheca da anonimo, se un altro lo quota, compare in chiaro il nome del personaggio anonimo.
- Un utente può scrivere da anonimo in ogni bacheca disponibile (comprese quelle OFF), non si potrebbe limitare il tutto soltanto a quelle ON magari?
In ambo i casi, suggerimenti su come fare?
28/02/2023 11:20:59
staff shadowland ha scritto: Le prove sul pacchetto continuano e ho notato che oltre a quanto detto su:
- Il quote dovrebbe essere modificato poiché anche se un pg posta in bacheca da anonimo, se un altro lo quota, compare in chiaro il nome del personaggio anonimo.
- Un utente può scrivere da anonimo in ogni bacheca disponibile (comprese quelle OFF), non si potrebbe limitare il tutto soltanto a quelle ON magari?
In ambo i casi, suggerimenti su come fare?
per il "quote" dovrai agire sulla pagina di inserimento, andando fare un controllo sul post, ed eventualmente non inserire il nome del citato. Bisogna controllare i file relativi alle risposte (sia rapida che non ).
per il punto due: questo lo devi pilotare tu.
Puoi seguire due strade: Inserire un nuovo attributo in "Araldo" (va bene un semplice booleano vero/falso) con cui andare a inserire "battezzare" se in una bacheca è consentito l'anonimato, poi va verificato quando devi stampare la tendina dell' anonimo in fase di creazione/modifica/risposta.
Altra strada, il FLAG per cui decidi se un thread può essere anonimo o meno lo inserisci in "Messaggio Araldo" per quei messaggi in cui id_messaggio_padre = -1 (che sono i Thread principali), poi stessa cosa, la tendina dell'anonimo va fatta apparire solo nel caso in cui il flag sia vero e tutte le altre condizioni del pacchetto..
So bene non essere una spiegazione tecnica, ma quella la posso fare solo vedendo la struttura del tuo Database, e i file sorgente della tua land.
Questa, avendo modificato ed utilizzato il pacchetto dell'anonimo, solo solo delle linee guida.
28/02/2023 11:34:24 e modificato da staff shadowland il 28/02/2023 11:40:46
Grazie per la risposta, il processo di rendere attiva la possibilità dell'anonimato in un certo tipo di bacheca è una idea, ci penserò su ma al momento essendo un processo lungo devo rimandarlo a tempi migliori anche perchè non sono un programmatore e vado per ragionamento/tentativi.
Per quanto riguarda la questione del quote non mi è chiaro.
Posso postarti il codice così magari puoi capire effettivamente che cosa ho davanti:
<div class="form_field">
<textarea name="messaggio"><?php
if($quote){
$query="SELECT messaggio, autore FROM messaggioaraldo WHERE id_messaggio=".$quote;
$result=gdrcd_query($query);
echo gdrcd_filter('out',"[quote=".$result['autore']."]".$result['messaggio']."[/quote]");
}
?></textarea>
</div>
*Edit* il forum non mi include le ultime righe di codice che appaiono al di fuori della codifica apposita, ovvero questo dopo ".$result['messaggio']." dove ho omesso la parentesi quadra per chiudere il quote o spariva dal forum.
/quote]");
}
?></textarea>
</div>
28/02/2023 11:47:01 e modificato da cbr89 il 28/02/2023 11:54:21
Ciao 😀
ecco a te il pezzo di codice modificato , l'ho modificato sulla base di quello che mi hai inviato tu, e supponendo che tu, nella tabella messaggioaraldo abbia il campo "anonimo" che sia valorizzato a 1 o 0 in base al fatto che sia anonimo o meno.
Edit IMPORTANTISSIMO
Ho inserito i quote dentro il codice, tra parentesi graffe, perché se no lo tira fuori dal box del codice. quindi mi raccomando... NON COPIARE INCOLLARE SENZA GUARDARE BENE
<div class="form_field">
<textarea name="messaggio">
<?php
if($quote) {
$query = "SELECT messaggio, autore,anonimo FROM messaggioaraldo WHERE id_messaggio=".$quote;
$result = gdrcd_query($query);
if($result['anonimo']== 1){
echo gdrcd_filter('out', "{quote=Anonimo}".$result['messaggio']."{/quote}");
}else{
echo gdrcd_filter('out', "{quote=".$result['autore']."}".$result['messaggio']."{/quote}");
}
}?>
</textarea>
</div>
28/02/2023 11:59:44
Sì per le parentesi me ne ero resa conto XD
Comunque grazie mille! sei un genio *-* ho risolto con il quote!
Discussione seguita da
Pagine → 1 2
Rispondi alla Discussione Segui Discussione Inoltra Discussione Forum Programmazione, Open Source e Hosting Elenco Forum
Articoli, Interviste e altre Risorse!
Exclusive Villa GdR ↗
Fallen Gods ↗
The Coven ↗
Enlisted ↗
Tibia ↗
War Thunder ↗
World of the Sea Battle ↗