Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/extjs/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
使用PHP获取各种ID的SQL数据_Php_Mysql_Sql - Fatal编程技术网

使用PHP获取各种ID的SQL数据

使用PHP获取各种ID的SQL数据,php,mysql,sql,Php,Mysql,Sql,我目前在我的网站上有一个表,我的SQL数据库中有一个表,我需要表的每一行从列中获取某些信息。我有一些目前还不错的方法,但是我觉得这不是最好的方法。因为我的数据库中大约有600多行 我正试图了解更多关于这一切,所以如果你有任何想法,以更好的方式做这件事,那将是美妙的 <?php $queryContent="SELECT * FROM businesses WHERE id= 104"; $resultContent= $mysqli->query($queryCont

我目前在我的网站上有一个表,我的SQL数据库中有一个表,我需要表的每一行从列中获取某些信息。我有一些目前还不错的方法,但是我觉得这不是最好的方法。因为我的数据库中大约有600多行

我正试图了解更多关于这一切,所以如果你有任何想法,以更好的方式做这件事,那将是美妙的

<?php
    $queryContent="SELECT * FROM businesses WHERE id= 104";
    $resultContent= $mysqli->query($queryContent);
    $rowContent = $resultContent->fetch_assoc();
?>
<?php if ($rowContent['active'] == "Y") { ?>
    <tr>
        <td><?php echo $rowContent['businessname']; ?></td>
        <td><?php echo $rowContent['telephoneno']; ?></td>
        <td><?php echo $rowContent['emailaddress']; ?></td>
        <td><?php echo $rowContent['rating']; ?></td>
    </tr>
<?php } ?>

如果要列出所有活动行,请尝试以下操作:

<?php
    // Change query to select only acitve rows
    $queryContent="SELECT * FROM businesses WHERE active = 'Y'";
    $resultContent= $mysqli->query($queryContent);

    //while cycle will repeat while sql have results
    while($rowContent = $resultContent->fetch_assoc()){ 
?>
<tr>
    <td><?php echo $rowContent['businessname']; ?></td>
    <td><?php echo $rowContent['telephoneno']; ?></td>
    <td><?php echo $rowContent['emailaddress']; ?></td>
    <td><?php echo $rowContent['rating']; ?></td>
</tr><?php } ?>

我可以在您的代码中想到两件可以改进的事情:

  • 您可以提及select column1、column2等,而不是select*,。。。这被认为是标准

  • 如果您试图只列出一行,则可以访问索引为0的$rowcontent数组(或)通过在“选择”查询末尾使用“限制1”来限制选择查询的输出行(第二个选项仅在您不确定查询是否始终只提取一行时才有效)


  • 为什么你觉得这不是最好的做事方式?还有。。。。问题是什么???如果您的问题是一页上加载了所有600行,我会考虑设置分页,以便您可以限制每页显示的结果。
    SELECT * FROM businesses WHERE id IN (103, 104, 105)