用户在第 1 页填写表格。表格通过 POST 提交到第 2 页。第 2 页使数据库插入,但需要插入存储在会话变量中的用户 ID,因此我需要启动会话以获取该会话变量,但这会阻止我在末尾使用标头重定向来停止重新提交。我不想将用户 ID 设置为第 1 页上的隐藏输入,因为这很容易被欺骗。我显然在做一些不符合最佳实践的事情,我应该怎么做?
<?php
@session_start();
require_once '../Classes/Communication.php';
require_once '../Classes/Communication_db.php';
$noteDate=$_POST["noteDate"];
$noteContact = $_POST["noteContact"];
$note= $_POST["note"];
$custID = $_POST["custID"];
$comm = new Communication();
$comm->setCustomerID($custID);
$comm->setCommunicationDate(date("Y-m-d", strtotime($noteDate)));
$comm->setCustomerContactID($noteContact);
$comm->setNotes($note);
$comm->setUserID($_SESSION["userID"]);
Communication_db::saveCommunication($comm);
header("Location: ./index.php?action=newCustomer",303);
?>