我的 PHP 脚本有问题,我有一个搜索栏,但是当我将它重定向到类而不是运行脚本时,它会显示 PHP 脚本。我是 OOP PHP 编程风格的新手。
我正在尝试在我的数据库上实现一个非常简单的 OOP 搜索查询。但我很困惑为什么它将我重定向到 classes/class.House.inc 而不是执行脚本。我哪里错了?
我曾尝试在网上寻找在线 OOP 教程,但运气不佳 :( 欢迎任何帮助!
索引.php
<form method="post" action="classes/class.House.inc" name="search" id="searchform">
<input type="text" name="term" id="searchinput"/>
<input type="submit" name="submit" id="searchsubmit" value=""/>
</form>
类/class.House.inc
<?php
class House extends Database {
public function search (){
$query = "SELECT * FROM houses WHERE postcode like '%$term%'";
$result = $this->mysqli->query($query);
$num_result = $result->num_rows;
if($num_result > 0){
while($rows =$result->fetch_assoc()){
$this->data[]=$rows;
//print_r($rows);
header ("Location: ../search.php");
}
return $this->data;
}}}
?>
搜索.php
<table width="500" border="1" cellpadding="5">
<tr>
<th width="16" scope="row">id</th>
<td width="95">bedrooms</td>
<td width="140">description</td>
<td width="104">roadname</td>
<td width="71">postcode</td>
</tr>
<?php
$obj = new House();
$obj->search();
foreach($obj->data as $val){
extract($val);
?>
<tr>
<td scope="row"><?php echo $id; ?></td>
<td><?php echo $bedrooms; ?></td>
<td><?php echo $description; ?></td>
<td><?php echo $roadname; ?></td>
<td><?php echo $postcode; ?></td>
</tr>
<?php
}
?>
</table>