$从url获取多个变量

时间:2010-09-15 13:28:15

标签: php get

我正在制作摄影网站。在DB中有一个图像表,事件表和类别表,它们通过外键链接。目前,我从数据库中拍摄照片并将其转换为锚链接时生成事件。

<?php
while ( $a_row = mysql_fetch_row( $result ) ){

 foreach ( $a_row as $field ){

?>
<a href="images.php?event=<?php echo $field;?> "> <php? echo $field; ?> </a>
<?php
 }
}
?>

点击链接时,脚本从URL中获取变量:/images.php?**event**=eventCalledParty

foreach($_GET as $value)
{
$event = $value;
}
$event = mysql_real_escape_string($event);

我的问题是 - 如果我要实现类别并且有一个看起来像的网址:

  ?

/images.php的事件 = eventCalledParty&安培;的类别 = categoryCalledFashionPhotography

如何从网址中分离这两个变量以用于我的查询。

谢谢。

5 个答案:

答案 0 :(得分:6)

这些将自动显示在这些变量中......

$_GET['event']
$_GET['category']

PHP为您完成所有这些工作。

答案 1 :(得分:5)

$event = mysql_real_escape_string($_GET['event']);
$category = mysql_real_escape_string($_GET['category']);

答案 2 :(得分:1)

每个url参数都成为$_GET中的单独键。

因此,对于/images.php?event=eventCalledParty&category=categoryCalledFashionPhotography,您将获得:

$_GET['event'] => 'eventCalledParty' 
$_GET['category'] => 'categoryCalledFashionPhotography' 

你可以采取相应的行动:

if ($_GET['category'] == 'categoryCalledFashionPhotography') {
    //do stuff here
}

答案 3 :(得分:1)

我在php上有点生疏,但我认为在你的foreach中你想要的是得到teh字段的名称及其值。

foreach($_GET as $name->$value)
{
  if($name == 'event') {
    $event = mysql_real_escape_string($value);
  }
  else if($name == 'category')
  {
    $category = mysql_real_escape_string($category);
  }
}

答案 4 :(得分:1)

foreach($ _ GET为$ key =&gt; $ value)    {        $ event [$ key] = mysql_real_escape_string($ value);    }