我正在使用表单和接收php页面来回显数据库中的数据,这是一个提出三个选择/菜单操作的表单,因此在接收页面中使用了三个不同的变量。
在三个选择/菜单上,我喜欢顶部列出的值为空,只需使用如下代码显示“ - ”:
<td>Alphabetical Company Name</td>
<td><select name="alpha" id="alpha">
<option value="">-</option>
<option value="a">A</option>
<option value="b">B</option>
<option value="c">C</option>
所以当用户打开form.php页面时,框中选择的第一个选项/值只是“ - ”。
我构建了接收表单结果的页面,以回显包含数据库中所选数据的表。
一切正常但是当我没有在三个选择/菜单上选择任何值并点击提交按钮时,我得到一个:notice: Undefined variable: query in ... Query was empty
此处提到的query
引用:$result = mysql_query($query) or die(mysql_error());
我认为,如果三个选择/菜单没有发送任何值,则SELECT
进程无法启动,因此$result = mysql_query($query)
不会收到任何query
,但如何我是否解决了这个问题(一般情况下),以便当用户保持三个选择/菜单没有值时,“未定义变量”警告/错误不会发生?
对不起,如果我的英语不清楚,那么问题很基本。
答案 0 :(得分:0)
我认为您的表单不会发布。
答案 1 :(得分:0)
通常在我们将表单数据发送到服务器之前,我们必须验证客户端和服务器端必需的表单字段。
我们在客户端验证时使用jQuery or JavaScript
,并在此使用PHP
因此请在服务器端使用此验证,其后面是
if($_GET)
{
if($_GET['alpha'] != NULL && !empty($_GET['alpha'])
{
// your code here
}
}
else
{
// Handle error here
}
将$ _GET方法替换为您在表单中使用的任何表单方法。
答案 2 :(得分:-1)
我补充说:
else if(!($req && $req2 && $req3 == NULL))
{
$query = NULL;
}
之前的
$result = mysql_query($query) or die(mysql_error());
它现在工作正常,我只有“查询为空”的消息,这是自我解释。感谢所有人的时间和答案