Php 在窗体上打印错误消息

Php 在窗体上打印错误消息,php,html,mysql,sql,mysqli,Php,Html,Mysql,Sql,Mysqli,我有一个表单,可以帮助用户将值插入数据库。我在服务器端创建了一个检查,确保数据库中没有输入重复的标题。一切正常。然而,我希望做一些修改,我希望我在语句echo“title”中打印的消息已经存在应显示在表单中标题框的前面 <form class="form-horizontal" role="form" action="insert_project1.php" enctype="multipart/form-data" method="post"> <div class=

我有一个表单,可以帮助用户将值插入数据库。我在服务器端创建了一个检查,确保数据库中没有输入重复的标题。一切正常。然而,我希望做一些修改,我希望我在语句
echo“title”中打印的消息已经存在应显示在表单中标题框的前面

<form class="form-horizontal" role="form" action="insert_project1.php" enctype="multipart/form-data" method="post">
    <div class="form-group">
        <label class="col-lg-3 control-label">Title</label>
            <div class="col-lg-8">
                <input class="form-control" name="title" value="" type="text">
            </div>
    </div>

    <div class="form-group">
        <label class="col-lg-3 control-label">Title</label>
            <div class="col-lg-8">
                <input class="form-control" name="title" value="" type="text">
            </div>
    </div>
</form>

标题
标题
insert_project1.php页面的代码

   <?php
include('session.php');

$con=mysqli_connect("localhost","root","","db");
if (mysqli_connect_errno()) 
    {
        echo "Failed to connect to MySQL: " . mysqli_connect_error();
    }

$title = mysqli_real_escape_string($con, $_POST['title']);
$categoryname = mysqli_real_escape_string($con, $_POST['categoryname']);
$goal = mysqli_real_escape_string($con, $_POST['goal']);

if($_POST) 
    {
        $title = $_POST['title'];
        $sql1 = "SELECT title from project";
        $result = mysqli_query($con, $sql1);
        if (mysqli_num_rows($result) > 0)
            {
                echo "title already exists";
            } 
        else 
            {
                $sql="INSERT INTO project (title, category, goal) VALUES ('$title', '$categoryname', '$goal')";
                if (!mysqli_query($con,$sql)) 
                    {
                        die('Error: ' . mysqli_error($con));
                    }
                header("Location: create_project.php");
                exit;
            }
    }

mysqli_close($con);
?>
html中的

<?php
   if(isset($title_error)){
?>
  <?php echo $title_error ?>
<?php } ?>
<label class="col-lg-3 control-label">Title</label>
试试这个:

session_start()
$con=mysqli_connect(“localhost”、“root”、“db”);
if(mysqli\u connect\u errno())
{
echo“未能连接到MySQL:”.mysqli_connect_error();
}
$title=mysqli\u real\u escape\u字符串($con,$\u POST['title']);
$categoryname=mysqli\u real\u escape\u字符串($con,$\u POST['categoryname']);
$goal=mysqli\u real\u escape\u字符串($con,$\u POST['goal']);
如果(美元邮政)
{
$title=$_POST['title'];
$sql1=“从项目中选择标题”;
$result=mysqli\u查询($con,$sql1);
如果(mysqli_num_行($result)>0)
{
$\会话['error\u msg']='title已经存在';
} 
其他的
{
$sql=“插入项目(标题、类别、目标)值(“$title”、“$categoryname”、“$goal”)”;
如果(!mysqli_query($con,$sql))
{
die('Error:'.mysqli_Error($con));
}
标题(“位置:create_project.php”);
出口
}
}
mysqli_close($con);
?>

标题
标题

为什么混合使用mysql/mysqli
?@Ghost-Cuz,这是新事物。OP更改了代码。
$query=mysqli\u query($sql1)顺便说一句,将失败。但你知道,对吗?@Fred ii-今天很时髦吗?哈哈。@Fred ii-这是一个打字错误,我正试图编辑这篇文章,但在编辑时遇到了问题
if (mysqli_num_rows($result) > 0)
{
    $title_error =  "title already exists";
}