Технология добавления данных в базу без перезагрузки страницы мне частично знакома, например, я использую её для добавления коментариев пользователей. Но вот вторые сутки бьюсь над решением обратной задачи, а именно вывода данных из базы, но так же без перезагрузки страницы.
Вывести какое-то одно поле из таблицы и разместить в определенный блок - не составляет труда. Но как изменить данные в нескольких местах сразу? Попробую обьясниться на примере простом примере со статьями:
1. Таблица articles имеет, допустим, 5 полей: id, title, meta_d, meta_k, text
2. Страница index.php :
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<meta name="description" content="<?php echo $row['meta_d'];?>" />
<meta name="keywords" content="<?php echo $row['meta_k'];?>" />
<title><?php echo $row['title'];?></title>
<script src="js/jquery.js" type="text/javascript"></script>
<script src="js/scripts.js" type="text/javascript"></script>
</head>
<body>
<div id="nav">
<a href="javascript:void(0);" onclick="newArticle(1); return false">Киев</a>
<a href="javascript:void(0);" onclick="newArticle(2); return false">Москва</a>
</div>
<div id="content">
<?php echo $row['text'];?>
</div>
</body>
</html>
3. Файл scripts.js
function newArticle(id){
$.post(
"proc.php",
{article: id},
function(data){$("#content").text(data)}
)
}
4. Обработчик proc.php
<?php include_once("blocks/bd.php");
if(isset($_POST['article'])){
$id = $_POST['article'];
$res = mysql_query("SELECT * FROM articles WHERE id='$id'",$db);
$row = mysql_fetch_array($res);
}
exit ($row['text']);?>
Прошу меня простить, пример создавал на скорую руку и возможны ошибки. В обычном (перегружаемом) способе, все переменные на странице играют свою соответствующую роль, однако при использовании AJAX они уже как бы не нужны. И вданном примере, если я чего-то не напутал, по нажатии на ссылку, на страницу будет выводиться соответствующее значение поля "text" в блок div id="content". До этого момента всё было нормально. Но вот как мне вытащить остальные значимые поля и расставить их значения в нужные места? То есть, содержимое поля meta_d в метаданные описания страницы, meta_k - в ключевые слова вместо тех переменных, которые уже не играют своей роли?
Очень надеюсь на Вашу поддержку.
Примечание:
Epsiloncool, спасибо Вам огромное! Всё очень понятно и доступно. Проблема с кодировкой, слава Богу, отпадает, т.к. сайт будет в формате utf-8. Конечно же, пока я достаточно хорошо не вникну в java и его производные, это будет головной болью. Но уж очень не хотелось отказывать клиенту, пусть и в бредовой, но его неудержимой идее. )) Ещё раз, спасибо!
RPI.su - самая большая русскоязычная база вопросов и ответов. Наш проект был реализован как продолжение популярного сервиса otvety.google.ru, который был закрыт и удален 30 апреля 2015 года. Мы решили воскресить полезный сервис Ответы Гугл, чтобы любой человек смог публично узнать ответ на свой вопрос у интернет сообщества.
Все вопросы, добавленные на сайт ответов Google, мы скопировали и сохранили здесь. Имена старых пользователей также отображены в том виде, в котором они существовали ранее. Только нужно заново пройти регистрацию, чтобы иметь возможность задавать вопросы, или отвечать другим.
Чтобы связаться с нами по любому вопросу О САЙТЕ (реклама, сотрудничество, отзыв о сервисе), пишите на почту [email protected]. Только все общие вопросы размещайте на сайте, на них ответ по почте не предоставляется.