Адрес след селектване от базата

BUSTTER

Registered
Здравейте!
Искам да направя така че след селектването от базата данни според id-то си да си създаде адрес пример:
качил съм някаква снимка и след селекта за да я видя от файл искам пътя да е faila.php?viewpic=1
числото накрая да е id-то
как да го направя ???
 
<?php
$cn = mysql_connect("localhost", "root", "narootmaikamu");
$sl = mysql_select_db("db", $cn);
$sql = "select `id` from `pics`;";
$rs = mysql_query($sql, $cn) or die("Query Failed");
while($row = mysql_fetch_array($rs)) {
echo "<a href='viewpicture.php?id={$row['id']}'>Pic {$row['id']}</a> ";
}
?>
 
Благодаря!
И ако може да попитам как ще стане номера преди използвах конструкцията switch за да постигна подобен ефект , но сега когато информацията е в база данни ми е по-трудно...

Код:
switch ($_GET['viewpic'])
{
case '6':
print 'fgdfg';
break;
}

Как да направя така че "case" да си е според всяко id в смисъл вместо да повтарям тоя скрипт 100 пъти за всяко ид възможно ли е той да се взима от база данни и във print да си сложа примерно описанието което във таблицата в база данни е decr ...
Благодаря..
 
Помислих малко и се справих сам

Код:
switch ($_GET['play'])
{
case "{$row['id']}":
print "{$row['descr']}";
break;
 }
 
Здравей!

В случая е малко трудно да се дадат общи решения, ако те интересува само заявката:

if(isset($_GET['id']))
{
$id=intval($_GET['id']);
}

$query="SELECT pole FROM table WHERE id='$id'...
$result=mysql_query($query);



Би могъл да направиш и така:

if(isset($_GET['id']))
{
$id=intval($_GET['id']);
}
else
{
echo "Greshen link!";
exit;
}

if(empty($id))
{
echo "Greshen link!";
exit;
}

$query="SELECT pole FROM table WHERE id='$id'...
$result=mysql_query($query);

if(mysql_num_rows($result)==0)
{
echo "Greshen link!";
exit;
}

обхождаш си резултата и каквото там си решил да правиш...

Можеш да използваш и горния код, но да кажем, че проверките биха ти защитили информацията в БД...

Успех!
 

Back
Горе