在PHP中获取mysql数据库中的特定行

时间:2016-08-24 08:00:00

标签: php mysql select command

我正在开发一个项目,需要我从数据库中获取特定数据。 假设我有一个值(UserID),我需要与指定的UserID在同一行中的每个其他值。

我在覆盆子上使用PHP。

这是我的数据库:

enter image description here

以下是我用来联系db和(尝试)获取“Raumname”的代码。 正如您在图片上看到的那样,有一个名为UserID的值,它在那里是两次。有一次,旁边有“Raum1”,另一次旁边有“Raum2”。

现在,我需要我的代码输出“Raum1”和“Raum2”。

但是根据我目前的命令,我只得到“Raum1”。

      <?php
  try
   {    
$con=mysqli_connect("xxx.xx.xxx","xxx","xxxx","xxxxx");

if (mysqli_connect_errno($con))
{
   echo "Failed to connect to MySQL: " . mysqli_connect_error();
}
$anmeldecode = $_GET['anmeldecode']; 
$query = "SELECT Raumname From UserinRaum r INNER JOIN Benutzer u ON u.Anmeldecode = r.UserID WHERE $anmeldecoder.Anmeldecode = '$anmeldecode'";
$result = mysqli_query($con, $query);
$row = $result->fetch_row();
echo $row[0].",".$row[1].",".$row[2].",".$row[3].",".$row[4].",".$row[5];
mysqli_close($con);
}
  catch(Exception $e)
  {
echo $e->getMessage();
}
          ?>              

感谢您帮助我。

2 个答案:

答案 0 :(得分:1)

You have mistaken in query:

use below query:

SELECT Raumname From UserinRaum r INNER JOIN  Benutzer u ON u.Anmeldecode = r.UserID WHERE u.Anmeldecode = '$anmeldecode'";

you need to use alias u instead of $anmeldecode

答案 1 :(得分:0)

更改

"SELECT Raumname From UserinRaum r INNER JOIN  Benutzer u ON u.Anmeldecode = r.UserID "
. "WHERE $anmeldecoder.Anmeldecode = '$anmeldecode'";
             ^ Remove with alias name u

"SELECT Raumname From UserinRaum r INNER JOIN  Benutzer u ON u.Anmeldecode = r.UserID "
. "WHERE u.Anmeldecode = '$anmeldecode'";