php + mysql

Echo

Пользователь
Blacklisted
4 Сен 2013
45
17
8
30
Нижний Новгород
Всем привет. Решил начать учиться php-программированию.
Для начала хотел научиться выводить информацию из базы и на этом же остановился.
Моя задача на данный момент: реализовать вывод сообщений с форума "xenForo" на главную страницу сайта.
Я сделал вывод информации из таблицы "thread" по node (ID раздела новостей).
Вывел я оттуда: Название новости, автора и дату, а вот с самим постом проблема.
Посты находятся в таблице "post" и я бы вывел оттуда информацию, но её же нужно выводить именно из нужной темы, а не со всех тем форума. (node в таблице "post" нет)
В таблице "post" есть такие данные, как thread_id, post_id.
Подскажите, как будет выглядеть запрос выбора message из таблицы post по нужным мне thread_id.
Или подскажите какой-либо другой способ добычи данной информации.

Заранее благодарен.
 

Echo

Пользователь
Blacklisted
4 Сен 2013
45
17
8
30
Нижний Новгород

Извиняюсь, неверно выразился.
Моя задача: реализовать вывод новостей из тем форума.2013-09-07_114723.jpg
Тут ярко видно, что я вывел название темы(Новость, так и называется она на форуме), юзера(Echo*) и дату.
Моя задача - вытащить текст данной новости.
 

Echo

Пользователь
Blacklisted
4 Сен 2013
45
17
8
30
Нижний Новгород
В скрипте который я прикрепил всё есть. Выводи что хочешь из любых разделов форума.

Перечитейте, пожалуйста, первый пост.
Мне нужно выводить не все последние, а именно из раздела новостей, node_id - 8. В таблице "post" нет "node_id", поэтому будут выводиться все посты.
 

Электрон

Большой Электрон
Пользователь
30 Мар 2012
504
230
79
28
Перечитейте, пожалуйста, первый пост.
Мне нужно выводить не все последние, а именно из раздела новостей, node_id - 8. В таблице "post" нет "node_id", поэтому будут выводиться все посты.

Может это вам надо прочитать про sql запросы и перестать обвинять других людей, которые вам пытаются помочь? Вы сами сказали - вы начали учить, но требуете все готовое на блюдечке с голубой каемочкой. Так вы ничему не научитесь.
 
  • Like
Реакции: Merfy и ClouD

Echo

Пользователь
Blacklisted
4 Сен 2013
45
17
8
30
Нижний Новгород
Было бы то что предложил Джузи :D для ipb... на земле стало бы на еще один человек счастливее :DD)

PHP:
<? $dbip = '127.0.0.1';    //IP базы данных
            $dblogin = 'ggh';          //Имя пользователя базы данных
            $dbpass = 'gght';          //Пароль пользователя базы данных
            $fdb = 'forum_ipb';                //База данных форума
            $site_f_url = '127.0.0.1/forum';  //Адрес форума (127.0.0.1/forum или forum.127.0.0.1) !без http://!
            $n ='10';                  // Колличество выводимых тем
 
$connect = mysql_connect("$dbip1","$dblogin1","$dbpass1") or die ("нет соединения с базой данных");
mysql_select_db("$fdb") or die ("нет соединения с базой forums");
$forums = "SELECT tid, title FROM topics order by `start_date` desc LIMIT $n";
mysql_query('SET NAMES CP1251');
$titles = mysql_query ($forums) or die ("Нет такой таблицы");
?><center><h2>Последние темы</h2></center>
<table border=0 width=100%><tr>   
<?   
$forum_table = mysql_num_rows($titles);
for($i=0;$i<$forum_table;$i++) {
          $row = mysql_fetch_array($titles);   
          $tid = $row['tid'];     
$title = $row['title'];   
echo "<tr align=left><td height='18'>
<a href=\"http://$site_f_url/index.php?/topic/$tid-$tid/\"\><font style=\"color: #000; text-shadow: #4399FF 2px 2px 5px, #4399FF -2px -2px 5px, #4399FF 2px -2px 5px, #4399FF -2px 2px 5px;\">$title</font></a></td></tr>";
        }
        @mysql_close($connect);
        ?>
        </table>

Может это вам надо прочитать про sql запросы и перестать обвинять других людей, которые вам пытаются помочь? Вы сами сказали - вы начали учить, но требуете все готовое на блюдечке с голубой каемочкой. Так вы ничему не научитесь.
Извиняюсь. Просто, не могу придумать, как это осуществить и сообразить, какого вида запрос нужен.
 

Juzilkree

Злостный отаку
Команда форума
Администратор
29 Ноя 2012
1.983
744
158
38
www.dyndev.ru
для ipb вроде
PHP:
<?php
$c = "5";
$Forumpost = array ();
$MySQLi = new mysqli($settings[0]['ipforum'], $settings[0]['forumlogin'], $settings[0]['forumpass'], $settings[0]['forumbname'], $settings[0]['portforum']);
        if($MySQLi->connect_error)
        {
            die('Connect Error (' . $MySQLi->connect_errno . ') '. $MySQLi->connect_error);exit;
        }
$MySQLi->set_charset('utf8');
$query = $MySQLi->prepare('SELECT `tid`, `title`, `posts`, `starter_name`, `last_poster_name`, `title_seo`
                                  FROM `IPB_topics`
                                  ORDER BY `start_date` DESC LIMIT 0 , ? ');
        $query->bind_param('i', $c);
        $query->execute();
        $Forumpost = $query->get_result();
        $Forumpost = $Forumpost->fetch_all(MYSQL_ASSOC);
        $query->free_result();
        $query->close();
 
foreach ($Forumpost as $data) {
echo"<div class='fcp'><a href='http://ВАШ САЙТ/forum/index.php?/topic/".$data['tid']."-".$data['title_seo']."'><div class='fcpstart'>".$data['title']." |  ".$data['starter_name']." </div> <div class='pospost'><h1>Ответ #".$data['posts']." | От ".$data['last_poster_name']."</h1></div></a></div>";
}
$MySQLi->close();
?>
 
  • Like
Реакции: Батоша

Echo

Пользователь
Blacklisted
4 Сен 2013
45
17
8
30
Нижний Новгород
Я понял, что мне нужен вывод текста новости по thread_id(одинаковое поле в обеих таблицах).
Не понимаю слегка, какой синтаксис у запроса должен быть.
У меня есть:
PHP:
$sql_forum = "SELECT `title`, `thread_id`, `username`, `last_post_user_id`, `last_post_username`, `view_count`, `user_id`, `reply_count`, FROM_UNIXTIME(`post_date`) AS `date` FROM `xf_thread` WHERE `node_id` IN (8) ORDER BY `last_post_date` DESC LIMIT {$limit}";
Мне нужно, чтобы выводилось поле "message" из таблицы "xf_post" по полю "thread_id" из нужных мне тем(в данном случае - из раздела "8").
Помогите, пожалуйста, составить правильный запрос. Почитал литературу на эту тему, результат не получил, вечно ошибка синтаксиса MySQL.
 

Пользователи онлайн

Сейчас на форуме нет ни одного пользователя.

Последние ресурсы

Статистика форума

Темы
3.852
Сообщения
21.322
Пользователи
7.880
Новый пользователь
7808