Помогите, пожалуйста, реализовать правильный url.
Из базы данных из таблицы menu выводятся страницы, которые связаны с основным меню, а из таблицы products выводятся страницы, которые связаны с вертикальным подменю. Просьба помочь реализвать правильный url адрес, который бы позволял шагать по вертикальному меню, но постоянно оставался на одном и том же пункте для горизонтального меню. Ниже привожу свой пример:
Сейчас, когда я кликаю по First product у меня выделяется в главном меню кнопка Как купить, кликая на Second product выделяется в главном меню кнопка Товары, кликая на Third product выделяется кнопка Помощь главного меню и т.д. Похоже id, которое выводится для таблицы products пересекается с id таблицы menu.

Не могли бы Вы направить ход мыслей правильно, чтоб когда выбирался товар из вертикального подменю, пункт главного меню не изменялся (оставался подсвеченным).
Как новичку мой ход мыслей наталкивает меня на добавления к url дополнение после знака амперсанд, типа www.mywebsite.ru/products.php?id=2&... , но я незнаю как правильно реализуется данное троеточие после амперсанда и какой нужно добавить код для данной задачи. Возможно я ошибаюсь в правильности выбора пути, если так, подскажите плиз как лучше.
Заранее благодарен!
Спустя 1 час, 14 минут, 5 секунд (18.11.2009 - 14:02) Gabriel написал(а):
эммм а ты какие запросы делал? может покажеш?
Спустя 23 минуты, 24 секунды (18.11.2009 - 14:25) winner_ua написал(а):
<?php
include("blocks/bd.php");
$id = isset($_GET['id']) ? $_GET['id'] : null;
$result = mysql_query("SELECT * FROM products WHERE id='$id'",$db);
$myrow = mysql_fetch_array($result);
?>
<!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" />
<meta name="description" content="<?php echo $myrow['meta_d']; ?>" />
<meta name="keywords" content="<?php echo $myrow['meta_k']; ?>" />
<link href="style.css" rel="stylesheet" type="text/css">
<title><?php echo $myrow['title']; ?></title>
<body>
<table class="main_border" align="center" width="921" cellpadding="0" cellspacing="0" border="0">
<!-- header -->
<?php include("blocks/header.php"); ?>
<!-- menu -->
<?php include("blocks/menu.php");?>
<!-- flash presentation -->
<tr>
<td>
<img src="images/background.jpg" width="921" height="271" alt="" />
</td>
</tr>
<!-- content -->
<tr>
<td>
<table width="100%" cellpadding="0" cellspacing="0" border="0">
<tr>
<!-- left column -->
<td width="209" class="producers">
<div class="menuProducers"> <span class="nameProducers">Производители</span>
<?php
$productresult = mysql_query ("SELECT id, thumbnail, title, meta_d, meta_k, productname, text FROM products LIMIT 0,6", $db);
$productrow = mysql_fetch_array ($productresult);
do {
printf ("<p class='imageproduct' align='center'><a href='view_products.php?id=%s'><img src='%s'></a></p>", $productrow["id"], $productrow["thumbnail"]);
}
while ($productrow = mysql_fetch_array ($productresult));
?>
</div>
<div class="menuProducers"><span class="nameProducers"><a href="accessories.php">Аксессуары</a></span></div>
<div class="menuProducers"> <span class="nameProducers">Товары</span>
<table width="209" border="0" cellspacing="0" cellpadding="10">
<tr>
<td>
<?php
$productresult = mysql_query ("SELECT id, thumbnail, title, meta_d, meta_k, productname, text FROM products LIMIT 6,10", $db);
$productrow = mysql_fetch_array ($productresult);
do {
printf ("<p class='selectproduct'><a href='view_products.php?id=%s'>%s</a></p>", $productrow["id"], $productrow["productname"]);
}
while ($productrow = mysql_fetch_array ($productresult));
?>
</td>
</tr>
</table>
</div>
</td>
<!-- rigth column -->
<td class="main_content">
<div class="description_title"><h1><?php echo $myrow['productname']; ?></h1></div>
<?php echo $myrow['text']; ?>
</td>
</tr>
</table>
</td>
</tr>
<!-- footer -->
<?php include("blocks/footer.php"); ?>
</table>
</body>
</html>
Спустя 18 минут, 1 секунда (18.11.2009 - 14:43) Gabriel написал(а):
во первых
во вторых do while и printf в топку.
в третьих mysql_fetch_array заменить на mysql_fetch_assoc
и последнее что заметил попробуй переименовать в таблице продуктов поле id в product_id
$result = mysql_query("SELECT * FROM products WHERE id='" . intval( $id ) . "'",$db);
во вторых do while и printf в топку.
в третьих mysql_fetch_array заменить на mysql_fetch_assoc
и последнее что заметил попробуй переименовать в таблице продуктов поле id в product_id
Спустя 36 минут, 25 секунд (18.11.2009 - 15:20) winner_ua написал(а):
Спасибо, Gabriel, за совет, сейчас попробую.
А не подскажете, чем лучше заменить цикл do while и printf, оператором if else и echo ?
А не подскажете, чем лучше заменить цикл do while и printf, оператором if else и echo ?

Спустя 5 минут, 34 секунды (18.11.2009 - 15:25) Gabriel написал(а):
winner_ua
printf на ечо do while на while.
тоесть вот так
printf на ечо do while на while.
тоесть вот так
<?php
$productresult = mysql_query ("SELECT id, thumbnail, title, meta_d, meta_k, productname, text FROM products LIMIT 0,6", $db);
while ($productrow = mysql_fetch_assoc ($productresult)){
echo'<p class="imageproduct" align="center">
<a href="view_products.php?id=' . intval( $productrow["id"] ) . '"><img src="' . $productrow["thumbnail"] . '"></a></p>';
}
Спустя 1 час, 41 минута, 19 секунд (18.11.2009 - 17:07) winner_ua написал(а):
Спасибо, Gabriel! сделал как Вы сказали, также заменил в таблице продуктов поле id на product_id, но пока проблема не решилась. Не могли бы еще раз глянуть, please, на код и сказать, что еще можно сделать?
P.S. Отдельное спасибо за корректировку "кривого" кода! Читаю, записываю и мотаю на ус.
<?php
include("blocks/bd.php");
$id = isset($_GET['id']) ? $_GET['id'] : null;
$result = mysql_query("SELECT * FROM products WHERE product_id='" . intval( $id ) . "'",$db);
$myrow = mysql_fetch_assoc($result);
?>
<!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" />
<meta name="description" content="<?php echo $myrow['meta_d']; ?>" />
<meta name="keywords" content="<?php echo $myrow['meta_k']; ?>" />
<link href="style.css" rel="stylesheet" type="text/css">
<title><?php echo $myrow['title']; ?></title>
<body>
<table class="main_border" align="center" width="921" cellpadding="0" cellspacing="0" border="0">
<!-- header -->
<?php include("blocks/header.php"); ?>
<!-- menu -->
<?php include("blocks/menu.php");?>
<!-- flash presentation -->
<tr>
<td>
<img src="images/background.jpg" width="921" height="271" alt="" />
</td>
</tr>
<!-- content -->
<tr>
<td>
<table width="100%" cellpadding="0" cellspacing="0" border="0">
<tr>
<!-- left column -->
<td width="209" class="producers">
<div class="menuProducers"> <span class="nameProducers">Производители</span>
<?php
$productresult = mysql_query ("SELECT product_id, thumbnail, title, meta_d, meta_k, productname, text FROM products LIMIT 0,6", $db);
while ($productrow = mysql_fetch_assoc ($productresult)){
echo'<p class="imageproduct" align="center"><a href="view_products.php?id=' . intval( $productrow["product_id"] ) . '"><img src="' . $productrow["thumbnail"] . '"></a></p>';
}
?>
</div>
<div class="menuProducers"><span class="nameProducers"><a href="accessories.php">Аксессуары</a></span></div>
<div class="menuProducers"> <span class="nameProducers">Товары</span>
<table width="209" border="0" cellspacing="0" cellpadding="10">
<tr>
<td>
<?php
$productresult = mysql_query ("SELECT product_id, thumbnail, title, meta_d, meta_k, productname, text FROM products LIMIT 6,10", $db);
while ($productrow = mysql_fetch_assoc ($productresult)){
echo'<p class="selectproduct"><a href="view_products.php?id=' . intval( $productrow["product_id"] ) .'">' . $productrow["productname"] . '</a></p>';
}
?>
</td>
</tr>
</table>
</div>
</td>
<!-- rigth column -->
<td class="main_content">
<div class="description_title"><h1><?php echo $myrow['productname']; ?></h1></div>
<?php echo $myrow['text']; ?>
</td>
</tr>
</table>
</td>
</tr>
<!-- footer -->
<?php include("blocks/footer.php"); ?>
</table>
</body>
</html>
P.S. Отдельное спасибо за корректировку "кривого" кода! Читаю, записываю и мотаю на ус.
Спустя 1 день, 7 часов, 43 минуты, 3 секунды (20.11.2009 - 00:50) winner_ua написал(а):
Может кто знает, можно ли условие или цикл написать, чтоб пока выводится id с таблицы products, то выводить id=2 из таблицы меню базы данных? *PLEASE HELP*
Спустя 1 день, 21 час, 29 минут, 52 секунды (21.11.2009 - 22:20) winner_ua написал(а):
Подскажите, пожалуйста, вопрос решил частично, но не могу вывести данные из таблицы products, вот что придумал:
Получается в строке в строке
Спасибо!
$productresult = mysql_query ("SELECT product_id, thumbnail, title, meta_d, meta_k, productname, text FROM products LIMIT 6,10", $db);
while ($productrow = mysql_fetch_assoc ($productresult)){
echo'<p class="selectproduct"><a href="products.php?id=2&view_products=' . intval( $productrow["product_id"] ) .'">' . $productrow["productname"] . '</a></p>';
}
Получается в строке в строке
echo'<p class="selectproduct"><a href="products.php?id=2меню позволяет постоянно держать выделенным второй пункт меню, но не выводится информация на странице из базы данных по выбранному продукту, url выглядит http://mywebsite.ru/products.php?id=2&view_products=10 , но инфы нет. Наверное нужно присвоить view_products что-то, что будет позволять выводить из базы информацию, но незнаю как это делается. Может кто-нибудь подсказать?
Спасибо!