как внутри файла передать переменную из одного блока в другой

erpase

Новичок
Здравствуйте.
Я начинающий так что не судите строго.
Подскажите как решить такую задачку: файл состоит из двух блоков - 1 блок выводит список заметок, 2 блок выводит текст выбранной заметки. Посетитель страницы выбирает нужную ему заметку и нажимает ссылку. Переменная ссылки должна направиться во второй блок где формируется запрос к базе данных на вывод текста заметки.
Нужно чтобы посетитель находясь на странице мог одновременно видеть и выбирать заметку и на этой же странице ее читать.
Подскажите где можно получить информацию или скрипт по данному вопросу.
 

Redjik

Джедай-мастер
прочитать книгу по php

вообще искать про GET, POST запросы
после того как все будет работать - усиленно читать про sql иньекции
 

erpase

Новичок
Спасибо всем кто мне ответил.
С методом передачи GET , POST я знаком.
Для наглядности прилагаю код страницы
у меня не получается из блока min_content
(ссылочная строка - <p><a href='view_post.php?id=%s'><img class='button' src='%s'></a></p>)
передать значение переменной в бок content расположенный ниже по коду страницы,
где формируется запрос на вывод текста заметки из БД.
Если я прописываю переменную сам, то все выводится как надо, если пытаюсь
сделать вывод через ссылку - не работает.

<?php
include("blocks/bd.php");
if(isset ($_GET['cat'])) {$cat = $_GET['cat'];}

?>

<!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=windows-1251">
<title>Главная</title>
<link href="css/style.css" rel="stylesheet" type="text/css">
<script src="js/jquery-1.5.min.js" type="text/javascript"></script>
<script src="js/equalHeight.js" type="text/javascript"></script>
</head>

<body>
<!--блок каркаса сайта-->
<div id="framework">
<!--блок заголовка-->
<?php include("blocks/header.php"); ?>
<!--блок навигации-->
<?php include("blocks/novig.php"); ?>
<!--блок блок краткого контента-->

<div id="min_content">

<h2>СПИСОК ЗАМЕТОК</h2>
<?php
$result = mysql_query ("SELECT * FROM data WHERE cat='$cat'",$db);
if (!$result)
{echo "<p>Запрос на выборку из БД не прошел. Напишите об этом администратору
[email protected].<br><strong>Код ошибки: </strong></p>"; exit (mysql_error ());}
if (mysql_num_rows($result) > 0) {$myrow = mysql_fetch_array($result);
do {printf ("<div id='administracia_post'>
<p class='post_title'>Номер заметки: <span>%s</span></p>
<p class='post_title2'>Заметка про:<br> <span>%s</span></p>
<p class='post_title'>Автор заметки: <span>%s</span></p>
<p class='post_title'>Дата публикации: <span>%s</span></p>
<p class='post_title'>Количество просмотров: <span>%s</span></p>
<p><a href='view_post.php?id=%s'><img class='button' src='%s'></a></p>
</div>", $myrow['id'], $myrow['title'], $myrow['author'], $myrow['date'], $myrow['view'], $myrow['id'], $myrow['button']); }
while ($myrow = mysql_fetch_array($result)); } }
else {echo "<p>Информация по запросу не может быть извлечена в БД нет записей.</p>"; exit ();}
?> </div>

<!--блок контента-->
<div id="content">

<?php
$result2 = mysql_query ("SELECT * FROM data WHERE id='$id'",$db);
if (!$result2)
{echo "<p>Запрос на выборку из БД не прошел. Напишите об этом администратору
[email protected].<br><strong>Код ошибки: </strong></p>"; exit (mysql_error ());}
if (mysql_num_rows($result2) > 0) {$myrow2 = mysql_fetch_array($result2);
do {printf ("<div id='administracia_post2'>
<p class='post_title3'>%s</p>
<p class='post_title'>Номер заметки: <span>%s</span></p>
<p class='post_title'>Автор заметки: <span>%s</span></p>
<p class='post_title'>Дата публикации: <span>%s</span></p>
<p class='post_text'>%s</p></p>
</div>",$myrow2['title'], $myrow2['id'], $myrow2['author'], $myrow2['date'], $myrow2['text']);}
while ($myrow2 = mysql_fetch_array($result2)); }
else {echo "<p>Информация по запросу не может быть извлечена в БД нет записей.</p>"; exit ();}

</div>
<!--блок выравнивания полей-->
<?php include("blocks/clear.php"); ?>
</div>
</body>
</html>
 

Фанат

oncle terrible
Команда форума
erpase
не делай все на одной странице.
сделай сначала на нескольких.
после того как научишься, можно будет слить в одну
 

erpase

Новичок
Фанат у меня есть вариант и на нескольких страницах, но слить в одну не получилось. Пробовал через include - не сработало. Подскажи как слить страницы.
 

Фанат

oncle terrible
Команда форума
если понимать, что по сути одна страница всё равно будет работать, как несколько, то сделать несложно.
в нужных местах поставить IF-ы, чтобы работала та или иная часть кода в зависимости от запроса.
а можно просто оставить в разных, пока опыта немного не наберешься.
 
Сверху