<ul id="menu">
<?php $result = mysql_query ("SELECT category FROM categories",$db);
$myrow = mysql_fetch_array ($result);
do {
$category = $myrow["category"] ;
printf ("<li><a href='#'> %s </a>", $category);
?>
<ul>
<?php
$result2 = mysql_query("SELECT COUNT(*) FROM goods WHERE category='$category'",$db);
$myrow2 = mysql_fetch_array($result2);
$total=$myrow2[0];
for($i = 1; $i<=$total; $i++){
$companys[$i] = 'Ноль';
}
$result3 = mysql_query ("SELECT company FROM goods WHERE category='$category'",$db);
$myrow3 = mysql_fetch_array ($result3);
$number = 1;
$repeat = 0;
do{
for($i = 1; $i<=$number; $i++){
$company = $myrow3['company'];
if($company == $companys[$i]) {$repeat++;
}
}
if($repeat ==0){
$result2 = mysql_query("SELECT COUNT(*) FROM goods WHERE company='$company' and category='$category'",$db);
$myrow2 = mysql_fetch_array($result2);
$total=$myrow2[0];
printf ("<li><a href='view_goods.php?company=%s&category=%s'>%s(%s)</a></li>",$company,$category, $company,$total);
$companys[$i] = $myrow3['company'];
}
$number++;
$repeat = 0;
}
while ($myrow3 = mysql_fetch_array ($result3));
?>
</ul>
</li>
<?
}
while ($myrow = mysql_fetch_array ($result));
?>
</ul>
Спустя 1 час, 16 минут, 49 секунд (20.05.2011 - 03:15) Basili4 написал(а):
Нет 1. Попов Детекд
Цитата |
$myrow = mysql_fetch_array ($result); do { |
http://phpforum.su/index.php?showtopic=32799&hl= Там рассказано Как правильно выводить информацию из базы.
2. скуль запросы должны быть отдельно
3. Представление должно быть отдельно
Спустя 2 часа, 50 минут, 1 секунда (20.05.2011 - 06:05) inpost написал(а):
artarx
Добро пожаловать в мою подпись
Добро пожаловать в мою подпись
![smile.gif](http://phpforum.ru/html/emoticons/smile.gif)
Спустя 6 часов, 21 минута, 27 секунд (20.05.2011 - 12:26) artarx написал(а):
![biggrin.gif](http://phpforum.ru/html/emoticons/biggrin.gif)
Спустя 4 минуты, 43 секунды (20.05.2011 - 12:31) linker написал(а):
Это хорошо, что толком на его курсы не ходил, у тебя больше шансов побыстрее переучиться в правильном русле.
Спустя 3 дня, 8 часов, 20 минут, 14 секунд (23.05.2011 - 20:51) artarx написал(а):
На сколько опасно так передавать переменные ???
Файл который их принимает выглядит так.
print '<li><a href="view_goods.php?company='.htmlspecialchars($company).'&category='.htmlspecialchars($category).'"title="'.htmlspecialchars($company).'">'.htmlspecialchars($company).'('.htmlspecialchars($total).')</a></li>';
Файл который их принимает выглядит так.
<?PHP
$db = mysql_connect ("localhost","root","");
mysql_select_db("menu",$db);
if($db) {echo "Соединение с базой установлено<br>";}
?>
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<link href="style.css" rel="stylesheet" type="text/css">
</head>
<body>
<?php
$result = mysql_query ("SELECT model,img,price
FROM goods
WHERE company='$company' and category='$category'",$db);
while ($myrow = mysql_fetch_assoc ($result))
{
$model = $myrow['model'];
$imgsrc = $myrow['img'];
$price = $myrow['price'];
?>
<div id="tovar">
<div id="img"> <img src="<?php echo $imgsrc ?>" width="70" height="100"></div>
<div id="company"><?php echo $company ?> <?php echo $model ?></div>
<div id="model">Цена <?php echo $price ?> руб.</div>
</div>
<?php
}
?>
</body>
</html>
Спустя 2 часа, 7 минут, 49 секунд (23.05.2011 - 22:59) sebastjan написал(а):
Я не профи но посуди сам, ты формируешь линк ,преобразуешь в нём переменные, это не обезопасит отиньекции , потому что на стороне сервера в запросе к БД ты не предохраняешься.
---------------------------------------------
И ещё, какой смысл так формировать линк, если его любой всё одно может в гет запрсе подменить.
Смотри на данные входящие.
---------------------------------------------
mysql_real_escape_string
И ещё, какой смысл так формировать линк, если его любой всё одно может в гет запрсе подменить.
Смотри на данные входящие.
Спустя 5 минут, 51 секунда (23.05.2011 - 23:05) sebastjan написал(а):
Цитата (linker @ 20.05.2011 - 09:31) |
Это хорошо, что толком на его курсы не ходил, у тебя больше шансов побыстрее переучиться в правильном русле. |
Лучше курсы чем этот форум я себе и представить не могу.