2017-07-10 25 views
0

テーブルのすべてのデータを画面に表示するスクリプトがあります。データの各行に関連して、私は削除ボタンを持っています、そして、私はそれが好きです、任意の行のボタンがclikedされると、行が削除されます。これを行うには、次のコードがあります。クリックしたボタンに応じてデータベースから削除

$con = mysqli_connect("","","",""); 

$result = mysqli_query($con,"SELECT * FROM `clientes_pmt`"); 

while($row = mysqli_fetch_array($result)){ 
    ?> <button name="delete" value="<?php echo $row['id']; ?>" type="submit"><img src="paginas/borrar.jpg" /></button> 
    <a href="page<?php echo $row['nombre']; ?>"> 
     <div><p><?php echo $row['nombre']; ?></p></div> 
     <div><p><?php echo $row['pais']; ?></p></div> 
    </a> 
    <section class="clearboth"></section><br><?php 
} 

if(isset($_POST['delete'])){ 
    $id = $_POST['delete']; 
    $result = mysqli_query($con,"DELETE FROM `clientes_pmt` WHERE id = '$id'"); 
} 

mysqli_close($con); 

エラーは発生しませんが、行は削除されません。あなたが置くことができ、結果を表示するには

<form action="/delete.php" method="POST"> 
    <button ...> [your button] 
</form> 
+1

が。ありがとう、私はそれはあなたが歓迎されている、本当に愚かな何か –

+0

ちょうどそれを見 – alberzyzz

+1

を知っていた。 –

答えて

0

は、のようなものをform要素内にボタンを囲み、適切なactionmethod属性を設定しますheader()このコード部分の最後まで:

if(isset($_POST['delete'])){ 
    $id = $_POST['delete']; 
    $result = mysqli_query($con,"DELETE FROM `clientes_pmt` WHERE id = '$id'"); 

    header('location:your_page_where_the_rows_are.php'); 
} 
0

:あなたはこれらのラインに

$con = mysqli_connect("localhost","root","","YOUR DATABASE NAME"); 
0

$ idがクエリに追加されていない可能性があります。 ベローズを試してみませんか?

if(isset($ _ POST ['delete'])){$ id = $ _POST ['delete']; 。$結果= mysqli_query(「。。$ IDを「$詐欺、 "ID = clientes_pmt。DELETE FROM" ');}

0

使用同じページにあなたのページをリダイレクトするためのフォームタグとヘッダ はこれを試してみてください -

<?php 
$con = mysqli_connect("","","",""); 

$result = mysqli_query($con,"SELECT * FROM `clientes_pmt`"); 

while($row = mysqli_fetch_array($result)){ 
    ?> 
    <form action="" method="post" > 
    <button name="delete" value="<?php echo $row['id']; ?>" type="submit"><img src="paginas/borrar.jpg" /></button> 
    </form> 
    <a href="page<?php echo $row['nombre']; ?>"> 
     <div><p><?php echo $row['nombre']; ?></p></div> 
     <div><p><?php echo $row['pais']; ?></p></div> 
    </a> 
    <section class="clearboth"></section><br><?php 
} 

if(isset($_POST['delete'])){ 
    $id = $_POST['delete']; 
    $result = mysqli_query($con,"DELETE FROM `clientes_pmt` WHERE id = '$id'"); 
    header('location:'.$_SERVER['PHP_SELF']); 
} 

mysqli_close($con); 
?> 
あなた `
`タグと `アクションとmethod`ある?
関連する問題