第一: 是的mysqli很棒,我不能用它。
现在: 我写了一个代码,一旦调用应该删除一个特定的记录,它执行,没有错误,输出消息甚至出来,但它不会删除记录。
为什么呢?我怎样才能解决这个问题?
到目前为止,我没有看到任何错误:
<?php
if(isset($_POST['Delete']))
{
$connection = mysql_connect("Deleted login info");
// Check connection
if (!$connection)
{
//echo "Connection failed: " . mysql_connect_error();
}
else
{
//select a database
$dbName="Katz";
$db_selected = mysql_select_db($dbName, $connection);
//confirm connection to database
if (!$db_selected)
{
die ('Can\'t use $dbName : ' . mysql_error());
}
else if ($_POST[KittenID]=='')
{
$OutputMessage = 'Must add a Kitten-ID';
}
else
{//exeption else
{//main else
$sql = "DELETE FROM Kittenzz WHERE KittenID='$_POST[KittenID]";
$retval = mysql_query($sql, $connection);
if(!$retval )
{
$OutputMessage = 'RECORD DOES NOT ALLOW DELETION';
}
$OutputMessage = 'RECORD DELETED';
mysql_close($connection);
}//main else
}//exception else
}
mysql_close($connection);
}
?>
我可以从别人那里看一眼吗?
答案 0 :(得分:2)
其他人说了什么,但是 - 你的筑巢是关闭的。例如,以下嵌套不正确:
else
{ //exeption else
{ //main else
你无法启动&#34; main&#34;那里 - 整个例外都包含在主要内容中,或者主要不存在。
删除&#34; main&#34;的开始和结束括号,或在其前面添加一个声明。
根据评论,显然这在PHP中被接受/忽略。所以,替换我的&#34; can&#t; t&#34;与#34;可能不应该,因为它看起来很奇怪而没有任何用处&#34;。
答案 1 :(得分:0)
$sql = "DELETE FROM `Kittenzz`
WHERE `KittenID`='".$_POST['KittenID']."'";
试试这个
答案 2 :(得分:0)
您在查询中错过了一个单引号。
$sql = "DELETE FROM Kittenzz
WHERE KittenID='$_POST[KittenID]";
请试试这个:
$sql = "DELETE FROM Kittenzz
WHERE KittenID='".$_POST['KittenID']."';";
答案 3 :(得分:0)
我认为你错过了删除sql末尾的结束。您也没有连接$ _POST [KittenID]变量,只是将其粘贴在字符串的末尾。所以:
$sql = "DELETE FROM Kittenzz
WHERE KittenID='$_POST[KittenID]";
变为:
$sql = "DELETE FROM Kittenzz
WHERE KittenID='" . $_POST[KittenID]. "'";
答案 4 :(得分:0)
您的代码中存在错误:
首先改变这个:
if ($_POST[KittenID]=='')
到此:
if ($_POST['KittenID']=='')
和此:
$sql = "DELETE FROM Kittenzz WHERE KittenID='$_POST[KittenID]";
到此:
$sql = "DELETE FROM Kittenzz WHERE KittenID='" . $_POST['KittenID'] . "'";
答案 5 :(得分:0)
您的查询似乎缺少关闭字符\'。
你的:
"DELETE FROM Kittenzz WHERE KittenID='$_POST[KittenID] ";
应该是:
"DELETE FROM Kittenzz WHERE KittenID='$_POST[KittenID]' ";
BTW:@vivek代码更优雅。
干杯