-1

我需要为第二个数组中的每个数组元素获取唯一 ID。该 ID 已存在于表中,但我无法单独获取它们。现在获取的 URL 如下所示:http://page.com/index.php?p=view&m=area&id=173id=552id=768id=36id=217id= 我只需要一个 ID,如果使用第一个 ID,则设置为第二个和很快。我知道我应该使用 mysqli 或 PDO 和规范化表,但后来,现在我需要这方面的帮助。

这是代码:

$res= mysql_query("SELECT * FROM area WHERE user='$user' ORDER BY date") or     die("Error: " . mysql_error());
while($row = mysql_fetch_assoc($res))
{
   $id = $row['id'];
   $x = array();
   $parent = array();
   foreach($row as $value)
   {
      if ($value == $id) continue;

      else if ($value == $user) continue;

      $result = explode(",", $value);

      foreach($result as $newvalue)
      {
         $query = "SELECT x,firm FROM list where list.x='$newvalue'";
         $result = mysql_query($query);
         $r = mysql_fetch_assoc($result);
         $x[] = $r['x'];
         $xx = implode("id=",$x);
         $parent[] = $r['firm'];
         $list = implode("<a href='index.php?p=view&m=area&$xx'>", $parent)."</a>";
      }
    }
echo "<td><span>" . $list . "</span>/td>";

}

谢谢

4

2 回答 2

1

首先

$list = implode("<a h

应该

$list .= implode("<a h
于 2013-06-04T23:53:26.263 回答
0

该 URL 语法不是将值数组传递给 PHP 脚本的正确方法。它应该对参数名称使用 PHP 数组语法。此外,您需要使用与号 ( ) 分隔参数&

 http://page.com/index.php?p=view&m=area&id[]=173&id[]=552&id[]=76&8id[]=36&id[]=217

然后你可以通过使用获得第二个

$second_id = $_GET['id'][1]; // 552

等等

仅供参考,您不应该mysql_*在新代码中使用函数。它们不再被维护并被正式弃用。看到红框了吗?改为了解准备好的语句,并使用PDOMySQLi -本文将帮助您决定使用哪个。如果您选择 PDO,这里有一个很好的教程

于 2013-06-04T23:51:50.273 回答