[英]Form stopped submitting into database
好吧,它以前工作過。...現在突然停止了。 我不確定為什么。 我添加的唯一內容是刪除功能。此后它不再提交。 我可以通過= D刪除條目
表單的php代碼
<?php
if (isset($_POST['submit'])){
$con = mysql_connect("localhost", "", "");
if (!$con){
die("Cannot connect:" . mysql_error());
}
$Firstname = $_POST['Firstname'];
$Email = $_POST['Email'];
$Prayer = $_POST['Prayer'];
//if there is no input these messages will come up//
if($Firstname==''){
echo "<script>alert('Please enter your name!')</script>";
exit();
}
if($Email==''){
echo "<script>alert('Please enter your email!')</script>";
exit();
}
if($Prayer==''){
echo "<script>alert('Please enter your prayer request!')</script>";
exit();
}
mysql_select_db("dxh6110",$con);
//if everything is good, information will be submitted to database
$sql = "INSERT INTO ChurchPrayer (Firstname, Email, Prayer) VALUES('$_POST[Firstname]','$_POST[Email]','$_POST[Prayer]')";
if(mysql_query($sql,$con)){
echo "<script>alert('Congratulations, You have successfully submitted your prayer requests. You will hear from us very soon!')</script>";
}
mysql_close($con);
}
?>
哦,我知道我應該使用准備好的語句來防止SQL注入...但是我不確定它到底是什么還是它的外觀。 當我進一步進入學校項目時,我一定會在以后添加它們。 目前擔心該功能。
不知道還需要添加什么...我將添加我的delete.php
<?php session_start(); //starting the session?>
<?php
//connecting to database
$con = mysql_connect("localhost","","","dxh6110");
//defining variable
$delete_id = $_GET['del'];
//command to remove input from SQL DB
$query = "delete from ChurchPrayer where id='$delete_id'";
if(mysql_query($con,$query)){
echo "<script>window.open('view_prayers.php?deleted=User has been deleted!','_self')</script>";
}
?>
我的管理員登錄有效,當管理員登錄時,將他們帶到一個頁面,該頁面將允許他們查看條目並刪除對數據庫所做的條目。 當前有兩個,但是當我嘗試添加更多請求時...。它們不會進入數據庫。 單擊提交時沒有錯誤。
首先, ("localhost","xxx","xxx","xxx")
並沒有您的想法。
mysql_connect()
需要3個參數,而不是4個參數。第四個用於其他參數。 四個參數是與mysqli_connect()
一起使用的參數,但是這些不同的MySQL API不會相互混合,因此,如果要使用mysql_
函數,請不要使用該連接方法。
請教:
與您在其他問題中所做的一樣:
$con = mysql_connect("localhost", "xxx", "xxx");
if (!$con){
die("Cannot connect:" . mysql_error());
}
mysql_select_db("your_db",$con);
然后這個if(mysql_query($con,$query)){
連接到第二位。
另外, $_GET['del']
?deleted=User
$_GET['del']
和?deleted=User
檢查。 這是對我而言突出的兩件事。
如果您的刪除鏈接為?deleted=XXX
,則需要為?del=XXX
XXX為例。
$_GET['del']
需要與您方法中?parameter
中的參數匹配。
即:如果view_prayers.php
是您用來刪除文件的文件, view_prayers.php?del=XXX
。
另外,如評論中所述,此方法是不安全的。
最好將mysqli
與預處理語句一起使用,或者將PDO與預處理語句一起使用 。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.