таблица сообщений в базе данных имеет поля (идентификатор, дата и время, заголовок, категория, автор, изображение, сообщение), все в нижнем регистре.
Имя «категории» выбирается из опции выбора формы с помощью $ _POST не вставляется в таблицу сообщений с помощью bindValue, в то время как другое поле вставляется. этот код имеет форму, в которой категория обновляется в форме из таблицы категорий из базы данных и обновляется в элементе select option.
<div class="form-group">
<label for="CategoryTitle"><span class="FieldInfo">Choose Category </span></label>
<select class="form-control" id="CategoryTitle" name="Category">
<?php
global $ConnectingDB;
$sql = "SELECT id,title FROM category";
$stmt = $ConnectingDB->query($sql);
while($DataRows = $stmt->fetch()){
$Id = $DataRows["id"];
$CategoryName = $DataRows["title"];
?>
<option value=""><?php echo $CategoryName; ?></option>
<?php } ?>
</select>
</div>
в этой части происходит вставка в базу данных при нажатии кнопки отправки нажал, используя метод POST, поля извлекаются из формы, а затем SQL вставка запроса с использованием bindValue.
<?php
if(isset($_POST["Submit"])){
$PostTitle =$_POST["PostTitle"];
$Category=$_POST["Category"];
$Image =$_FILES["Image"]["name"];
$Target ="Uploads/".basename($_FILES["Image"]["name"]);
$PostText =$_POST["PostDescription"];
$Admin = "Rahul";
date_default_timezone_set("Asia/Kolkata");
$CurrentTime=time();
$DateTime=strftime("%B-%d-%Y %H:%M:%S",$CurrentTime);
if(empty($PostTitle)){
$_SESSION["ErrorMessage"]="Title cannot be empty";
Redirect_to("AddNewPost.php");
}elseif (strlen($PostTitle)<5) {
$_SESSION["ErrorMessage"]="Post title should be greater than 5 character";
Redirect_to("AddNewPost.php");
}elseif (!isset($_POST["Category"])) {
$_SESSION["ErrorMessage"]="category not set.";
Redirect_to("AddNewPost.php");
}
elseif (strlen($PostText)>999) {
$_SESSION["ErrorMessage"]="Post Description should not be more than 1000 character.";
Redirect_to("AddNewPost.php");
}else {
// query to insert
$sql ="INSERT INTO posts(datetime,title,category,author,image,post)";
$sql .="VALUES(:datetime,:postTitle,:categoryName,:adminName,:imageName,:postDescription)";
$stmt = $ConnectingDB->prepare($sql);
$stmt->bindValue(':datetime',$DateTime);
$stmt->bindValue(':postTitle',$PostTitle);
$stmt->bindValue(':categoryName',$Category);
$stmt->bindValue(':adminName',$Admin);
$stmt->bindValue(':imageName',$Image);
$stmt->bindValue(':postDescription',$PostText);
$Execute=$stmt->execute();
if($Execute){
$_SESSION["SuccessMessage"]="Category with id: ".$ConnectingDB->lastInsertId()." added succesfully";
Redirect_to("AddNewPost.php");
}else {
$_SESSION["ErrorMessage"]="Something went wrong.";
Redirect_to("AddNewPost.php");
}
}
}//ending of submit
?>