Я бы хотел, чтобы кнопка удаляла запись в таблице рядом с ней. Но я скоро приду. Кажется, я печатаю что-то не так, вот моя попытка:
<td><a href="delete-quote.php?id=<?php echo $row['id'];?>"><button class="btn-danger-dark">Delete</button></a></td>
но он, похоже, не работает. Я получаю сообщение об ошибке ELSE
Я пробовал небольшие изменения, но не влиял. Я уверен, что это что-то маленькое, что мне не хватает.
мой код delete-quote.php:
<?php
$id = $_GET['id'];
//Connect DB
// on success delete : redirect the page to original page
$dbname = "siyakhat_ibroker";
$conn = mysqli_connect("localhost", "siyakhat_root", "*****", $dbname);
// Check connection
if (!$conn) {
die("Connection failed: " . mysqli_connect_error());
}
// sql to delete a record
$sql = "DELETE FROM prerequest WHERE id = $id";
if (mysqli_query($conn, $sql)) {
mysqli_close($conn);
header('Location: manage-quotes.php');
exit;
} else {
echo "Error deleting record";
}
?>
ОБНОВИТЬ
my dbconnect.php
<?php
$mysql_hostname ="localhost";
$mysql_user ="siyakhat_root";
$mysql_password ="****";
$mysql_database ="siyakhat_ibroker";
$prefix = "";
$bd = mysql_connect($mysql_hostname, $mysql_user, $mysql_password) or die("Could not connect database");
mysql_select_db($mysql_database, $bd) or die("Could not select database");
?>
Вы пытались создать соединение db?
dbCon.php
define('HOST','localhost');
define('USER','root');
define('PASS','your_pass_here');
define('DB','siyakhat_ibroker');
$con = mysqli_connect(HOST,USER,PASS,DB) or die('Unable to Connect to the DB');
то ваш файл delete-quote.php должен выглядеть так:
include(dbCon.php);
$id = $_GET['id'];
$action = $_GET['action'];
$tableName = 'prerequest';
if($action=='delete'){
//deleting row
$sql = "DELETE FROM $tableName WHERE id='$id'";
$r = mysqli_query($con,$sql);
if($r){
$status="success";
//assuming this file is in your root folder
header('Location: manage-quotes.php');
}else{
$status="error ".mysqli_error($con) . ": " . mysqli_error($con);
}
echo $status;
}mysqli_close($con);
затем вызовите его с помощью: delete-quote.php? id = 1 & action = delete
Я рекомендую использовать динамическое использование, такое как Ajax, вместо статики в вашей кнопке, создавая ваши события onClick с помощью jQuery и динамически удаляя строки с помощью вызовов ajax.
Надеюсь, что это работает. ура
Из delete-quote.php замените "$ sql" следующим образом:
$sql = "DELETE FROM prerequest WHERE id = '".$id."'";
Просто используйте это решение
<?php
$servername = "localhost";
$username = "siyakhat_root";
$password = "";
$dbname = "siyakhat_ibroker";
$id = isset($_GET['id']) ? $_GET['id'] : '';
// Create connection
$conn = new mysqli($servername, $username, $password, $dbname);
// Check connection
if ($conn->connect_error) {
die("Connection failed: " . $conn->connect_error);
}
// sql to delete a record
$sql = "DELETE FROM prerequest WHERE id = $id";
if ($conn->query($sql)) {
mysqli_close($conn);
header('Location: manage-quotes.php');
exit;
} else {
echo "Error deleting record";
}
?>