目前,我有一个index.php文件,其中包含来自用户的表单和文本输入以及提交按钮。当按下提交按钮时,process.php文件应该获取数据并将其回显。但是,它只是将我发送到一个空白页面,并没有回应任何东西。我很清楚我需要在页面上设置样式等等......但它根本就没有回应。我已经使用另一个PHP脚本连接到mySQL数据库并测试了它并且它工作正常所以我知道我已连接。我究竟做错了什么?
的index.php
<form action="process.php" form method="post" id="myForm">
<div class="col-xs-12 col-md-6">
<div class="input-group">
<span class="input-group-addon">
<input aria-label="..." type="checkbox" id="checkbox1">
</span>
<input aria-label="..." class="form-control" type="text" id="food1">
</div>
</div>
<input type="submit" value="Submit">
</form>
process.php
<?php
//Check whether the form has been submitted
if($_POST['submit'] == "Submit")
{
$varFood1 = $_POST['food1'];
$sql = "SELECT menu.dish FROM menu WHERE menu.description LIKE '%varFood1%'"; // sql query
$result = mysql_query($sql);
// Loop the recordset $result
// Each row will be made into an array ($row) using mysql_fetch_array
while($row = mysql_fetch_array($result)) {
echo "Items : {$row['dish']}\n";
}
}
?>
答案 0 :(得分:0)
使用name
属性而不是id
。 <input aria-label="..." class="form-control" type="text" id="food1">
尝试在将来打印POST
。
<input aria-label="..." class="form-control" type="text" id="food1" name="food1">
其他更改......
$varFood1 = mysql_real_escape_string($_POST['food1']);
$sql = "SELECT menu.dish FROM menu WHERE menu.description LIKE '%$varFood1%'";
没有逃避你打开你自己。你应该考虑将驱动程序切换到mysqli或PDO。
答案 1 :(得分:0)
问题是您正在检查$ _POST [&#39; submit&#39;],process.php文件没有看到,因为它在POST数组中不存在。解决方案:为您的提交按钮指定一个名称,而不是:
<input type="submit" value="Submit">
,
这就是你拥有的,做到这一点:
<input type="submit" name="submit" value="Submit">