[ Поиск ] - [ Пользователи ] - [ Календарь ]
Полная Версия: Вывод комментариев
Onehp
view_news.php (Файл в котором выводятся сама новость и комментарии к ней)

<?php 
session_start();
include ("bloki/bd.php");
if (isset($_GET['id'])) {$id = $_GET['id'];}
$result555 = mysql_query ("SELECT * FROM `news` WHERE id='$id'");
if (!$result555)
{
echo "<p>Запросна выборку данных из базы не прошел. Напишите об этом администратору onahapapokemon@mail.ru. <br> <strong>Код ошибки:</strong></p>";
exit (mysql_error());
}
if (mysql_num_rows ($result555) > 0)
{
$myrow555 = mysql_fetch_array ($result555);
$new_view = $myrow555['view'] + 1;
$update = mysql_query ("UPDATE news SET view='$new_view' WHERE id='$id'");
}
else
{
echo "<p>Информация по запросу не может быть извлечена в таблице нет записей</p>";
exit ();
}
?>
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<
html>
<
head>
<
meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<
title><?php echo $myrow555['title']; ?></title>
<
link href="style.css" rel="stylesheet" type="text/css">
<
meta name="description" content="<?php echo $myrow555['meta_d']; ?>">
<
meta name="keywords" content="<?php echo $myrow555['meta_k']; ?>">
</
head>
<
body>
<
table width="780" border="0" align="center" cellpadding="0" cellspacing="0" class="main_border">
<?php include ("bloki/header.php"); ?>
<tr>
<
td><table width="900" border="0" cellspacing="0" cellpadding="0">
<
tr>
<?php include ("bloki/left.php"); ?>
<td valign="top">
<?php include ("bloki/search_user.php"); ?>

<p class="view_title"><? echo $myrow555['title'];?> </p>
<
p><?php echo $myrow555['text'];?> </p>
<
p class="view_date">Автор: <? echo $myrow555['author'];?>
<?
echo $myrow555['date'];?> ·
Комментариев: <? echo $myrow555['comments'];?> ·
Просмотров: <? echo $myrow555['view'];?> </p>

<?php

if (isset($_GET['id'])) {$id =$_GET['id']; } //id "хозяина" странички
else
{ exit("Вы зашил на страницу без параметра!");} //если не указали id, то выдаем ошибку
if (!preg_match("|^[\d]+$|", $id)) {
exit("<p>Неверный формат запроса! Проверьте URL</p>");//если id не число, то выдаем ошибку
}
if (!empty($_SESSION['login']) and !empty($_SESSION['password']))
{
//если существует логин и пароль в сессиях, то проверяем, действительны ли они
$login = $_SESSION['login'];
$password = $_SESSION['password'];
$result2 = mysql_query("SELECT id FROM users WHERE login='$login' AND password='$password' AND activation='1'");
$myrow2 = mysql_fetch_array($result2);
if (empty($myrow2['id']))
{
//Если не действительны (может мы удалили этого пользователя из базы за плохое поведение)
exit("<p>Только авторизованные пользователи могут оставлять комментарии. Авторизуйтесь, пожалуйста.</p>");
}
}

else {
//Проверяем, зарегистрирован ли вошедший
exit("<p>Только авторизованные пользователи могут оставлять комментарии. Авторизуйтесь, пожалуйста.</p>"); }
$result = mysql_query("SELECT * FROM users WHERE id='$id'");
$myrow = mysql_fetch_array($result);//Извлекаем все данные пользователя с данным id


$sql123 = ("SELECT id FROM `users` WHERE login='$login'");
$result123 = mysql_query($sql123) or die(mysql_error() ."<br/>". $sql123);

if (!$result123)
{
echo "<p> . adminmail@mail.ru <br> <strong> :</strong></p>";
exit(mysql_error());
}

echo "<p class='view_comm'>Комментарии:</p>";
$result34 = mysql_query ("SELECT * FROM `comments` WHERE post='$id' ORDER BY id DESC");
if (mysql_num_rows($result34) > 0)
{
$myrow34 = mysql_fetch_array($result34);

$table = "<table border=0 align='center' class='view_text_title'>\n";

while ($myrow34 = mysql_fetch_assoc ($result34))

{

$result123 = mysql_query("SELECT id,avatar FROM users WHERE login='".$myrow34['author']."'");
$myrow123 = mysql_fetch_array($result123);

echo '<table width="95%" align="center" class="post_div">
<tr class="">
<td><p class="view_name"><a href="page.php?id='
.$myrow123['id'].'" class="view_name">'.'<img class="mini" align="left" src='.$myrow123['avatar'].'>'.$myrow34['author'].'</a></p>'.'<p class="view_adds">'."Дата: ".$myrow34["date"].'</p><p class="view_adds">'.$myrow34['text'].'</p>'.'</td>
</tr>
</table><br>'
;
}
}

?>

<p class='view_comm'>Добавить комментарий:</p>
<
form action="comment.php" method="post" name="com">
<
p><label>Введите текст<br><textarea name="text" cols="40" rows="5"></textarea></label></p>
<
input name="id" type="hidden" value="<?php echo $id; ?>">
<
p><input name="submit_com" type="submit" value="Добавить"></p>
</
form>
</
tr>
</
table>
</
td>
</
tr>
</
table></td>
</
tr>
<? include ("bloki/footer.php"); ?>
</table>
</
body>
</
html>


comment.php (обработчик)

<?php
session_start();
include ('bd.php');

if (isset ($_POST['text'])) {$text = $_POST['text'];}
if (isset ($_POST['submit_com'])) {$submit_com = $_POST['submit_com'];}
if (isset ($_POST['id'])) {$id = $_POST['id'];}

if (isset($submit_com))
{
if (isset($text))
{
trim($text);
}
else
{
$text = "";
}
if (empty($text))
{
exit ("<p>Введите текст комментария!</p>"."<html><head><meta http-equiv='Refresh' content='2; URL=view_news.php?id=$id'></head><body></body></html>");
}

if (!empty($_SESSION['login']) and !empty($_SESSION['password']))
{
//если существует логин и пароль в сессиях, то проверяем, действительны ли они
$login = $_SESSION['login'];
$password = $_SESSION['password'];
$result21 = mysql_query("SELECT id FROM users WHERE login='$login' AND password='$password'");
$myrow21 = mysql_fetch_array($result21);
if (empty($myrow21['id']))
{
//если логин или пароль не действителен
exit("<p>Вход на эту страницу разрешен только зарегистрированным пользователям!</p>");
}
}

else
{
//Проверяем, зарегистрирован ли вошедший
exit("<p>Вход на эту страницу разрешен только зарегистрированным пользователям!</p>");
}
if (isset($_POST['id']))
{
$id = $_POST['id'];
}
//получаем идентификатор страницы получателя
if (isset($_POST['text']))
{
$text = $_POST['text'];
}
//получаем текст сообщения
$author = $_SESSION['login'];
//логин автора
$date = date("Y-m-d");
//дата добавления
if (empty($author) or empty($text) or empty($date))
{
//есть ли все необходимые данные? Если нет, то останавливаем
exit ("<p>Вы ввели не всю информацию, вернитесь назад и заполните все поля</p>");
}

$text = stripslashes($text);
$text = htmlspecialchars($text);

$date = date("Y-m-d");
mysql_query ("INSERT INTO comments (author,post,text,date) VALUES('$login','$id','$text','$date')");

echo "<html><head><meta http-equiv='Refresh' content='0; URL=view_news.php?id=".$id."'></head><body></body></html>";

}


Проблема следующая, пишу комментарий, он не выводится, пишу еще один выводится тот который писал до этого, хотя в базе она комментария есть, что ни так?



Спустя 2 минуты, 42 секунды (18.08.2010 - 20:14) Lenarfate написал(а):
уф жесть smile.gif

Спустя 58 секунд (18.08.2010 - 20:15) Onehp написал(а):
rolleyes.gif

Спустя 4 минуты, 26 секунд (18.08.2010 - 20:20) Lenarfate написал(а):
мой совет, чтоб и людям читать удобно было, и , главное, тебе самому, отделяй логику от представления.
весь функционал и обращения к базе в отдельные файлы, html - в другие.

Спустя 2 минуты, 19 секунд (18.08.2010 - 20:22) Onehp написал(а):
Блин я пока Noob, мне как бэ можно biggrin.gif я пока это не совсем разобрал (на ирбисе, вот уже второй день вникаю в эту статью как логику и представления делить smile.gif), ну так что скажите насчет сей проблемы?

Спустя 14 секунд (18.08.2010 - 20:22) Basili4 написал(а):
Сам дошадаешся или подсказать

$myrow34 = mysql_fetch_array($result34);

$table = "<table border=0 align='center' class='view_text_title'>\n";

while ($myrow34 = mysql_fetch_assoc ($result34))

Спустя 1 минута, 8 секунд (18.08.2010 - 20:24) Lenarfate написал(а):
Basili4
а я утонул в этом коде smile.gif

Спустя 1 минута, 54 секунды (18.08.2010 - 20:25) Basili4 написал(а):
Lenarfate
А я сам так писал до вчерашнего дня smile.gif

Спустя 56 секунд (18.08.2010 - 20:26) Lenarfate написал(а):
а почему до вчерашнего?)

Спустя 1 минута, 1 секунда (18.08.2010 - 20:27) Onehp написал(а):
Basili4 wub.gif . Блин..Спасибо smile.gif) Просто сначало делал по попову потом переделывал как здесь учили, вот и запутался видимо laugh.gif

Спустя 45 секунд (18.08.2010 - 20:28) Basili4 написал(а):
Lenarfate
Седня дочитал урок на Ирбисе про шаблоны наконец понял что к чему. И еще одну книгу читаю тоже понимаю.

Спустя 54 секунды (18.08.2010 - 20:29) Basili4 написал(а):
Onehp
Да не зашто

Спустя 11 секунд (18.08.2010 - 20:29) Lenarfate написал(а):
ы, а я ща Зандстру читаю smile.gif

Спустя 59 секунд (18.08.2010 - 20:30) Basili4 написал(а):
Lenarfate
а это что за зверь ?? Я тоже хочу ....

Спустя 8 секунд (18.08.2010 - 20:30) Onehp написал(а):
Раз разговор пошел о книгах)) спрошу, что лучше..http://progbook.net/php/661-php5-v-podlinnike.html или http://www.books.ru/shop/books/604678 ? wink.gif

Спустя 1 минута, 47 секунд (18.08.2010 - 20:32) Lenarfate написал(а):
Onehp
лучше 2-е издание

Basili4
вот http://www.ozon.ru/context/detail/id/4574420/

Спустя 3 минуты, 18 секунд (18.08.2010 - 20:35) Basili4 написал(а):
ООООООО я тоже хочу я скачать где есть?

Спустя 3 минуты, 39 секунд (18.08.2010 - 20:39) Lenarfate написал(а):
не знаю, я купил. специально, чтоб перед сном страницами шелестеть)

Спустя 1 минута, 22 секунды (18.08.2010 - 20:40) Basili4 написал(а):
Lenarfate
Да я уже купил пару книг. Еще одну уже не потяну. ладно буду искать

Спустя 14 минут, 57 секунд (18.08.2010 - 20:55) Basili4 написал(а):
К стати о книгах

на есть прям не плохие http://habrahabr.ru/blogs/webdev/77179/
Быстрый ответ:

 Графические смайлики |  Показывать подпись
Здесь расположена полная версия этой страницы.
Invision Power Board © 2001-2025 Invision Power Services, Inc.