2016-12-04 25 views
0

を削除しようとしている私は私のDBから表示する項目のリストを持っていると私は、削除機能を使用しようとすると、私はエラーを取得しながら:未定義のインデックス

Notice: Undefined index: id in C:\wamp\www\delete.php on line 3 

私のコード。
Delete.php

<?php 
include('db.php'); 
if($_POST['id']) 
{ 
$id=mysql_real_escape_string($_POST['id']); 
$delete = "DELETE FROM `cart` WHERE id='$id'"; 
mysql_query($delete); 
}   
?> 

リスト部のインデックス。

<div class="container"> 

    <?php 
    mysql_connect("localhost", "root", "") or die("Connection Failed"); 
    mysql_select_db("cart")or die("Connection Failed2"); 
    $query = "SELECT * FROM products" or die("Connection Failed2"); 
    $result = mysql_query($query) or die("error"); 
    while($row = mysql_fetch_array($result)) 
    { 
    $id1=$row['id']; 
    $name=$row['product_name']; 
    ?> 
    <div class="show"> 
    <span class="name"><?php echo $name; ?></span> 
    <span class="action"><a href="delete.php" id="<?php echo $id1; ?>" class="delete" title="Delete">Delete</a></span> 
    </div> 
    <?php 
    } 
    ?> 
    </div> 
+0

使用する$ _GET [ 'ID']; delete.php –

+0

では、mysql関数は廃止され、攻撃に対して開放されているので、mysql_ *の代わりにmysqli_ *を使用することを検討するべきです。 –

答えて

0

変更このライン

<a href="delete.php?id=<?php echo $id1; ?>" class="delete" title="Delete">Delete</a> 

代わりの

<a href="delete.php" id="<?php echo $id1; ?>" class="delete" title="Delete">Delete</a> 

そして

if($_GET['id']) 

代わりの

if($_POST['id']) 

完全なコード

<?php 
include('db.php'); 
if($_GET['id']) 
{ 
$id=mysql_real_escape_string($_GET['id']); 
$delete = "DELETE FROM `cart` WHERE id='$id'"; 
mysql_query($delete); 
}   
?> 

そして

<div class="container"> 

    <?php 
    mysql_connect("localhost", "root", "") or die("Connection Failed"); 
    mysql_select_db("cart")or die("Connection Failed2"); 
    $query = "SELECT * FROM products" or die("Connection Failed2"); 
    $result = mysql_query($query) or die("error"); 
    while($row = mysql_fetch_array($result)) 
    { 
    $id1=$row['id']; 
    $name=$row['product_name']; 
    ?> 
    <div class="show"> 
    <span class="name"><?php echo $name; ?></span> 
    <span class="action"><a href="delete.php?id=<?php echo $id1; ?>" class="delete" title="Delete">Delete</a></span> 
    </div> 
    <?php 
    } 
    ?> 
    </div> 
+0

そして、$ _POSTの代わりに$ _GETを確認してください。 –

+0

変更されて、delete.phpのGETが変更されましたが、同じエラーが発生しました –

+0

@VadimasDružinin$ id = mysql_real_escape_string($ _ POST ['id']);あなたもその行を変更しましたか? –

関連する問題