我的Web应用程序上有许多注册页面,并且有许多文本框,它们的形式将输入的值压入另一个将其写入数据库的php页面。它的代码看起来像这样
<form action = "submitEvent.php" method = "post">
Event Name: <br>
<input type = "text" name = "eventname" >
<br>
Event Type: <br>
<input type = "text" name = "eventtype" >
<br>
Charity Number: <br>
<input type = "text" name = "charityid" >
<br>
Contact Details: <br>
<input type = "text" name = "contactdetails" >
<br>
Location: <br>
<input type = "text" name = "eventlocation" >
<br>
Date : <br>
<input type ="date" name ="eventdate">
<br>
<input type = "submit" value = "Submit">
</form>
,然后SubmitEvent.php文件如下所示
<?php
$eventname = filter_input(INPUT_POST, 'eventname');
$eventtype = filter_input(INPUT_POST, 'eventtype');
$charitynumber = filter_input(INPUT_POST, 'charityid');
$contactdetails = filter_input(INPUT_POST, 'contactdetails');
$eventlocation = filter_input(INPUT_POST, 'eventlocation');
$eventdate = filter_input(INPUT_POST, 'eventdate');
$servername = "localhost";
$username = "root";
$password = "";
$dbname = "fyp";
//Create new connection
$conn = new mysqli($servername, $username, $password, $dbname);
//Check connection
if ($conn->connect_error) {
die("Connection failed: " . $conn->connect_error);
}
echo "Connected successfully";
$sql = "INSERT
INTO event (eventname, eventtype, charityid, contactdetails, location, date) VALUES ('$eventname', '$eventtype', '$charitynumber', '$contactdetails', '$eventlocation', '$eventdate')";
if ($conn->query($sql) === TRUE) {
echo "New record created succesfully";
} else {
echo "Error: " . $sql . "<br>" . $conn->error;
?>
因为我有很多这样的页面,有没有更简单的方法?我可以将其放入一页吗?
答案 0 :(得分:1)
是的,所有这些都可以放在一页中。您可以使用isset($ _ POST)来检查是否有可用数据,然后进行处理。 但是调制(具有单独的文件)使操作变得容易。当差异文件中包含php和html代码时,它有助于调试。
答案 1 :(得分:1)
您可以检查表单是否已提交并采取相应措施。
要检查是否已提交表单,可以检查是否设置了$_POST['Submit']
。
<?php
if(isset($_POST['Submit'])){
/* PHP code here */
}
?>
<!-- And point the form to submit to itself. -->
<form action="thisPage.php" method="post">
<!-- Rest of form here -->
答案 2 :(得分:0)
最基本的方法是在表单中添加一个隐藏字段,然后在表单页面上检查php中的内容。
HTML
<form action = "form_page.php" method = "post">
<input type="hidden" name="submitted" value="1">
.....
</form>
PHP:
<?php
if(isset($_POST["submitted"])){
/*PHP processing code goes here*/
}
?>