PhP MySQL从数据库获取ceratin项目并回显它们

时间:2016-12-14 09:48:56

标签: php mysql

我需要一些帮助,我无法弄清楚,我试着在互联网上搜索,但我什么也没发现

所以我正在使用w3schools的代码

<?php
$servername = "localhost"; //Obviously this are set to my parameters
$username = "username"; //Obviously this are set to my parameters
$password = "password"; //Obviously this are set to my parameters
$dbname = "myDB"; //Obviously this are set to my parameters

// Create connection
$conn = new mysqli($servername, $username, $password, $dbname);
// Check connection
if ($conn->connect_error) {
    die("Connection failed: " . $conn->connect_error);
} 

$sql = "SELECT * FROM People";
$result = $conn->query($sql);

if ($result->num_rows > 0) {
    // output data of each row
    while($row = $result->fetch_assoc()) {
        //Some code goes here
    }
} else {
    echo "0 results";
}
$conn->close();
?>

如何修改此代码以仅回显某些项目?

示例

我在talbe People中有10个项目(表人包含id,年龄,姓名,性别)

我希望通过使用他们的ID来回应10个人中的3个人,这个ID是1 10 10

我知道我可以使用这个AND id IN(1, 5, 9)";这只是一个接一个地回应它们

有没有办法回应id 1到这里,id 5在这里,而id 9就像在3个不同的地方,有3个不同的代码或东西?这有可能吗?

2 个答案:

答案 0 :(得分:2)

您可以使用:

@optional_fields

然后当你想要某些信息时,你可以简单地使用index.php:

class people
{

    public function people()
    {
        $sql = $this->conn->prepare("SELECT * FROM `people`");
        $sql->execute();

        $result = $sql->fetch(PDO::FETCH_OBJ);

        return $result;
    }
}

然后您可以运行简单的回声,例如$fetch = new people(); $info = $fetch->people(); $info->name等等。

根据您搜索用户的方式,您只需添加

即可
$info->id

并将WHERE `userid` = :id $sql->bindParam(':id', $userid); 添加到$userid

但这取决于你如何拔出特定用户。

答案 1 :(得分:0)

使用此代码

<?php 

    //using PDO
    try 
    {
       $conn = new PDO('mysql:dbhost=myhost;dbname=mydbname;', 'user','pass');
    }
    catch (PDOException $e)
    {
      echo $e->getMessage();
    }

    $getId = $conn->query("
               SELECT * FROM users 
               WHERE id = 1
               AND id = 5
               AND id = 9
               ");

    while ($ids = $getId->fetch(PDO::FETCH_OBJ)
    {
      echo $getId->id . '<br>';
    }