編輯:添加了viewProblems的整個代碼,與實際的憑據信息只是***。試圖獲得一個PHP按鈕來刪除MySQL行
我一直試圖做這一整天,我無法弄清楚。我想要的是每行末尾的一個按鈕(該按鈕正確顯示),它允許我從MySQL數據庫和頁面中刪除該行(儘管不會刪除任何內容)。我的代碼如下:
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="utf-8">
<meta http-equiv="X-UA-Compatible" content="IE=edge">
<meta name="viewport" content="width=device-width, initial-scale=1">
<meta name="description" content="">
<meta name="author" content="">
<title>View Problems</title>
<!-- Bootstrap core CSS -->
<link href="bootstrap/css/bootstrap.min.css" rel="stylesheet">
</head>
<body>
<div class="well">
<div class="container">
<div class="page-header">
<h1>Jimmy's Laundry</h1>
</div>
<ol class="breadcrumb">
<li><a href="index.html">Home</a></li>
<li><a href="login.html">Login</a></li>
<li><a href="adminPage.php">Admin page</a></li>
</ol>
</div>
</div>
<?php
$servername = "***";
$username = "***";
$password = "***";
$dbname = "***";
// Create connection
$conn = new mysqli($servername, $username, $password, $dbname);
// Check connection
if ($conn->connect_error)
{
die("Connection failed: " . $conn->connect_error);
}
$sql = "SELECT problem_id, machine_id, description FROM tbl_problem";
$result = $conn->query($sql);
if ($result->num_rows > 0)
{
echo '<table class="table table-hover"><tr><th>Problem ID</th><th>Machine Number</th><th>Problem Description</th><th> </th></tr>';
while($row = $result->fetch_assoc())
{
echo "<tr><td>" . $row['problem_id']. "</td><td>" . $row['machine_id']. "</td><td>" . $row['description']. "</td><td><form action='deleteProblem.php?name=" . $row['problem_id']."' method= 'post'><input type='hidden' name='id' value=".$row['problem_id']."><input class ='btn btn-danger' type='submit' name='submit' value='Resolved?'></form></td></tr>";
}
echo "</table>";
}
else
{
echo "There are no problems! :)";
}
?>
</table>
</body>
對於我的主頁,viewProblems.php。我deleteProblem.php頁面如下:
<?php
$query= "DELETE FROM tbl_problem WHERE problem_id={$_POST['id']}";
mysql_query ($query);
if (mysql_affected_rows() == 1)
{
echo "<strong>Row has been deleted</strong>"
}
else
{
echo "<strong>Deletion Failed</strong>"
}?>
我一直在瀏覽本網站和谷歌,而我試圖得到它的工作,但它只是不會。該頁面正確加載表格,但是當我點擊該按鈕時,它將我從網站/ viewProblems.php帶到website/deleteProblem.php?name = 9(或者10,11,12,13,取決於我按下哪個按鈕)但該頁面只是空白區域,數據庫不會更新。
任何幫助,將不勝感激。
P.S.我知道mySQL_方法已過時,但我們必須使用它們。
你可能會被困在不得不使用mysql _ *()函數的地方,但是這不會使你無法編寫[sql注入攻擊](http://bobby-tables.com) - 無害代碼。你只是假設你的查詢永遠不會失敗。你檢查mysql_errors()嗎?你不會顯示你連接到數據庫的方式/方式,所以我們知道你的刪除查詢根本不會被執行。 – 2014-12-01 20:53:52
開始調試:在執行之前調用'deleteProblem.php'的頂部'print_r($ _ POST);' – 2014-12-01 20:55:37
Echo'$ query'。你會看到確切的查詢,因爲它將被執行。嘗試使用像'mysql_error()'這樣的函數來獲取錯誤信息。你也可以嘗試在PHPMyAdmin中執行該查詢,看看它是否可以在那裏工作。 – GolezTrol 2014-12-01 20:56:12