我有一个项目在oops概念的PHP。我做两个文件一个连接amothe html我想打印我的数据在html文件的最后一行使用php打印量这里HTML代码
<?php
include('connection.php');
$obj=new connect;
$x=$obj->search();
while($row = MySQLi_Result($x))
{
echo $row['amount'];
}
?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>Untitled Document</title>
</head>
<body>
Your Amount
<input type="text" name="date" value="<?php echo date("d-m-y");?>"/>
<input type="text" name="amount" id="amount" />
<a href="add.php">add</a>
<a href="subtract.php">subtract</a>
</body>
</html>
这里是我的connection.php
<?php
//con.php
class connect
{
var $conn;
function __construct()
{
$this->conn=new MySQLi("localhost","root","","project111");
}
function add($date,$amount,$d)
{
$addData=$this->conn->prepare('INSERT INTO `totalamount` (`date`,`amount`,detail)values (?,?,?)');
$addData->bind_param('sss',$date,$amount,$d);
$addData->execute();
}
function search()
{
$search=$this->conn->prepare('select * from `totalamount`');
$search->execute();
}
}
?>
答案 0 :(得分:1)
您的search()
方法不会返回任何内容。然而,您将其输出分配给$x
并尝试在之后使用它。我想你想要返回你必须首先获取的mysqli结果句柄......
这也表明不进行任何错误检测和处理并不是一个好主意。在使用$x
之前,您应该检查它包含的内容!如果它不是一个有效的mysqli资源句柄,那么就会出现问题,尝试在随后的mysqli检索命令中使用它是没有意义的。
第三个问题是mysqli_result()
不从结果集中返回一行,如您所期望的那样。
我建议你研究一些工作代码的例子,特别是mysqli扩展的文档(它也带有例子)。
答案 1 :(得分:-1)
你必须在一个函数中有写返回,然后你可以捕获数组形式的所有值。
这是写语法:
返回$ search-&gt; execute();