Javascript.RU

Создать новую тему Ответ
 
Опции темы Искать в теме
  #1 (permalink)  
Старый 11.07.2014, 18:05
Аспирант
Отправить личное сообщение для Rorbi Посмотреть профиль Найти все сообщения от Rorbi
 
Регистрация: 28.02.2014
Сообщений: 36

Меню И подгрузка контента из mysql
Здравствуйте. Подскажите пожалуйста.
Есть автоматически генерируемое меню из бд (то есть на сайте форма добавления пункта меню, и сразу вывод его в блок меню):
<?
if (isset($_POST["name"])) {
    $sql = $mysqli->query("INSERT INTO `servise` (`name`, `description`,`link`) 
                        VALUES ('".$_POST['name']."','".$_POST['description']."','".$_POST['link']."')");
   if ($sql) {
       echo "<p>Сервис добавлен</p>";
    } else {
        echo "<p>Произошла ошибка</p>";
    }
}

?>
Это форма добавления его в базу:

<?
$sql = $mysqli->query('SELECT `id` , `name` FROM `servise`');
while ($name = $id = $sql->fetch_assoc()) {
	(isset($_GET['name, id']) && $_GET['name'] == $name['name'] && $_GET['id'] == $id['id']);
	print '<a class="left_a" href="/info/?id='.$id['id'].'">'.$name['name'].'</a>';
};
?>


И вывод добавленных пунктов в виде ссылок, где "name" задает имя ссылки, и id которое задает href ссылки. То есть на выходе получаем:

<a class="left_a" href="/info/?id=7">Сервис 2</a>
<a class="left_a" href="/info/?id=8">Сервис 3</a>
<a class="left_a" href="/info/?id=9">Сервис 4</a>
<a class="left_a" href="/info/?id=10">Сервис 5</a>


И вот сам вопрос: При клике на ссылку у меня в адресной строке пишется http://www.site.ru/info/?id=7
Как надо в общем, но как мне сделать что бы при клике на эту ссылку у меня подгружался контент с БД, то есть по значению id в адресной строке он показывал мне нужный контент из БД, соответствующий id из таблицы "servise"?
Ответить с цитированием
  #2 (permalink)  
Старый 13.07.2014, 21:12
Профессор
Отправить личное сообщение для skrudjmakdak Посмотреть профиль Найти все сообщения от skrudjmakdak
 
Регистрация: 27.04.2012
Сообщений: 1,410

про аякс технологии известно вам?
Ответить с цитированием
  #3 (permalink)  
Старый 14.07.2014, 08:47
Аспирант
Отправить личное сообщение для Rorbi Посмотреть профиль Найти все сообщения от Rorbi
 
Регистрация: 28.02.2014
Сообщений: 36

Сообщение от skrudjmakdak Посмотреть сообщение
про аякс технологии известно вам?
Да в общих чертах, я не могу понять как повесить именно событие подгрузи определенного контенте из БД при клике на ссылку, проще говоря как проверить url и по id в нем вывести соответствующий контент из таблицы
Ответить с цитированием
  #4 (permalink)  
Старый 14.07.2014, 09:18
Профессор
Отправить личное сообщение для skrudjmakdak Посмотреть профиль Найти все сообщения от skrudjmakdak
 
Регистрация: 27.04.2012
Сообщений: 1,410

а про библиотеку jquery вы слышали, просто с ней будет вам удобней писать. я вам накидаю небольшой алгоритм, а там разбирайтесь, что не понятно спрашивайте, хотя в интернете много подобной информации есть, т.к. это основы основ веба. описание будет в коде:

<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd">
<html>
	<head>
		<title>example</title>
		<script type="text/javascript" src="http://code.jquery.com/jquery-1.11.1.min.js"></script>
	</head>
	<body>
		<a href="/info/?id=1">Ссылка 1</a><br>
		<a href="/info/?id=2">Ссылка 2</a><br>
		<a href="/info/?id=3">Ссылка 3</a><br>
		<a href="/info/?id=4">Ссылка 4</a><br>
		
	<script type="text/javascript">
		//для начала нам надо найти все тэги a, и навешиваем событие при клике по данному тэгу
		$('a').click(function ()
			{
			//выведим в консоль "меня кликнули", для того чтобы проверить, что клик отрабатывает
			console.log('меня кликнули');
			
			//найдем значение ссылки и тут же найдем id 
			var href = $(this).attr('href'),
				id = href.split('=')[1];
			
			//делаем ajax запрос
			$.ajax(
				{
				type: "get",//метод get
				url: "send.php", //url по которой делаем запрос
				data://список параметров. у меня только id
					{
					id: id
					}
				}).done(function (msg)
				{
				//при успехе выведем то, что прислал сервер
				console.log(msg);
				}).fail(function ()
				{
				//при ошибке, выведем в консоль ошибку
				console.log("ошибка");
				});
			
			//возвращаем false - для того, чтобы по клику мы не перешли по ссылке
			return false;
			});
	</script>
	</body>
</html>


а это сам php куда идет запрос:
<?php
echo "сервер получил id = " . $_GET['id'];
Ответить с цитированием
  #5 (permalink)  
Старый 14.07.2014, 10:47
Аспирант
Отправить личное сообщение для Rorbi Посмотреть профиль Найти все сообщения от Rorbi
 
Регистрация: 28.02.2014
Сообщений: 36

Сообщение от skrudjmakdak Посмотреть сообщение
а про библиотеку jquery вы слышали, просто с ней будет вам удобней писать. я вам накидаю небольшой алгоритм, а там разбирайтесь, что не понятно спрашивайте, хотя в интернете много подобной информации есть, т.к. это основы основ веба. описание будет в коде:
Спасибо буду пробовать
Ответить с цитированием
  #6 (permalink)  
Старый 14.07.2014, 23:15
Аватар для bes
bes bes вне форума
Профессор
Отправить личное сообщение для bes Посмотреть профиль Найти все сообщения от bes
 
Регистрация: 22.03.2012
Сообщений: 3,744

Сообщение от skrudjmakdak
//url по которой делаем запрос
как ты его
напросился запрос


Ответить с цитированием
  #7 (permalink)  
Старый 15.07.2014, 10:45
Профессор
Отправить личное сообщение для skrudjmakdak Посмотреть профиль Найти все сообщения от skrudjmakdak
 
Регистрация: 27.04.2012
Сообщений: 1,410

что то я не понял к чему все это. если вы про окончание слова: "которой", то возможно была одна мысль, и пришла другая, а окончание забыл поменять. я уверен, если порыться то можно найти и у вас ошибки
Ответить с цитированием
  #8 (permalink)  
Старый 15.07.2014, 12:38
Аватар для bes
bes bes вне форума
Профессор
Отправить личное сообщение для bes Посмотреть профиль Найти все сообщения от bes
 
Регистрация: 22.03.2012
Сообщений: 3,744

Сообщение от skrudjmakdak
что то я не понял к чему все это. если вы про окончание слова: "которой", то возможно была одна мысль, и пришла другая, а окончание забыл поменять. я уверен, если порыться то можно найти и у вас ошибки
ни к чему особенному, просто заставило задуматься на основе чего url может быть в женском роде
если только data - ˈdeɪtə - она моя
Ответить с цитированием
Ответ



Опции темы Искать в теме
Искать в теме:

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Выделение активных пунктов многоуровневого меню на jQuery Letto Элементы интерфейса 2 04.12.2013 15:30
Подгрузка меню как в facebook armidow AJAX и COMET 1 16.07.2013 18:57
Динамическая подгрузка контента при прокрутке assd18 AJAX и COMET 11 14.03.2013 14:05
Подгрузка контента, без перезагрузки панели cyber_bober Элементы интерфейса 2 14.12.2012 13:37
Проблема с аккордионом и меню Tie ExtJS 3 01.09.2011 14:36