如何使超链接动态?

问题描述:

如何配置ID以便$menu变量输出与其ID相对应的值。目前发生的情况是,id值在例如pid=1,pid=7,但$type不会根据ID改变。因此,$type不是动态的。我如何使$type动态?如何使超链接动态?

代码:

if (!isset($_GET["pid"]) && !isset($_GET["type"])){ 
$pageid="1"; 
    $type=""; 
    }else{ 
$pageid=$_GET["pid"]; 
$type=$_GET["pid"]; 
} 
$query = "SELECT Type FROM cart WHERE id='$pageid'"; 
$result = mysql_query($query) or die(mysql_error); 

while ($row = mysql_fetch_assoc($result)) { 

$type = $row['Type']; 

} 

$菜单= ''。 $类型。 ''; $ menu2 =''。 $类型。 '';

当我添加$ menu和$ menu2变量时会发生问题,因为它们输出相同的$ type值。但PID值是动态

<div class="clickerdown"></div> 

    <div class="seperator"><div class="text"><?php echo $menu; ?></div></div> 
<div class="clickerdown"></div> 


    <div class="clickerdown2"></div> 

<div class="seperator2"><div class="text1"></div><?php echo $menu2; ?></div> 
    <div class="clickerdown2"></div> 
+0

pid ='。 $ pid。 ' – 2013-02-28 21:04:27

+0

你的代码有点奇怪......你正在定义'$ pid',但从不使用它。您将您的“ID”硬编码到您的网址中。 '$ type'应该是动态的,因为它来自'while'循环。如果不是,则需要查看数据库中的数据以及正在返回所需数据的查询的上下文。 – user1477388 2013-02-28 21:04:32

+0

我已经更新了这个问题。 – 2013-02-28 21:09:58

考虑以下几点:

$query = "SELECT id, type FROM cart"; 
$result = mysql_query($query) or die(mysql_error); 

while ($row = mysql_fetch_**assoc**($result)) { 
    $pid = $row['id']; 
    $type = $row['type']; 
    //etc 
} 

使用“mysql_fetch_assoc”将返回的每一行作为关联数组。

希望有所帮助。 :D

另外,你在while循环中有菜单变量。那些将被重新分配每个传球。

Further info on the php.net website

+0

阅读'mysql_fetch_array()'文档。它默认为'MYSQL_BOTH',所以它返回两个名字和数字键。 – Barmar 2013-02-28 21:24:53

+0

哈...刚才也看到了这一点。另一个想法...... '// while the loop $ menu [] =' ...'; //你的正常链接信息 ' 然后在循环之后,你有一个'$ menu'数组,每个链接都是一个元素。 – JCSickmeyer 2013-02-28 21:26:12

+0

我修改了某些人的错误代码 – 2013-02-28 21:53:14