【发布时间】:2016-09-21 10:43:01
【问题描述】:
<?php
$con=mysqli_connect("localhost","root","","ok_db")or die(mysqli_connect_error());
$output = 'arslan';
// collect
if (isset($_POST['search'])) {
$searchq = $_POST['search'];
$searchq = preg_replace("#[^0-9a-z]#i","",$searchq);
$query = mysqli_query($con,"SELECT * FROM user_data WHERE fname LIKE '%$searchq%'") or die("Could not search.");
$count = mysqli_num_rows($query);
if($count == 0) {
$output = 'No results found.';
} else {
while($row = mysqli_fetch_array($query)) {
$itemname = $row['fname'];
$description = $row['lname'];
$image = $row['id'];
$output .= '<div>'.$itemname.' '.$description.'</div>';
}
}
}
else{
echo "no" ;
}
?>
<html>
<head>
<title>searching</title>
</head>
<body>
<form action="search.php" method="POST">
<input type="text" name="search" placeholder="Search">
<input type="submit" value=">>" />
</form>
</body>
<?php
print $output;
?>
</html>
此代码在我的本地主机 (XAMPP) 上运行良好,但在 PhpStorm 中没有回显任何内容,isset 函数在那里不起作用并且始终显示输出“否”。
我的 PhpStorm 设置是否有问题,因为它在 localhost 上运行良好?
【问题讨论】:
-
当您说 phpstorm 不显示任何内容时,您的意思是您使用的是“在浏览器中查看”选项吗?如果您只是在本地加载文件并且不会呈现任何 php,因为它没有服务器可以通过。
-
您必须使用 PhpStorm 自己的内置简单 Web 服务器 .. ATM 在处理 POST 请求时存在问题。只需将 PhpStorm 配置为使用 XAMPP 安装中的 Apache -- stackoverflow.com/a/34787827/783119 。当这不起作用时,您在浏览器地址栏中看到的 URL 是什么?
-
顺便说一句——从技术上讲,
isset不是函数,而是行为类似于函数的语言结构