我有一个将数据输入数据库的表格。问题是单击保存按钮后,表单将数据发送到数据库,但未在index-admin.php页面上的“ functions.php”文件中的会话变量中显示已保存的消息。
index-admin.php
<?php
include("functions.php");
?>
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>Admin Side</title>
<link rel="stylesheet" type="text/css" href="style.css" >
</head>
<body>
<h3>Admin Side</h3>
<?php if(isset($_SESSION['msg'])): ?>
<div class="msg">
<?php
echo $_SESSION['msg'];
unset($_SESSION['msg']);
?>
</div>
<?php endif ?>
<form method="POST" action="">
<div class="input-group">
<label>Nume</label>
<input type="text" name="nume">
</div>
<div class="input-group">
<label>Prenume</label>
<input type="text" name="prenume">
</div>
<div class="input-group">
<label>Email</label>
<input type="text" name="email">
</div>
<div class="input-group">
<label>Password</label>
<input type="text" name="pass">
</div>
<div class="input-group">
<label>Rol</label>
<input type="text" name="rol">
</div>
<div class="input-group">
<button type="submit" name="save" class="btn">Save</button>
</div>
</form>
functions.php
<?php
session_start();
//connect to the database
$server="server_name";
$user="user_name";
$pass="password";
$database="db";
$conn= mysqli_connect ($server, $user, $pass, $database);
if(!$conn){
die("Connection failed: " . mysqli_connect_error() );
}
else {
echo "";
}
if(isset($_POST['save'])) {
$nume=mysqli_real_escape_string($conn,$_POST['nume']);
$prenume=mysqli_real_escape_string($conn,$_POST['prenume']);
$email=mysqli_real_escape_string($conn, $_POST['email']);
$pwd=mysqli_real_escape_string($conn, $_POST['pass']);
$rol=mysqli_real_escape_string($conn, $_POST['rol']);
$sql="INSERT INTO utilizatori (nume,prenume,email,pass,rol) VALUES (?,?,?,?,?);";
$stmt=mysqli_stmt_init($conn);
if(!mysqli_stmt_prepare($stmt, $sql)){
echo "Error";
}
else{
mysqli_stmt_bind_param($stmt, 'sssss',$nume,$prenume,$email,$pwd,$rol);
mysqli_stmt_execute($stmt);
$_SESSION['msg'] = 'Date inserate!';
header('Location:index-admin.php');
}
}
我试图删除未设置的功能,但是如果这样做,则始终显示会话消息,并且我希望仅在插入数据(单击保存按钮)之后才显示该会话消息。