Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: Skrypt wyświetlający ostatnie tematy z phpBB2
Forum PHP.pl > Forum > Gotowe rozwiązania > Skrypty forum
neoski
Witam! Posiadam oto taki skrypt:

  1. <?php
  2.  
  3. /////////////////////
  4. // USTAWIENIA //
  5. /////////////////////
  6.  
  7. // Ilosc wyswietlanych tematow
  8.  
  9. define(&#092;"TOPIC_COUNT\", 4);
  10.  
  11.  
  12. // Sciezka do phpBB2
  13.  
  14. define(&#092;"PHPBB_PATH\", \"/home/neoski/public_html/fb/forum/\");
  15.  
  16.  
  17. // Link do phpBB2
  18.  
  19. define(&#092;"PHPBB_LOCATION\", \"http://www.fb-clan-forum.prv.pl/\");
  20.  
  21.  
  22. // Format czasu wyświetlany przy ostatnich tematach
  23.  
  24. define(&#092;"TIME_FORMAT\", \"d.m H:i\");
  25.  
  26. ///////////////////////////////////////////////////////////////////////////////
  27.  
  28. $phpbb_root_path = PHPBB_PATH;
  29.  
  30. if ( !defined('IN_PHPBB') ) 
  31.  
  32. {
  33.  
  34. define('IN_PHPBB', true);
  35.  
  36. include(PHPBB_PATH . 'extension.inc');
  37.  
  38. include(PHPBB_PATH . 'config.'.$phpEx);
  39.  
  40. include(PHPBB_PATH . 'includes/constants.'.$phpEx);
  41.  
  42. include(PHPBB_PATH . 'includes/db.'.$phpEx);
  43.  
  44. }
  45.  
  46. ?>
  47.  
  48. <font size=\"2\" color=\"#0088FF\"><b>Ostatnie tematy na forum</b></font>
  49.  
  50. <br><br>
  51.  
  52. <TABLE width=\"290\" borderColor=#9F9F9F bgcolor=#666666 cellSpacing=0 cellPadding=0 border=1 s
    t
  53. le=\"BORDER-COLLAPSE: collapse\">
  54.  
  55. <TR height=\"18\" align=\"center\" bgcolor=#242424>
  56.  
  57. <TD><b>DATA</b></TD>
  58. <TD><b>TEMAT</b></TD>
  59. <TD><b>FORUM</b></TD>
  60.  
  61. </TR>
  62.  
  63. <?php
  64.  
  65. $sql = &#092;"SELECT DISTINCT t.topic_title, t.topic_last_post_id, p.post_time, f.forum_n
    a
  66.  
  67. FROM &#092;" . TOPICS_TABLE . \" AS t, \" . POSTS_TABLE . \" AS p, \" . FORUMS_TABLE . \" AS f 
  68.  
  69. WHERE 
  70.  
  71. t.forum_id = f.forum_id 
  72.  
  73. AND f.auth_view = &#092;" . AUTH_ALL . \" 
  74.  
  75. AND p.topic_id = t.topic_id 
  76.  
  77. AND p.post_id = t.topic_last_post_id
  78.  
  79. ORDER BY p.post_time DESC LIMIT &#092;" . TOPIC_COUNT;
  80.  
  81. $nt_result = $db->sql_query($sql);
  82.  
  83.  
  84.  
  85. if(!$nt_result)
  86.  
  87. {
  88.  
  89. die(&#092;"Nie udało się uzyskać listy aktywnych tematów\".mysql_error());
  90.  
  91. }
  92.  
  93. else
  94.  
  95. {
  96.  
  97. $nt_data = $db->sql_fetchrowset($af_result);
  98.  
  99. }
  100.  
  101.  
  102.  
  103. if ( count($nt_data) == 0 )
  104.  
  105. {
  106.  
  107. die(&#092;"Nie znaleziono tematów\");
  108.  
  109. }
  110.  
  111. else
  112.  
  113. {
  114.  
  115. // $nt_data contains all interesting data
  116.  
  117. for ($i = 0; $i < count($nt_data); $i++)
  118.  
  119. {
  120.  
  121. $title = $nt_data[$i]['topic_title'];
  122.  
  123. $url = PHPBB_LOCATION . 'viewtopic.' . $phpEx . &#092;"?\" . POST_POST_URL . \"=\" . $nt_data[$i]['topic_last_post_id'] . \"#\" . $nt_data[$i]['topic_last_post_id'];
  124.  
  125. $forum = $nt_data[$i]['forum_name'] . ' forum';
  126.  
  127. $post_time = date(TIME_FORMAT, $nt_data[$i]['post_time']);
  128.  
  129. ?>
  130.  
  131. <TR height=\"18\" align=\"center\">
  132.  
  133. <TD><b><?php echo $post_time; ?></b></TD>
  134. <TD><p style=\"margin: 0 4px\"><a href=\"<?php echo $url; ?>\" target=\"_blank\"><?php echo $title; ?></a></p></TD>
  135. <TD><?php echo $forum; ?></TD>
  136.  
  137. </TR>
  138.  
  139. <?php
  140.  
  141. }
  142.  
  143. }
  144.  
  145. ?>
  146.  
  147. </TABLE>
  148.  
  149. <?php
  150.  
  151. // EOF
  152.  
  153. ?>


Chciałbym, aby nazwy tematów jak i działy, w których one się znajdują były wyświetlane nie całe tylko np. 10 liter nazwy i potem 3 kropki. Czy jest to możliwe? Jak tak byłbym wdzięczny o wyjaśnienie jak to zrobić.

Pozdrawiam,
neoski
aleksander
  1. <?php
  2. if( strlen( $string ) > 10 )
  3. {
  4. echo substr( $string, 0, 10 ) . '...';
  5. }
  6. ?>
Nie bawiłem sie w dostosowywanie tego do Twojego kodu, ale istote już masz :]
neoski
Chyba mogłem jednak to dać do działu php -> php Początkujący. Bo tak szczerze to nie mam pojęcia jak połączyć ten kawałek, który Ty mi dałeś z moim... ohmy.gif
aleksander
Podoba mi sie twoj avatar wiec Ci pomoge tongue.gif
No to lecimy:
  1. <?php
  2.  
  3. /////////////////////
  4. // USTAWIENIA //
  5. /////////////////////
  6.  
  7. // Ilosc wyswietlanych tematow
  8.  
  9. define(&#092;"TOPIC_COUNT\", 4);
  10.  
  11.  
  12. // Sciezka do phpBB2
  13.  
  14. define(&#092;"PHPBB_PATH\", \"/home/neoski/public_html/fb/forum/\");
  15.  
  16.  
  17. // Link do phpBB2
  18.  
  19. define(&#092;"PHPBB_LOCATION\", \"http://www.fb-clan-forum.prv.pl/\");
  20.  
  21.  
  22. // Format czasu wyświetlany przy ostatnich tematach
  23.  
  24. define(&#092;"TIME_FORMAT\", \"d.m H:i\");
  25.  
  26. ///////////////////////////////////////////////////////////////////////////////
  27.  
  28. $phpbb_root_path = PHPBB_PATH;
  29.  
  30. if ( !defined('IN_PHPBB') )
  31.  
  32. {
  33.  
  34. define('IN_PHPBB', true);
  35.  
  36. include(PHPBB_PATH . 'extension.inc');
  37.  
  38. include(PHPBB_PATH . 'config.'.$phpEx);
  39.  
  40. include(PHPBB_PATH . 'includes/constants.'.$phpEx);
  41.  
  42. include(PHPBB_PATH . 'includes/db.'.$phpEx);
  43.  
  44. }
  45.  
  46. ?>
  47.  
  48. <font size=\"2\" color=\"#0088FF\"><b>Ostatnie tematy na forum</b></font>
  49.  
  50. <br><br>
  51.  
  52. <TABLE width=\"290\" borderColor=#9F9F9F bgcolor=#666666 cellSpacing=0 cellPadding=0 border=1 s
    t
  53. le=\"BORDER-COLLAPSE: collapse\">
  54.  
  55. <TR height=\"18\" align=\"center\" bgcolor=#242424>
  56.  
  57. <TD><b>DATA</b></TD>
  58. <TD><b>TEMAT</b></TD>
  59. <TD><b>FORUM</b></TD>
  60.  
  61. </TR>
  62.  
  63. <?php
  64.  
  65. $sql = &#092;"SELECT DISTINCT t.topic_title, t.topic_last_post_id, p.post_time, f.forum_n
    a
  66. e
  67.  
  68. FROM &#092;" . TOPICS_TABLE . \" AS t, \" . POSTS_TABLE . \" AS p, \" . FORUMS_TABLE . \" AS f
  69.  
  70. WHERE
  71.  
  72. t.forum_id = f.forum_id
  73.  
  74. AND f.auth_view = &#092;" . AUTH_ALL . \"
  75.  
  76. AND p.topic_id = t.topic_id
  77.  
  78. AND p.post_id = t.topic_last_post_id
  79.  
  80. ORDER BY p.post_time DESC LIMIT &#092;" . TOPIC_COUNT;
  81.  
  82. $nt_result = $db->sql_query($sql);
  83.  
  84.  
  85.  
  86. if(!$nt_result)
  87.  
  88. {
  89.  
  90. die(&#092;"Nie udało się uzyskać listy aktywnych tematów\".mysql_error());
  91.  
  92. }
  93.  
  94. else
  95.  
  96. {
  97.  
  98. $nt_data = $db->sql_fetchrowset($af_result);
  99.  
  100. }
  101.  
  102.  
  103.  
  104. if ( count($nt_data) == 0 )
  105.  
  106. {
  107.  
  108. die(&#092;"Nie znaleziono tematów\");
  109.  
  110. }
  111.  
  112. else
  113.  
  114. {
  115.  
  116. // $nt_data contains all interesting data
  117.  
  118. for ($i = 0; $i < count($nt_data); $i++)
  119.  
  120. {
  121.  
  122. $title = $nt_data[$i]['topic_title'];
  123.  
  124. $url = PHPBB_LOCATION . 'viewtopic.' . $phpEx . &#092;"?\" . POST_POST_URL . \"=\" . $nt_data[$i]['topic_last_post_id'] . \"#\" . $nt_data[$i]['topic_last_post_id'];
  125.  
  126. $forum = $nt_data[$i]['forum_name'] . ' forum';
  127.  
  128. $post_time = date(TIME_FORMAT, $nt_data[$i]['post_time']);
  129.  
  130. ?>
  131.  
  132. <TR height=\"18\" align=\"center\">
  133.  
  134. <TD><b><?php echo $post_time; ?></b></TD>
  135. <TD><p style=\"margin: 0 4px\"><a href=\"<?php echo $url; ?>\" target=\"_blank\"><?php
  136. if( strlen( $title ) > 10 )
  137. {
  138. echo substr( $title, 0, 10 ) . '...';
  139. }
  140.  ?></a></p></TD>
  141. <TD><?php
  142. if( strlen( $forum ) > 10 )
  143. {
  144. echo substr( $forum, 0, 10 ) . '...';
  145. }
  146.  ?></TD>
  147.  
  148. </TR>
  149.  
  150. <?php
  151.  
  152. }
  153.  
  154. }
  155.  
  156. ?>
  157.  
  158. </TABLE>
  159.  
  160. <?php
  161.  
  162. // EOF
  163.  
  164. ?>
Ufff powinno byc gites smile.gif
neoski
Dziękuję prześlicznie guitar.gif!
To jest wersja lo-fi głównej zawartości. Aby zobaczyć pełną wersję z większą zawartością, obrazkami i formatowaniem proszę kliknij tutaj.
Invision Power Board © 2001-2025 Invision Power Services, Inc.