-1

我正在使用一个表单和一个接收 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,但是我该如何解决该问题(通常),以便当用户保持三个选择/menu 没有值,“未定义变量”警告/错误不会发生?

对不起,如果我的英语不清楚并且问题很基本。

4

3 回答 3

0

我认为您的表格没有发布。

于 2013-02-14T06:23:14.597 回答
0

通常,在我们将表单数据发送到服务器之前,我们必须验证客户端和服务器端必须的表单字段。

我们jQuery or JavaScript在客户端验证使用,在这里你使用PHP所以在服务器端使用它来验证,如下

if($_GET) 
{

   if($_GET['alpha'] != NULL && !empty($_GET['alpha'])
   {

    // your code here
   }
}
else
{
    // Handle error here
}

将 $_GET 方法替换为您在表单中使用的任何表单方法。

于 2013-02-14T06:39:00.757 回答
-1

我添加了这个:

else if(!($req && $req2 && $req3 == NULL))
{
$query = NULL;
} 

之前

$result = mysql_query($query) or die(mysql_error());

现在它工作正常,我只有消息“查询为空”,这是不言自明的。感谢大家的时间和答案

于 2013-02-14T10:47:04.420 回答