Php 如何显示空字段错误消息

Php 如何显示空字段错误消息,php,mysql,validation,Php,Mysql,Validation,我有一个页面,允许用户“创建一个主题”,打开提交此表单,然后通过验证过程将主题插入数据库并重新定向回主页。但是,如果没有填写所有字段,我希望我的验证页面“添加主题”显示一条错误消息。这是我的代码,请告诉我需要在哪里添加此验证代码以通知用户填写所有字段: // get data that sent from form $topic=$_POST['topic']; $detail=$_POST['detail']; $name=$_POST['name']; $email=$_POST['ema

我有一个页面,允许用户“创建一个主题”,打开提交此表单,然后通过验证过程将主题插入数据库并重新定向回主页。但是,如果没有填写所有字段,我希望我的验证页面“添加主题”显示一条错误消息。这是我的代码,请告诉我需要在哪里添加此验证代码以通知用户填写所有字段:

// get data that sent from form 
$topic=$_POST['topic'];
$detail=$_POST['detail'];
$name=$_POST['name'];
$email=$_POST['email'];

$datetime=date("d/m/y h:i:s"); //create date time





$sql="INSERT INTO $tbl_name(topic, detail, name, email, datetime)VALUES('$topic', '$detail', '$name', '$email', '$datetime')";
$result=mysql_query($sql);




if($result){
echo "Successful<BR>";
echo "<a href=main_forum.php>View your topic</a>";
}
else {

echo "ERROR";
}
mysql_close();
//获取从表单发送的数据
$topic=$_POST['topic'];
$detail=$_POST['detail'];
$name=$_POST['name'];
$email=$_POST['email'];
$datetime=日期(“d/m/y h:i:s”)//创建日期时间
$sql=“插入$tbl_名称(主题、详细信息、名称、电子邮件、日期时间)值(“$topic”、“$detail”、“$name”、“$email”、“$datetime”)”;
$result=mysql\u查询($sql);
如果($结果){
回声“成功
”; 回声“; } 否则{ 回声“错误”; } mysql_close();
您可以使用php GET请求将错误发送到主页面,然后显示它。

我的建议是创建一个名为验证的单独php文件,并在验证文件中添加一个函数。当然,您可以在同一个php文件中创建此函数。如果您单独使用了include语句将其放置在页面上。此外,快速返回到自身也很好,因为您可以轻松访问发布的变量,并且已经在页面上显示错误。否则,您必须在get、post或会话中返回错误。如果一切都成功,您可以在回发之后立即发布或重定向(可能是到一个成功页面),并且用户只有在出现错误时才会看到回发

include_once("Validation.php"); 
如上所示

validateNewTopic($topic, $detail, $name, $email, $datetime)
{


}
然后在内部可以使用if语句来检查条件。如果需要快速解决方案,可以创建一个变量来保存所有错误

    $Error = "<p class='errors'">;

    if ($topic == "")
    {
     $Error+="topic is required";
    }


    if ($Error != "<p class='errors'">)
    {

        return $Error +"</p>";

    }
else
{
return "";
}
$Error=”
$topic = $POST['topic'];

$Error=validateNewTopic($topic);

if ($Error != "")
{
  ?>
echo $Error
<?php
}
else {
//run sql code and show success
}