- Home
- Categorie
- Coding e Sistemistica
- Gestione di Forum
- [Mod] Segnalare un thread come risolto/irrisolto
-
Ho appena verificato piccoli errori di database verificatisi con alcuni thread,anche grazie a Flep che ha postato un primo problema.
Sto lavorando per aggiustare il tutto e posterò presto la soluzione
Ciao!
-
@probid said:
Aggiungere il tag dopo il titolo è semplice,basta modificare:
[php]$db->query_write("UPDATE ". TABLE_PREFIX. "thread SET title='[Risolto] $threadinfo[title]' WHERE threadid='$threadinfo[threadid]'");
[/php]
in[php]$db->query_write("UPDATE ". TABLE_PREFIX. "thread SET title='$threadinfo[title] [Risolto]' WHERE threadid='$threadinfo[threadid]'");
[/php];)
Ciao!Ciao Probid,
parliamo di modifiche a posting.php?Ciao
Stefano
-
-
oh, grazie mille.
L'ho gia' modificato.
Mi pare di capire che sia efficace solo sui prossimi... non e' retroattivo come la finanziariaCiao
Stefano
-
non e' retroattivo come la finanziariaLo script che posto ora l'ho fatto adesso in 1 minuto e serve per modificare i vecchi titoli ...
proprio perchè è stato creato in fretta consiglio un backup del db...e fatemi sapere se funziona
Dovete creare un nuovo file .php,inserire il seguente script e avviarlo
[php]
<?
mysql_connect("host","username","password"); //sostituire con i parametri di mysql
mysql_select_db("database"); //sostituire con il nome del db in uso$q=mysql_query("SELECT title,threadid from vb_thread WHERE title LIKE '[Risolto]%'");
$c=0;
while($r=mysql_fetch_assoc($q)){
$oldtitle=str_replace("[Risolto]","",$r[title]);
mysql_query("UPDATE vb_thread SET title='$oldtitle [Risolto]' WHERE threadid='$r[threadid]'");
$c++;
}
echo "Sono stati modificati i titoli di ".$c." threads";?>[/php]
-
Bene,come promesso ecco la versione funzionante anche con gli apostrofi della mod.
Consiglio a tutti coloro che hanno installato la mia modifica di eseguire questo "aggiornamento",è FONDAMENTALE per evitare il verificarsi di problemi con i thread che contengono apostrofi/apici.
Dopo questa modifica non dovrebbero verificarsi più problemi.In postings.php cercate la riga che avete aggiunto:
if(!in_array("[Risolto]",$el)){Aggiungete dopo:
$newtitle=addslashes("[Risolto] $threadinfo[title]");Sostituite poi:
$db->query_write("UPDATE ". TABLE_PREFIX. "thread SET title='[Risolto] $threadinfo[title]' WHERE threadid='$threadinfo[threadid]'");con:
$db->query_write("UPDATE ". TABLE_PREFIX. "thread SET title='$newtitle' WHERE threadid='$threadinfo[threadid]'");
Infine cercate:
$oldtitle=str_replace("[Risolto]","",$threadinfo[title]);e sostituite con:$oldtitle=str_replace("[Risolto]","",addslashes($threadinfo[title]));;)
Ciao!
-
Aggiornato, thanks!:)
Per i retroattivi non ho ancora provveduto al backup.Ciao
Stefano
-
Huston abbiamo un problema:
nonostante abbia aggiornato gli script alla lettera, sucede che quando indico un post come risolto, questo sparisce dalla consultazione.
Vedi alegato.Ciao
Stefano
-
Ok, ho capito cosa succede... il post resta, ma il titolo scompare.
Per il momento ripristino la versione precedente.Ciao
Stefano
-
Craedo di avere fatto nu po' di confusione con il [tagga prima] e [tagga dopo]...
Ora, ripristinato quest'ultimo funziona taggando come [risolto prima].
Quando invece taggo come [non risolto (sempre prima)] mi cancella il titolo del thread.if(!in_array("[Risolto]",$el)){ $newtitle=addslashes("[Risolto] $threadinfo[title]"); $db->query_write("UPDATE ". TABLE_PREFIX. "thread SET title='$newtitle' WHERE threadid='$threadinfo[threadid]'"); $action=$vbphrase[as_resolved];} else{ $action=$vbphrase[as_not_resolved]; $oldtitle=str_replace("[Risolto]","",addslashes($threadinfo[title])); $db->query_write("UPDATE ". TABLE_PREFIX. "thread SET title='$newtitle' WHERE threadid='$threadinfo[threadid]'"); }
Che sbaglio?
Ciao
Stefano
-
Nella penultima riga (quella prima della parentesi graffa di chiusura),al posto di SET title='$newtitle' metti SET title='$oldtitle' ;);)
Ciao!!
-
Grazie mille!
Ciao
Stefano
-
Per la prima volta mi da questo errore, in alcuni thread
Database error in vBulletin 3.6.8:
Invalid SQL:
UPDATE VB_thread SET title='[Risolto] Come inserire un'icona nel titolo del sito?' WHERE threadid='60862';MySQL Error : You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'icona nel titolo del sito?' WHERE threadid='60862'' at line 1
Error Number : 1064
Date : Thursday, November 29th 2007 @ 02:12:15 PM
Script : http://www.giorgiotave.it/forum/postings.php?t=60862&pollid=
Referrer : http://www.giorgiotave.it/forum/consigli-ed-aiuti-per-il-sito/60862-come-inserire-unicona-nel-titolo-del-sito.html
IP Address : 87.16.112.56
Username : Giorgiotave
Classname : vb_databaseC'è il problema con il carattere '