php搜索数据库并显示它

php搜索数据库并显示它,php,html,mysql,Php,Html,Mysql,我没有做任何php编码,但我做了一些html编码。 我试图创建一个页面,在数据库中搜索标记,并将其显示在带有id和链接的表中 <?php include('header.php'); include('mysql_connect.php'); if (@$_POST['search']) { if (@$_POST['tag']) { $query = mysql_query("SELECT * FROM `archives` WHERE `tag` =

我没有做任何php编码,但我做了一些html编码。 我试图创建一个页面,在数据库中搜索标记,并将其显示在带有id和链接的表中

<?php
include('header.php'); 
include('mysql_connect.php');
if (@$_POST['search']) {
    if (@$_POST['tag']) {
        $query = mysql_query("SELECT * FROM `archives` WHERE `tag` =       '".$_POST['tag']."' ;");

        if (mysql_num_rows($query) > 0) while ($result = mysql_fetch_array($query)) {
            echo("<table border=2><tr><td>id</td><td>link</td><td>tag</td></tr>");
            while ($line = pg_fetch_array($result, null, PGSQL_ASSOC)) {
                echo("<tr>");
                foreach($line as $col_value = > $row_value) {
                    echo("<td>$row_value</td>");
                }
                echo("</tr>\n");
            }
            echo("</table>");
        }
    }
}
?>

<h2>title</h2>
<p>body text</p> 
</div>
<form action="" method="POST">
    <input name="tag" type="text" />
    <input name="search" type="submit" value="search" />
</form>
<?php include('footer.php'); ?>


我在显示数据时遇到问题,它确实返回id,但仅此而已,而且它甚至没有将id放入表中。

您正在混合来自不同数据库的函数
pg_fetch_array()
用于PostgreSQL数据库,其余用于MySQL。相应的函数将是
mysql\u fetch\u array()


除此之外,您不应该使用
mysql.*
函数开始新代码,因为它们已经不推荐使用了。使用
mysqli.*
或PDO对象。

我已经检查了php.net和许多其他堆栈溢出问题。MySQL扩展已经过时了!如果您不使用遗留代码,请升级到PDO或MySQLi。此外,您还需要查看准备好的语句(),从类似的帖子中插入变量,这使得恶意用户很容易进行sql注入攻击。您必须从零开始学习…并逐步。。我的朋友!买一本好书,反复测试,然后用正确的方法学习。。了解mysql_*函数很好,但要从一开始就学习PDO/MYSQLI!祝你好运…它现在有点工作了,ti用该标记重复数据库中的数据量的标题。我只把
pg\u fetch\u array()
改为
mysql\u fetch\u array()
。我试图将mysql改为mysqli,但没有效果。感谢您指出
mysql\u fetch\u array()
问题。一旦我改变了它,它确实有用。