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
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
Topten Topics
-
metal master
- Utente

- Messaggi: 122
- Iscritto il: 28/12/2010, 10:58
- Sesso: Maschio
- Versione: 3.1.3
- Server: UNIX/Linux
- PHP: 5.5.25
- Database: MySQL(i) 5.5.43-37.2
Re: Topten Topics
ok,provato e sembra funzionare,ho modificato le percentuali e tolto l'autore del topic.
ultima cosa: come fare per includere anche gli annunci e gli importanti oltre ai topic normali?
ultima cosa: come fare per includere anche gli annunci e gli importanti oltre ai topic normali?
- Micogian
- 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: Topten Topics
Secondo me in una Lista dei Post l'autore del topic e l'autore dell'ultimo messaggio poteva starci ma poi ognuno fa come crede.
Il tipo di topic è dato dal campo "type" (0, 1, 2, 3), se li vuoi visualizzare tutti devi togliere il riferimento al type, al posto di:
usi:
Se vuoi escludere un type (ad esempio il 3)
Un altro modo per includere alcuni type è
Il tipo di topic è dato dal campo "type" (0, 1, 2, 3), se li vuoi visualizzare tutti devi togliere il riferimento al type, al posto di:
Codice: Seleziona tutto
WHERE tt.topic_type = 0
AND tt.topic_moved_id = 0
.....Codice: Seleziona tutto
WHERE tt.topic_moved_id = 0
.....Codice: Seleziona tutto
WHERE tt.topic_type <> 3
AND tt.topic_moved_id = 0
.....Codice: Seleziona tutto
WHERE tt.topic_type IN(0,1,2)
AND tt.topic_moved_id = 0
.....-
metal master
- Utente

- Messaggi: 122
- Iscritto il: 28/12/2010, 10:58
- Sesso: Maschio
- Versione: 3.1.3
- Server: UNIX/Linux
- PHP: 5.5.25
- Database: MySQL(i) 5.5.43-37.2
Re: Topten Topics
tutto ok bingo,sempre precise e chiare le tue spiegazioni
Sta mod che hai creato e' di grande utilita' per il forum che utilizzo,molti infatti sono gli utenti pigri che preferiscono visualizzare le ultime risposte e i topic direttamente dalla tabella invece di entrare nei singoli forum.
Sta mod che hai creato e' di grande utilita' per il forum che utilizzo,molti infatti sono gli utenti pigri che preferiscono visualizzare le ultime risposte e i topic direttamente dalla tabella invece di entrare nei singoli forum.
-
metal master
- Utente

- Messaggi: 122
- Iscritto il: 28/12/2010, 10:58
- Sesso: Maschio
- Versione: 3.1.3
- Server: UNIX/Linux
- PHP: 5.5.25
- Database: MySQL(i) 5.5.43-37.2
Re: Topten Topics
bingo volevo chiederti un altra cosa: se vorrei creare o inserire in quella tabella che ho creato nella parte alta del mio sito(Fantacalcio SoloNapoliFans) gli ultimi 5 topics della sezione fantacalcio,come posso fare?
in poche parole vorrei creare un altra tabella con gli ultimi 5 topics di una sola sezione del forum
in poche parole vorrei creare un altra tabella con gli ultimi 5 topics di una sola sezione del forum
- Micogian
- 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: Topten Topics
Se guardiamo il meccanismo che consente di estrarre i Topics la cosa è semplice: da un lato il file php ha lo scopo di interrogare il database con una query, di creare una serie di variabili che il template provvede a visualizzare.
Nella Topten Topics ci sono 3 query, una per estrarre gli ultimi topics, una per i topics più visti e una per gli ultimi posts.
Basta crearne un'altra per estrarre gli ultimi topics di un determinato Forum, creare le variabili che il template provvederà a visuaolizzare come e dove vogliamo.
In pratica un'altra query.
Nella Topten Topics ci sono 3 query, una per estrarre gli ultimi topics, una per i topics più visti e una per gli ultimi posts.
Basta crearne un'altra per estrarre gli ultimi topics di un determinato Forum, creare le variabili che il template provvederà a visuaolizzare come e dove vogliamo.
In pratica un'altra query.
-
metal master
- Utente

- Messaggi: 122
- Iscritto il: 28/12/2010, 10:58
- Sesso: Maschio
- Versione: 3.1.3
- Server: UNIX/Linux
- PHP: 5.5.25
- Database: MySQL(i) 5.5.43-37.2
Re: Topten Topics
bingo ha scritto:Se guardiamo il meccanismo che consente di estrarre i Topics la cosa è semplice: da un lato il file php ha lo scopo di interrogare il database con una query, di creare una serie di variabili che il template provvede a visualizzare.
Nella Topten Topics ci sono 3 query, una per estrarre gli ultimi topics, una per i topics più visti e una per gli ultimi posts.
Basta crearne un'altra per estrarre gli ultimi topics di un determinato Forum, creare le variabili che il template provvederà a visuaolizzare come e dove vogliamo.
In pratica un'altra query.
quindi mettiamo che io voglio usare questo file php per i soli ultimi 5 post,e solo per il forum con id32,come devo modificarlo?
Codice: Seleziona tutto
<?php
// MOD Topten Topics : Topics più recenti, Topics più visti e Posts più recenti
// created by Micogian (Bingo)
if (!defined('IN_PHPBB'))
{
exit;
}
// configurazione: numero dei recods da visualizzare nella Lista
$list_rec = 30 ; // numero di records da estrarre dalla tabella (alcuni topics potrebbero non aver il permesso di lettura)
$list_view = 5 ; // sostituire il numero della variabile $lista se si desidera diminuire/aumentare il numero dei Topics
//---------- 10 Ultimi posts start -----------//
$sql = "SELECT tt.topic_id, tt.forum_id, tt.topic_moved_id, tt.topic_last_post_id, tt.topic_last_poster_id, tt.topic_last_poster_name, tt.topic_last_poster_colour,
tt.topic_last_post_subject, tt.topic_last_post_time, tt.topic_replies, tt.topic_views, tt.topic_poster, tt.topic_first_poster_name, tt.topic_first_poster_colour,
ft.forum_id, ft.forum_name
FROM " . TOPICS_TABLE . " tt, " . FORUMS_TABLE . " ft
WHERE tt.topic_type = 0
AND tt.topic_moved_id = 0
AND tt.forum_id = ft.forum_id
ORDER BY tt.topic_last_post_time DESC LIMIT 0,$list_rec";
$result = $db->sql_query($sql);
$n = 0;
while ($row = $db->sql_fetchrow($result))
{
if ($auth->acl_get('f_read', $row['forum_id']) == 1)
{
if ($n < $list_view)
{
// accorcia il titolo se troppo lungo
$post_subject = str_replace("Re: ", "", $row['topic_last_post_subject']) ;
if (strlen($post_subject) > 28)
{
$post_title = substr($post_subject,0,25) . "...";
}else{
$post_title = $post_subject ;
}
// accorcia il nome del Forum se troppo lungo
$forum_title = $row['forum_name'];
if (strlen($forum_title) > 28)
{
$forum_name_short = substr($forum_title,0,25) . "...";
}else{
$forum_name_short = $forum_title ;
}
$last_post_link[$n] = append_sid("{$phpbb_root_path}viewtopic.$phpEx", "f=" . $row['forum_id'] . "&t=" . $row['topic_id'] . "&p=" . $row['topic_last_post_id'] . "#p" . $row['topic_last_post_id']);
$last_post_title[$n] = $row['topic_last_post_subject'];
$last_post_title_short[$n] = $post_title;
$last_post_forum_id[$n] = $row['forum_id'];
$last_post_forum_name[$n] = $row['forum_name'];
$last_post_forum_name_short[$n] = $forum_name_short ;
$last_post_first_poster_full[$n] = get_username_string('full', $row['topic_poster'], $row['topic_first_poster_name'], $row['topic_first_poster_colour']);
$last_post_last_poster_full[$n] = get_username_string('full', $row['topic_last_poster_id'], $row['topic_last_poster_name'], $row['topic_last_poster_colour']);
$last_post_replies[$n] = $row['topic_replies'];
$last_post_views[$n] = $row['topic_views'];
$last_post_time[$n] = $user->format_date($row['topic_last_post_time']);
//echo $last_post_title_short[$n] . "<br />";
++$n ;
}else{
break ;
}
}
}
//---------- 10 Ultimi posts end -----------//
// Crea l'array "lastpost_list" che contiene le Variabili per il Template
for ($x = 0; $x < $list_view; ++$x)
{
$template->assign_block_vars('lastpost_list',array(
'LAST_POST_LINK' => $last_post_link[$x],
'LAST_POST_TITLE' => $last_post_title[$x],
'LAST_POST_TITLE_SHORT' => $last_post_title_short[$x],
'LAST_POST_FORUM_ID' => $last_post_forum_id[$x],
'LAST_POST_FORUM_NAME' => $last_post_forum_name[$x],
'LAST_POST_FORUM_NAME_SHORT' => $last_post_forum_name_short[$x],
'LAST_POST_FIRST_POSTER_FULL' => $last_post_first_poster_full[$x],
'LAST_POST_LAST_POSTER_FULL' => $last_post_last_poster_full[$x],
'LAST_POST_REPLIES' => $last_post_replies[$x],
'LAST_POST_VIEWS' => $last_post_views[$x],
'LAST_POST_TIME' => $last_post_time[$x],
));
}
?>- Micogian
- 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: Topten Topics
Basta indicare dove (WHERE) cercare, in questo caso nel forum_id=32.
La riga
diventa
La query può stare nello stesso file, l'unica cosa che deve cambiare è il nome dell'array che contiene le Variabili, le variabili possono rimanere con lo stesso nome ma deve cambiare il nome dell'array, potrebbe essere:
ma potrebbe anche chiamarsi "pippo".
Nel template i valori saranno {lastpost_32.NOME_VARIABILE} o, se si usa il nome "pippo": {pippo.NOME_VARIABILE}..
La riga
Codice: Seleziona tutto
WHERE tt.topic_type = 0Codice: Seleziona tutto
WHERE tt.forum_id = 32
AND tt.topic_type = 0Codice: Seleziona tutto
$template->assign_block_vars('lastpost_32',array(Nel template i valori saranno {lastpost_32.NOME_VARIABILE} o, se si usa il nome "pippo": {pippo.NOME_VARIABILE}..
-
metal master
- Utente

- Messaggi: 122
- Iscritto il: 28/12/2010, 10:58
- Sesso: Maschio
- Versione: 3.1.3
- Server: UNIX/Linux
- PHP: 5.5.25
- Database: MySQL(i) 5.5.43-37.2
Re: Topten Topics
Allora ricapitolando
Ho creato questo file mod_lastpost32.php
in index.php devo aggiungere sopra all'altro include questo?
include($phpbb_root_path . 'mod_lastpost32.' . $phpEx);
mentre qui nel file php come devo modificare?
infine visto che la tabella dovrebbe apparire in una tabella gia presente nel sito che e' questa e che si trova nel file overall_header:
in che parte del codice dove devo inserire <!-- INCLUDE mod_last_topiclist_body.html -->
Ho creato questo file mod_lastpost32.php
Codice: Seleziona tutto
<?php
// MOD Topten Topics : Topics più recenti, Topics più visti e Posts più recenti
// created by Micogian (Bingo)
if (!defined('IN_PHPBB'))
{
exit;
}
// configurazione: numero dei recods da visualizzare nella Lista
$list_rec = 30 ; // numero di records da estrarre dalla tabella (alcuni topics potrebbero non aver il permesso di lettura)
$list_view = 5 ; // sostituire il numero della variabile $lista se si desidera diminuire/aumentare il numero dei Topics
//---------- 10 Ultimi posts start -----------//
$sql = "SELECT tt.topic_id, tt.forum_id, tt.topic_moved_id, tt.topic_last_post_id, tt.topic_last_poster_id, tt.topic_last_poster_name, tt.topic_last_poster_colour,
tt.topic_last_post_subject, tt.topic_last_post_time, tt.topic_replies, tt.topic_views, tt.topic_poster, tt.topic_first_poster_name, tt.topic_first_poster_colour,
ft.forum_id, ft.forum_name
FROM " . TOPICS_TABLE . " tt, " . FORUMS_TABLE . " ft
WHERE tt.forum_id = 32
AND tt.topic_type = 0
AND tt.forum_id = ft.forum_id
ORDER BY tt.topic_last_post_time DESC LIMIT 0,$list_rec";
$result = $db->sql_query($sql);
$n = 0;
while ($row = $db->sql_fetchrow($result))
{
if ($auth->acl_get('f_read', $row['forum_id']) == 1)
{
if ($n < $list_view)
{
// accorcia il titolo se troppo lungo
$post_subject = str_replace("Re: ", "", $row['topic_last_post_subject']) ;
if (strlen($post_subject) > 60)
{
$post_title = substr($post_subject,0,57) . "...";
}else{
$post_title = $post_subject ;
}
// accorcia il nome del Forum se troppo lungo
$forum_title = $row['forum_name'];
if (strlen($forum_title) > 28)
{
$forum_name_short = substr($forum_title,0,25) . "...";
}else{
$forum_name_short = $forum_title ;
}
$last_post_link[$n] = append_sid("{$phpbb_root_path}viewtopic.$phpEx", "f=" . $row['forum_id'] . "&t=" . $row['topic_id'] . "&p=" . $row['topic_last_post_id'] . "#p" . $row['topic_last_post_id']);
$last_post_title[$n] = $row['topic_last_post_subject'];
$last_post_title_short[$n] = $post_title;
$last_post_forum_id[$n] = $row['forum_id'];
$last_post_forum_name[$n] = $row['forum_name'];
$last_post_forum_name_short[$n] = $forum_name_short ;
$last_post_last_poster_full[$n] = get_username_string('full', $row['topic_last_poster_id'], $row['topic_last_poster_name'], $row['topic_last_poster_colour']);
$last_post_replies[$n] = $row['topic_replies'];
$last_post_views[$n] = $row['topic_views'];
$last_post_time[$n] = $user->format_date($row['topic_last_post_time']);
//echo $last_post_title_short[$n] . "<br />";
++$n ;
}else{
break ;
}
}
}
//---------- 10 Ultimi posts end -----------//
// Crea l'array "lastpost_list" che contiene le Variabili per il Template
for ($x = 0; $x < $list_view; ++$x)
{
$template->assign_block_vars('lastpost_list',array(
'LAST_POST_LINK' => $last_post_link[$x],
'LAST_POST_TITLE' => $last_post_title[$x],
'LAST_POST_TITLE_SHORT' => $last_post_title_short[$x],
'LAST_POST_FORUM_ID' => $last_post_forum_id[$x],
'LAST_POST_FORUM_NAME' => $last_post_forum_name[$x],
'LAST_POST_FORUM_NAME_SHORT' => $last_post_forum_name_short[$x],
'LAST_POST_LAST_POSTER_FULL' => $last_post_last_poster_full[$x],
'LAST_POST_REPLIES' => $last_post_replies[$x],
'LAST_POST_VIEWS' => $last_post_views[$x],
'LAST_POST_TIME' => $last_post_time[$x],
));
}
?>include($phpbb_root_path . 'mod_lastpost32.' . $phpEx);
mentre qui nel file php come devo modificare?
Codice: Seleziona tutto
// Crea l'array "lastpost_list" che contiene le Variabili per il Template
for ($x = 0; $x < $list_view; ++$x)
{
$template->assign_block_vars('lastpost_list',array(
'LAST_POST_LINK' => $last_post_link[$x],
'LAST_POST_TITLE' => $last_post_title[$x],
'LAST_POST_TITLE_SHORT' => $last_post_title_short[$x],
'LAST_POST_FORUM_ID' => $last_post_forum_id[$x],
'LAST_POST_FORUM_NAME' => $last_post_forum_name[$x],
'LAST_POST_FORUM_NAME_SHORT' => $last_post_forum_name_short[$x],
'LAST_POST_LAST_POSTER_FULL' => $last_post_last_poster_full[$x],
'LAST_POST_REPLIES' => $last_post_replies[$x],
'LAST_POST_VIEWS' => $last_post_views[$x],
'LAST_POST_TIME' => $last_post_time[$x],
));
}
?>Codice: Seleziona tutto
div class="clear-both"></div>
<a name="start_here"></a>
<div id="page-body">
<div class="forumbg">
<div class="inner">
<span class="corners-top"><span></span></span>
<ul class="topiclist">
<li class="header">
<dl class="icon">
<dt>Fantacalcio SoloNapoliFans: Clicca sui banner</dt>
</dl>
</li>
</ul>
<ul class="topiclist forums">
<li class="row">
<dl>
<div align="center"><a href="http://www.fantaclub.it/servlet/lega/solonapolifans?insito=si" target="blank_"><IMG SRC="http://www.solonapolifans.it/images/fantacalcio1.png" a title="Lega solonapolifans link ai 3 gironi"></A>  <IMG SRC="http://www.solonapolifans.it/images/prova3.jpg" a title="Termini" /></A>  <a href="http://www.solonapolifans.it/viewtopic.php?f=32&t=488"><IMG SRC="http://www.solonapolifans.it/images/fantacalcio2.png" a title="Lega solonapolifans regolamento e premi"></A></div>
</dd>
</dl>
</li>
</ul>
<span class="corners-bottom"><span></span></span>
</div>
</div>- Micogian
- 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: Topten Topics
Hai dimenticato di cambiare il nome dell'array, altrimenti non c'è differenza con le altre variabili. lo avevo scritto, dove si creano le variabili devi cambiare il nome all'array:
Potevi mettere il codice nello stesso file php, senza bisogno di inserire un nuovo include ma è la stessa cosa.
L'unico problema potrebbe essere che le due parti di codice, visto che con l'include finiscono nel file index.php non vadano in conflitto. Meglio cambiare i nomi alle variabili $list_rec e $list_view che sono i record da elaborare e quelli da visualizzare.
Puoi modificarli in $list_rec_32 e $list_view_32 o addirittura non usarli e sostituirle direttamente con i valori 30 e 5.
Devi considerare che è stato scelto il valore 30 (potrebbe essere di meno) perchè per i topics elaborati vengono controllati i permessi di lettura e la lista potrebbe essere minore di quella che vogliamo visualizzare.
Credo che per visualizzare 5 topic basti elaborarne 10.
Per il template non ho capito se vanno nella stessa tabella o in una diversa, l'importante è usare il nuovo array e le relative variabili.
Se usi una tabella diversa ti conviene creare un nuovo file html mod_lastpost32_body.html e l'include lo metti dove vuoi che appaia.
Nel nuovo file devi usare
Codice: Seleziona tutto
$template->assign_block_vars('lastpost_32',array(L'unico problema potrebbe essere che le due parti di codice, visto che con l'include finiscono nel file index.php non vadano in conflitto. Meglio cambiare i nomi alle variabili $list_rec e $list_view che sono i record da elaborare e quelli da visualizzare.
Puoi modificarli in $list_rec_32 e $list_view_32 o addirittura non usarli e sostituirle direttamente con i valori 30 e 5.
Devi considerare che è stato scelto il valore 30 (potrebbe essere di meno) perchè per i topics elaborati vengono controllati i permessi di lettura e la lista potrebbe essere minore di quella che vogliamo visualizzare.
Credo che per visualizzare 5 topic basti elaborarne 10.
Per il template non ho capito se vanno nella stessa tabella o in una diversa, l'importante è usare il nuovo array e le relative variabili.
Se usi una tabella diversa ti conviene creare un nuovo file html mod_lastpost32_body.html e l'include lo metti dove vuoi che appaia.
Nel nuovo file devi usare
Codice: Seleziona tutto
<!-- BEGIN lastpost_32 -->
.....
<!-- END lastpost_32 -->-
metal master
- Utente

- Messaggi: 122
- Iscritto il: 28/12/2010, 10:58
- Sesso: Maschio
- Versione: 3.1.3
- Server: UNIX/Linux
- PHP: 5.5.25
- Database: MySQL(i) 5.5.43-37.2
Re: Topten Topics
fatto ma non appare nulla in tabella 
Chi c’è in linea
Visitano il forum: Nessuno e 4 ospiti