gpt4 book ai didi

php - 未从 PHP 中的 MySQL 表中获取数据

转载 作者:行者123 更新时间:2023-11-29 04:39:33 25 4
gpt4 key购买 nike

我想打印在文本框中输入的 ID 的名称和姓氏。这是 PHP 和 HTML 代码:

    <head>
<title>
Search your name by ID
</title>
</head>
<?php
if(isset($_POST["searchname"]))
{
$id = $_POST["searchname"];
$connect = new mysqli("localhost","adarsh","Yeah!","adarsh");
$a = mysql_query("Select * from users where id='$id'",$connect);
$row = mysql_fetch_assoc($a);
echo "$row[0] , $row[1] , $row[2]";
}
else
{
echo "error";
}
?>
<body>
<form method="post" action="<?php echo htmlspecialchars($_SERVER["PHP_SELF"]);?>">
<input type="text" maxlength="6" name="searchname">
<input type="Submit" name="Submit">
</form>
</body>

输入ID时的输出:

 , , 

MySQL 表中有条目,但我无法获取它们。我的代码有什么问题?

更新:我也试过 mysql_fetch_array 但它不起作用。

最佳答案

主要问题是您混合使用了 mysqlimysql。这些是完全不同的 API。假设你有

$id = $_POST["searchname"]; 
$connect = new mysqli("localhost","adarsh","Yeah!","adarsh");

接下来你应该:

$result = $connect->query("Select * from users where id='$id'");

然后得到结果:

while ($row = $result->fetch_assoc()) {
var_dump($row);
}

当然,不要直接将值放入查询中,而是使用准备好的语句

更新:关于错误:

  • 您的主要错误是混合 API。当您使用 mysql(已弃用并且您不能再使用它)时,您不能使用任何 mysqli 函数,反之亦然.

  • 接下来 - 当您使用 new 创建 mysqli 对象时,您应该以面向对象的方式工作,即从您的 mysqli 对象调用方法。

关于php - 未从 PHP 中的 MySQL 表中获取数据,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32693890/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com