{% else-1 %}
Обновить
* Тема закрыта!
11. [автор] (6 апр 2016, 13:07) [0/0] [0] [спам] [под]

Husan, //Настройки подключения к БД
$db_host = 'localhost';
$db_name = '111';
$db_user = '111';
$db_pass = '111';

$page = intval($_GET[page]); // значение текущей страницы из GET
$num = 2; // Переменная хранит число сообщений выводимых на станице
if ($page==0) $page=1;
// Определяем общее число сообщений в базе данных
// Берем из БД кол-во записей

mysql_connect($db_host,$db_user,$db_pass) OR DIE("Error connect to SQL<br/> "*; // коннект к БД, указать хост, лог и пасс
Удалён src="/content/reactions/bystrie/podmig-original.png" alt="*" /> or die("Error connect to DB<br/>"*;
mysql_query ("set character_set_client='utf8'"*; /
mysql_query ("set character_set_results='utf8'"*;
mysql_query ("set collation_connection='utf8_general_ci'"*;
$query = "SELECT count(`id`) FROM `comments`";
$mysql_result = mysql_query($query);

12. (6 апр 2016, 13:08) [0/0] [0] [спам] [под]
Maksamka,

) ENGINE=MyISAM DEFAULT CHARSET=utf8;

пробуй в запросе так кстати

CREATE TABLE IF NOT EXISTS `comments` (
`id` int(11) NOT NULL AUTO_INCREMENT,
`page_id` varchar(11) NOT NULL,
`name` varchar(60) NOT NULL,
`text_comment` varchar(500) NOT NULL,
`date_add` varchar(18) NOT NULL,
PRIMARY KEY (`id`)
) ENGINE=MyISAM DEFAULT CHARSET=utf8;


Изм. 1 раз. / Посл. изм. (6 апр 2016, 13:08)
13. [автор] (6 апр 2016, 13:09) [0/0] [0] [спам] [под]
Wapmaster7851,

скорей всего косяк то здесь
/* Принимаем данные из формы */
$name = $_POST["name"];
$page_id = $_POST["page_id"];
$text_comment = $_POST["text_comment"];
$name = htmlspecialchars($name);// Преобразуем спецсимволы в HTML-сущности
$text_comment = htmlspecialchars($text_comment);// Преобразуем спецсимволы в HTML-сущности
$mysqli = new mysqli("localhost", "111", "111", "111"*;// Подключается к базе данных
$mysqli->query("INSERT INTO `comments` (`name`, `page_id`, `text_comment`) VALUES ('$name', '$page_id', '$text_comment')"*;// Добавляем комментарий в таблицу
header("Location: ".$_SERVER["HTTP_REFERER"]);// Делаем реридект обратно
$page_id = 150;// Уникальный идентификатор страницы (статьи или поста)
$mysqli = new mysqli("localhost", "111", "111", "111"*;// Подключается к базе данных
$result_set = $mysqli->query("SELECT * FROM `comments` WHERE `page_id`='$page_id'"*; //Вытаскиваем все комментарии для данной страницы
while ($row = $result_set->fetch_assoc()) {
print_r($row); //Вывод комментариев
echo "<br />";
}

14. (6 апр 2016, 13:10) [0/0] [0] [спам] [под]

Maksamka, Для Mysqli будет так:
$mysqli->set_charset('utf8');


Изм. 2 раз. / Посл. изм. (6 апр 2016, 13:13)
15. [автор] (6 апр 2016, 13:14) [0/0] [0] [спам] [под]
Wapmaster7851,

не знаю в чем проблема но в базу пишет одни кракозябы

16. (6 апр 2016, 13:15) [0/0] [0] [спам] [под]
Maksamka,

У тебя в самом подключающем коде быдло идет.

17. [автор] (6 апр 2016, 13:23) [0/0] [0] [спам] [под]
Wapmaster7851,

там проблему решил. $result_set = $mysqli->query("SELECT * FROM `comments` WHERE `page_id`='$page_id' ` ORDER BY `id` DESC LIMIT $start,$num"*; здесь ошибка в чем?

18.
Vol"jin * 5.23
(6 апр 2016, 13:23) [0/0] [0] [спам] [под]
Maksamka,

кодировка должна cp1251
Добавлено 06.04.16 в 13:24:19:
у тебя крякозябры когда ты выводишь из базы?

19. [автор] (6 апр 2016, 13:50) [0/0] [0] [спам] [под]
Vol"jin,

я уже решил там вопрос

20. [автор] (6 апр 2016, 14:12) [0/0] [0] [спам] [под]

Husan, еще такой вопрос у меня навигация считает общее количество сбс и выводит а мне нужно для каждого ид отдельно . Я в бд подаю page_id это иди файла к нему идут коменты. С сообщениями я сделал вывод для каждого файла а вот страницы нет. Там два запроса поправить глянешь?
<?
$page_id = 10;// Уникальный идентификатор страницы (статьи или поста)
$mysqli = new mysqli("localhost", "111", "111", "111"*;// Подключается к базе данных
$result_set = $mysqli->query("SELECT * FROM `comments` WHERE `page_id`='$page_id'"*; //Вытаскиваем все комментарии для данной страницы
while ($row = $result_set->fetch_assoc()) {
}
$db_host = 'localhost';
$db_name = '111';
$db_user = '111';
$db_pass = '111';

$page = intval($_GET[page]); // значение текущей страницы из GET
$num = 1; // Переменная хранит число сообщений выводимых на станице
if ($page==0) $page=1;
// Определяем общее число сообщений в базе данных
// Берем из БД кол-во записей

mysql_connect($db_host,$db_user,$db_pass) OR DIE("Error connect to SQL<br/> "*; // коннект к БД, указать хост, лог и пасс
Удалён src="/content/reactions/bystrie/podmig-original.png" alt="*" /> or die("Error connect to DB<br/>"*;
mysql_query ("set character_set_client='utf8'"*; // установка кодировки ( возможно у вас cp1251)
mysql_query ("set character_set_results='utf8'"*;
mysql_query ("set collation_connection='utf8_general_ci'"*;
$query = "SELECT count(`id`) FROM `comments`";

$mysql_result = mysql_query($query);

if(mysql_num_rows($mysql_result)>0){
$count=mysql_fetch_row($mysql_result);
}
$posts = $count[0]; // получем значение кол-во всех записей
// Находим общее число страниц
$total = intval(($posts - 1) / $num) + 1;
// Определяем начало сообщений для текущей страницы
$page = intval($page);
// Если значение $page меньше единицы или отрицательно
// переходим на первую страницу
// А если слишком большое, то переходим на последнюю
if(empty($page) or $page < 0) $page = 1;
if($page > $total) $page = $total;
// Вычисляем начиная к какого номера
// следует выводить сообщения
$start = $page * $num - $num;
$result_set = $mysqli->query("SELECT * FROM `comments` WHERE `page_id`='$page_id' ORDER BY `id` DESC LIMIT $start,$num"*;

while ($row = $result_set->fetch_assoc())
{

echo ' <b>Гость:</b> '.$row['name'].' <br /><b>Сообщение:</b> '.$row['text_comment'].'<br />';
echo'<br>';
}
// Проверяем нужны ли стрелки назад
if ($page != 1) $pervpage = '<a href="/index.php?page=-1"><<</a>
<a href="/index.php?page='. ($page - 1).'"><</a> ';
// Проверяем нужны ли стрелки вперед
if ($page != $total) $nextpage = ' <a href="/index.php?page='. ($page + 1).'">></a>
<a href="/index.php?page='.$total.'">>></a> ';
// Находим две ближайшие станицы с обоих краев, если они есть
if($page - 2 > 0) $page2left = ' <a href="/index.php?page='. ($page - 2) .'">'. ($page - 2) .'</a> ';
if($page - 1 > 0) $page1left = '<a href="/index.php?page='. ($page - 1) .'">'. ($page - 1) .'</a> ';
if($page + 2 <= $total) $page2right = ' <a href="/index.php?page='. ($page + 2).'">'. ($page + 2) .'</a>';
if($page + 1 <= $total) $page1right = ' <a href="/index.php?page='. ($page + 1).'">'. ($page + 1) .'</a>';


$query = "SELECT * FROM `comments` LIMIT $start, $num";
$mysql_result = mysql_query($query);
if ($total>1) echo '<p><div align="center" class="navigation">'
.$pervpage.$page2left.$page1left.'<span>'.$page.'</span>'.$page1right.$page2right
.$nextpage.'</div></p>';


?>
Я так понимаю
$query = "SELECT * FROM `comments` LIMIT $start, $num";
$mysql_result = mysql_query($query);
и
$query = "SELECT count(`id`) FROM `comments`";

$mysql_result = mysql_query($query);
Нужно что бы навигация считала именно с page_id это айди файла

Подписаны: 0
Скачать тему | Файлы темы | Фильтр сообщений