10/10/2018, 13:20
Lỗi không Delete Data trong PHP . Nhờ mọi người giúp đỡ.
Xin mọi người xem code mình sai chỗ .
database
file index.php
Nhờ mọi người giúp đỡ em với
database
Code:
CREATE TABLE IF NOT EXISTS `fruit` ( `fruit_id` int(10) unsigned NOT NULL auto_increment, `name` varchar(50) NOT NULL, `variety` varchar(50) NOT NULL, PRIMARY KEY (`fruit_id`) );
Code:
<?php
$dsn = "mysql:host=localhost; dbname=fruitdb";
$username = "root";
$password ="";
try {
$pdo = new PDO ($dsn,$username,$password);
} catch (Exception $e) {
die("Could not connect to the DB
");
}
$sql = "SELECT * FROM fruit";
$result = $pdo->query($sql);
?>
<table width="400" border="0" cellpadding="3" cellspacing="1" bgcolor="#CCCCCC">
<tr>
<td colspan="4" bgcolor="#FFFFFF" align="center"><strong>Edit - Delete data in mysql</strong></td>
</tr>
<tr>
<td align="center" bgcolor="#FFFFFF"><strong>Fruit Id</strong></td>
<td align="center" bgcolor="#FFFFFF"><strong>Name</strong></td>
<td align="center" bgcolor="#FFFFFF"><strong>Variety</strong></td>
<td align="center" bgcolor="#FFFFFF"> </td>
</tr>
<?php
foreach ($result as $rows) {
?>
<tr>
<td bgcolor="#FFFFFF"><?php echo $rows['fruit_id']; ?></td>
<td bgcolor="#FFFFFF"><?php echo $rows['name']; ?></td>
<td bgcolor="#FFFFFF"><?php echo $rows['variety']; ?></td>
<td bgcolor="#FFFFFF"><a href="delete_ac.php?id=<? echo $result['fruit_id']; ?>">delete</a></td>
</tr>
<?php
}
?>
</table>
Code:
<?php
$dsn = "mysql:host=localhost; dbname=fruitdb";
$username = "root";
$password ="";
try {
$pdo = new PDO ($dsn,$username,$password);
$pdo->setAttribute(PDO::ATTR_ERRMODE,PDO::ERRMODE_EXCEPTION);
$pdo->exec('SET NAMES "utf8"');
} catch (Exception $e) {
die("Could not connect to the DB
");
}
$fruit_id=$_GET['id'];
$sql= "DELETE FROM fruit WHERE fruit_id = '$fruit_id'";
$result = $pdo->query($sql);
if($result){
echo "Deleted successfully";
echo "<br>";
echo "<a href = 'index.php'>Back to main page</a>";
}
else{
echo "ERROR";
echo mysql_error();
}
Nhờ mọi người giúp đỡ em với
Bài liên quan





$sql= "DELETE FROM fruit WHERE fruit_id = '$fruit_id'";
$fruit_id = isset($_GET['id']) ? intval($_GET['id']) : 0;
$sql= "DELETE FROM fruit WHERE fruit_id = " . $fruit_id;
Nếu server cấu hình php short tag là on thì <? echo "string"; ?> vẫn chạy đc, nhưng nếu là off thì nên sửa lại theo hướng dẫn của anti_pro
Còn về hàm intval có lỗi trên PHP < 5 thì không biết Pro lấy nguồn từ đâu? Có thể trích dẫn đc không?
Theo sự hiểu biết non kém của mình thì 3 thằng dưới đây chỉ khác nhau về speed mà thôi.
$a = 0 + $b; // Fast (but don't apply for array("a", "b")) $a = (int) $b; // Normal $a = intval($b); // SlowCòn intval bug, bạn có thể đọc một số bài viết ở đây
http://www.google.com.vn/search?q=ph...hrome&ie=UTF-8
Sau khi sửa <? thành <?php
Vậy là sai ở đâu vậy các bạn