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

Escludere Forum da mod "Last Topic"

Supporto MODs generale.
Rispondi
Lances
Utente
Utente
Messaggi: 18
Iscritto il: 05/08/2010, 13:34
Sesso: Maschio
Versione: 3.0.8
Server: UNIX/Linux
PHP: 5.2.12
Database: MySQL(i) 5.0.91-enterprise-gpl

Escludere Forum da mod "Last Topic"

Messaggio da Lances » 29/03/2011, 11:35

Ciao ragazzi, vado subito al dunque.. Da questa query dovrei fare in modo che una sezione del forum (es la sezione 45) non venga visualizzata (si tratta della mod che fa visualizzare gli ultimi topic nella index). ecco i dati:

Codice: Seleziona tutto

    $sql = "SELECT topic_title, {$table_prefix}topics.forum_id, topic_id, topic_time, topic_type, topic_status, poll_start, topic_last_post_id, topic_poster, topic_last_poster_id, topic_first_poster_colour, topic_last_poster_colour, topic_first_poster_name, topic_last_poster_name, topic_last_post_time, topic_last_post_subject, forum_name, topic_views, topic_replies, icon_id
       FROM " . TOPICS_TABLE . " 
	LEFT JOIN {$table_prefix}forums ON {$table_prefix}topics.forum_id = {$table_prefix}forums.forum_id
       LEFT JOIN {$table_prefix}icons ON {$table_prefix}topics.icon_id = {$table_prefix}icons.icons_id
       WHERE topic_status <> 2
          AND topic_approved = 1
       ORDER BY topic_last_post_time DESC";
Io so che dovrei aggiungere "topic_id not in (45)" ma non mi accetta nulla, è da stamane che provo! Spero in un vostro aiuto!
Ultima modifica di Lances il 29/03/2011, 15:36, modificato 2 volte in totale.
Immagine

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: Escludere Forum da mod "Last Topic"

Messaggio da Micogian » 29/03/2011, 15:03

Presumo che 45 sia il forum_id, non il topic_id, pertanto

Codice: Seleziona tutto

WHERE forum_id <> 45
          AND topic_status <> 2
          AND topic_approved = 1
       ORDER BY topic_last_post_time DESC";
Però potrebbe andare in conflitto con il forum_id della tabella forums, in questo caso bisogna mettere il nome completo del campo (tabella.campo)

Codice: Seleziona tutto

WHERE {$table_prefix}topics.forum_id <> 45

Lances
Utente
Utente
Messaggi: 18
Iscritto il: 05/08/2010, 13:34
Sesso: Maschio
Versione: 3.0.8
Server: UNIX/Linux
PHP: 5.2.12
Database: MySQL(i) 5.0.91-enterprise-gpl

Re: Escludere Forum da mod "Last Topic"

Messaggio da Lances » 29/03/2011, 15:11

Grazie per la risposta! Nulla.. ricevo il seguente errore SQL:

Codice: Seleziona tutto

SQL ERROR [ mysqli ]

Column 'forum_id' in where clause is ambiguous [1052]

SQL

SELECT topic_title, phpbb_topics.forum_id, topic_id, topic_time, topic_type, topic_status, poll_start, topic_last_post_id, topic_poster, topic_last_poster_id, topic_first_poster_colour, topic_last_poster_colour, topic_first_poster_name, topic_last_poster_name, topic_last_post_time, topic_last_post_subject, forum_name, topic_views, topic_replies, icon_id FROM phpbb_topics LEFT JOIN phpbb_forums ON phpbb_topics.forum_id = phpbb_forums.forum_id LEFT JOIN phpbb_icons ON phpbb_topics.icon_id = phpbb_icons.icons_id WHERE forum_id <> 45 AND topic_status <> 2 AND topic_approved = 1 ORDER BY topic_last_post_time DESC LIMIT 6

BACKTRACE

FILE: includes/db/mysqli.php
LINE: 163
CALL: dbal->sql_error()

FILE: includes/db/mysqli.php
LINE: 205
CALL: dbal_mysqli->sql_query()

FILE: includes/db/dbal.php
LINE: 170
CALL: dbal_mysqli->_sql_query_limit()

FILE: includes/last_post.php
LINE: 51
CALL: dbal->sql_query_limit()

FILE: index.php
LINE: 151
CALL: include('includes/last_post.php')
Ci avevo provato pure io.. Conta che devo evitare di far visualizzare + forum (categorie)..

ho provato il secondo esempio e funziona tutto correttamente ma continuo a visualizzare i topic dentro la categoria.. Cmq mi sa che ho fatto un casotto.. Forse devo bloccare i topic direttamente?

EDIT: Il 2° metodo ha funzionato! Non aveva ancora aggiornato... Grazie!
Immagine

Rispondi

Torna a “Supporto MODs”

Chi c’è in linea

Visitano il forum: Nessuno e 61 ospiti