| :: |
| Auteur |
Message |
charabia
Inscrit le: 24 Oct 2006 Messages: 48
|
Posté le: Mer Oct 25, 2006 8:52 am Sujet du message: Re: [aide] afficher les dernier sujet du forum |
|
|
Ouf J'ai réussi à tout intégrer. Ca fonctionne avec ou sans session, mais pour ma culture perso, j'aimerais comprendre l'utilité des sessions pour cette affichage
Juste une tite modification pour atteindre le dernier post :
| Code: | | echo "<a href=\"".append_sid("$urlPath/profile.php?mode=viewprofile&u=".$last_topic_data[$i]['user_id'])."\" class=\"lien-bleu\" >" . $last_topic_data[$i]['username'] . "</a>, ".$date_last_post." <a href=\"" . append_sid("$urlPath/viewtopic.php?p=".$last_topic_data[$i]['topic_last_post_id'] . $start) . "#" . $last_topic_data[$i]['topic_last_post_id'] . "\"><img src=\"" . $urlPath . "/" . $images['icon_latest_reply'] . "\" alt=\"". $lang['View_latest_post'] . "\" border=\"0\"></a> |
viewtopic.php?p=".$last_topic_data[$i]['topic_last_post_id'] à la place de viewtopic.php?t=".$last_topic_data[$i]['topic_id']
et j'ai dû rajouter "\" pour le chemin de l'image pour que ça colle bien
Voili voilou !
Merci beaucoup ! |
|
|
| Revenir en haut de page |
|
 |
|
 |
dcz Administrateur - Site Admin

Inscrit le: 28 Avr 2006 Messages: 14131
|
Posté le: Mer Oct 25, 2006 10:10 am Sujet du message: Re: [aide] afficher les dernier sujet du forum |
|
|
Merci pour les fautes de frappes , j'édite mon post.
Les sessions nous servent ici à sortir les sujet que chaque membre a le droit de voir, c'est plus vivant et cela permet aussi d'utiliser toutes les fonctions de phpBB (class $db et le reste).
De plus, tes membres qui auraient choisit l'option auto login seront désormais logués automatiquement depuis cette page
++ |
_________________ Useful links :
SEO Forum || SEO Directory || SEO phpBB || SEO phpBB3 || Search
____________________
Liens Utiles :
Forum référencement || Annuaire référencement || Référencement phpBB || Référencement phpBB3 || Recherche |
|
| Revenir en haut de page |
|
 |
charabia
Inscrit le: 24 Oct 2006 Messages: 48
|
Posté le: Mer Oct 25, 2006 11:27 am Sujet du message: Re: [aide] afficher les dernier sujet du forum |
|
|
Oki ! Je vois beaucoup mieux !
Mais apparemment ça ne marche pas...lol Je me suis logué en tant qu'admin et certains posts se trouvent dans des forums privés. J'ai beau allé sur les 10 posts en page d'accueil, je ne vois pas ce post, mais la même chose que non connecté.
Pourtant c'est le même code. Aurais-tu une idée ?
Peut-être à cause des numéro de forum exclu ?
| Code: | $exclude_forum = array (
1 => XX,
2 => ...
); |
mici  |
|
|
| Revenir en haut de page |
|
 |
dcz Administrateur - Site Admin

Inscrit le: 28 Avr 2006 Messages: 14131
|
|
| Revenir en haut de page |
|
 |
charabia
Inscrit le: 24 Oct 2006 Messages: 48
|
Posté le: Mer Oct 25, 2006 12:12 pm Sujet du message: Re: [aide] afficher les dernier sujet du forum |
|
|
| Testé, j'ai regardé les dates et même les posts plus récents dans un forum privé ne se trouvent pas sur la liste c'est bizarre... |
|
|
| Revenir en haut de page |
|
 |
dcz Administrateur - Site Admin

Inscrit le: 28 Avr 2006 Messages: 14131
|
Posté le: Mer Oct 25, 2006 2:24 pm Sujet du message: Re: [aide] afficher les dernier sujet du forum |
|
|
Peut être en remplaçant :
| Code: | | if ($is_auth_ary[$last_topic_data[$i]['forum_id']]['auth_view'] && !in_array($last_topic_data[$i]['forum_id'], $exclude_forum)) |
Par :
| Code: | | if (($userdata['user_level'] == ADMIN) || $is_auth_ary[$last_topic_data[$i]['forum_id']]['auth_read'] && !in_array($last_topic_data[$i]['forum_id'], $exclude_forum)) |
Ça le fera mieux
++ |
_________________ Useful links :
SEO Forum || SEO Directory || SEO phpBB || SEO phpBB3 || Search
____________________
Liens Utiles :
Forum référencement || Annuaire référencement || Référencement phpBB || Référencement phpBB3 || Recherche |
|
| Revenir en haut de page |
|
 |
charabia
Inscrit le: 24 Oct 2006 Messages: 48
|
Posté le: Mer Oct 25, 2006 2:49 pm Sujet du message: Re: [aide] afficher les dernier sujet du forum |
|
|
| hihi là l'invité ne voit plus rien lol |
|
|
| Revenir en haut de page |
|
 |
dcz Administrateur - Site Admin

Inscrit le: 28 Avr 2006 Messages: 14131
|
|
| Revenir en haut de page |
|
 |
charabia
Inscrit le: 24 Oct 2006 Messages: 48
|
Posté le: Mer Oct 25, 2006 4:59 pm Sujet du message: Re: [aide] afficher les dernier sujet du forum |
|
|
Ah bé voui j'aurais dû le voir lol
En fait si sur les 10 posts demandés à afficher en page d'accueil j'en ai par exemple 3 de forums privés, l'invité non connecté ne verra que 7 posts dans l'encadré. N'y a t-il pas un moyen pour que le nb reste toujours à 10 pour tous les cas (admin, modos, membres ou invités) ?
thanks ! |
|
|
| Revenir en haut de page |
|
 |
dcz Administrateur - Site Admin

Inscrit le: 28 Avr 2006 Messages: 14131
|
|
| Revenir en haut de page |
|
 |
charabia
Inscrit le: 24 Oct 2006 Messages: 48
|
Posté le: Jeu Oct 26, 2006 9:06 am Sujet du message: Re: [aide] afficher les dernier sujet du forum |
|
|
Ah oui oki on va éviter d'alourdir alors lol
Oki je met à 15 ça devrait aller.
Merci ! |
|
|
| Revenir en haut de page |
|
 |
yazerty PR1

Inscrit le: 30 Oct 2006 Messages: 173
|
Posté le: Lun Oct 30, 2006 3:16 pm Sujet du message: Re: [aide] afficher les dernier sujet du forum |
|
|
Bonjour,
Je profite de ce topic car je suis actuellement dans la même problématique, mais un peu plus "avancée", puisque je souhaite également afficher les 350 premiers mots des derniers sujets.
Je souhaite afficher les 10 derniers sujets postés sur mon forum de la manière suivante :
| Citation: |
Titre du sujet, par Auteur, le Jour XX Mois 2006 :
350 premiers caractères du sujet posté (...)
Auteur-de-la-réponse a posté la dernière réponse (il y a xx réponses en tout)
|
Grâce au code suivant :
| Code: |
<?php
// Connexion à la bdd
"(trululu...)
// Sélection des 10 derniers posts
$sql = "SELECT TP.topic_id, TP.topic_title, TP.topic_replies, PT.post_text
FROM phpbb_topics TP
INNER JOIN phpbb_posts_text PT
ON TP.topic_id = PT.post_id
GROUP BY TP.topic_id
ORDER BY TP.topic_id DESC
LIMIT 10";
$req = mysql_query($sql) or die(mysql_error());
// Boucle d'affichage du post
while($db_data = mysql_fetch_assoc($req)) {
// Extrait du post
$post = $db_data['post_text'];
$max_caracteres = 350;
if (strlen($post)>$max_caracteres) {
$max_caracteres=strrpos(substr($post, 0, $max_caracteres), " ");
$post = substr($post, 0, $max_caracteres);
$post .= " (...)";
}
echo "<p><a href=\"url.com?id=".$db_data['topic_id']."\">".$db_data['topic_title']."</a><br />
$post</p>";
}
// Fermeture de la connexion à la bdd
mysql_close();
?>
|
J'arrive pour le moment à afficher :
| Citation: |
Le ballon rouge
[u:78da08f766][i:78da08f766]Ce rêve et ses interprétations font partie des archives de la Boîte à rêves. C'est ce qui explique leur présentation spécifique. Vous pouvez toutefois continuer la discussion en répondant normalement...[/i:78da08f766][/u:78da08f766] Le samedi 01 janvier 2005 à 20:07 Un rêveur anonyme a confié le rêve suivant à la (...)
|
Le problème qui m'est pour le moment posé ce sont ces
"[u:78da08f766][i:78da08f766]" qui semblent correspondent aux balises [ u ] et [ i ] présentes au début d'une bonne partie de mes posts.
Je ne sais absolument pas comment gérer la chose. Pourriez-vous m'aidez svp ? |
_________________ L'insolite Yazerty.Net - Interprétation et signification des rêves |
|
| Revenir en haut de page |
|
 |
dcz Administrateur - Site Admin

Inscrit le: 28 Avr 2006 Messages: 14131
|
|
| Revenir en haut de page |
|
 |
yazerty PR1

Inscrit le: 30 Oct 2006 Messages: 173
|
|
| Revenir en haut de page |
|
 |
yazerty PR1

Inscrit le: 30 Oct 2006 Messages: 173
|
Posté le: Ven Nov 03, 2006 9:49 pm Sujet du message: Re: [aide] afficher les dernier sujet du forum |
|
|
| dcz a écrit: | Trouver :
| Code: | <td><span class=\"nav\">".$lang['Last_Post']." :
<a href=\"".append_sid("$urlPath/viewtopic.php?t=".$last_topic_data[$i]['topic_id'])."\" class=\"nav\">" . $last_topic_data[$i]['topic_title'] ."</span></a></td> |
Remplacer par :
| Code: | | echo "<a href=\"".append_sid("$urlPath/profile.php?mode=viewprofile&u=".$last_topic_data[$i]['user_id'])."\" class=\"lien-bleu\" >" . $last_topic_data[$i]['username'] . "</a>, ".$date_last_post." <a href=\"" . append_sid("$urlPath/viewtopic.php?p=".$last_topic_data[$i]['topic_last_post_id'] . $start) . "#" . $last_topic_data[$i]['topic_last_post_id'] . "\"><img src=\"" . $urlPath . "/" . $images['icon_latest_reply'] . "\" alt=\"". $lang['View_latest_post'] . "\" border=\"0\"></a> |
|
Je ne comprends pas d'où sort le $date_last_post ? D'ailleurs chez moi il n'est pas interprété, je ne sais pas si c'est normal .
Et j'aimerais également faire comme Topics Anywhere par rapport aux invités, c'est à dire indiquer leur nom . Pourriez-vous m'aider svp ?
Voici le code que j'ai actuellement (légèrement modfifié pour la présentation) :
| Code: | // Start session management
$userdata = session_pagestart($user_ip, PAGE_INDEX);
init_userprefs($userdata);
// End session management
// Let's do it now Wink
$sql = "SELECT t.topic_poster,t.topic_views,t.topic_replies,t.topic_id, t.topic_title, t.topic_last_post_id, t.forum_id, p.post_id, p.poster_id, p.post_time, u.user_id, u.username
FROM ".TOPICS_TABLE." t, " . POSTS_TABLE . " p, " . USERS_TABLE . " u
WHERE t.topic_id = p.topic_id
AND t.topic_status <> 2
AND p.post_id = t.topic_last_post_id
AND p.poster_id = u.user_id
ORDER BY p.post_id DESC LIMIT $topicnumber";
//Begin sql cache
if ( !($result = $db->sql_query($sql)) )
//if ( !($result = $db->sql_query($sql, false, 'posts_')) )
//End sql cache
{
message_die(GENERAL_ERROR, 'Could not obtain Last topics info', '', __LINE__, __FILE__, $sql);
}
$last_topic_data = array();
while( $row = $db->sql_fetchrow($result) )
{
$last_topic_data[] = $row;
}
$db->sql_freeresult($result);
unset($row);
// Handle the not topics case, if you want Smile
if ( !($total_topics = count($last_topic_data)) )
{
$message = 'Something you want to say here Wink';
message_die(GENERAL_MESSAGE, $message);
}
//
// Find which forums are visible for this user
//
$is_auth_ary = array();
$is_auth_ary = auth(AUTH_VIEW, AUTH_LIST_ALL, $userdata, $last_topic_data);
// here I keep the basic html output
// Outcome of the HTML
// Be carefull when you edit these!
echo "</ul>";
for ($i = 0; $i < $total_topics; $i++ )
{
if ($is_auth_ary[$last_topic_data[$i]['forum_id']]['auth_view'] && !in_array($last_topic_data[$i]['forum_id'], $exclude_forum))
{
// phpBB-SEO.com SEO TOOLKIT BEGIN
$seo_topic_name = $last_topic_data[$i]['topic_title'];
$start = (ceil($last_topic_data[$i]['forum_id'] / $board_config['posts_per_page'])> 1) ? "&start=" . $paginated * $pages : '';
// phpBB-SEO.com SEO TOOLKIT END
echo "<li><a href=\"".append_sid("$urlPath/viewtopic.php?t=".$last_topic_data[$i]['topic_id'])."\" class=\"nav\">" . $last_topic_data[$i]['topic_title'] ."</a>
(" . $last_topic_data[$i]['topic_replies'] . " réponses)<br />
<a href=\"" . append_sid("$urlPath/viewtopic.php?p=".$last_topic_data[$i]['topic_last_post_id'] . $start) . "#" . $last_topic_data[$i]['topic_last_post_id'] . "\">Dernière réponse</a>
de <a href=\"".append_sid("$urlPath/profile.php?mode=viewprofile&u=".$last_topic_data[$i]['user_id'])."\" class=\"nav\" >" . $last_topic_data[$i]['username'] . "</a>,
le ".$date_last_post."
</li>";
}
}
echo "</ul>"; |
|
_________________ L'insolite Yazerty.Net - Interprétation et signification des rêves |
|
| Revenir en haut de page |
|
 |
|
|