2013-08-28 11 views
6

Mam tabelę elementów z mojej bazy danych i dla każdej pozycji chcę przycisk Usuń.Przycisk usuwania dla każdego pola

Obecnie działa, ale przycisk pokazuje numer identyfikacyjny i chcę, aby po prostu mówił "usuń".

nadal chcę to, aby usunąć na podstawie joke.ID

$result = mysqli_query($con, "SELECT joke.id, joketext, jokedate, name, email FROM joke INNER JOIN author ON authorid = author.id"); 

echo "<form action='delete1.php' method='post'> 
<table border='1'> 
    <tr> 
     <th>Joke</th> 
     <th>Date</th> 
     <th>Name</th> 
     <th>Email</th> 
     <th>Delete</th> 
    </tr>"; 

    while($row = mysqli_fetch_array($result)) { 
     echo "<tr>"; 
     echo "<td>" . $row['joketext'] . "</td>"; 
     echo "<td>" . $row['jokedate'] . "</td>"; 
     echo "<td>" . $row['name'] . "</td>"; 
     echo "<td>" . $row['email'] . "</td>"; 
     echo "<td><input type='submit' name='deleteItem' value='".$row['id']."' /></td>"; 
     echo "</tr>"; 
    } 
    echo "</table>"; 
    echo "</form></br>"; 

    mysqli_close($con); 
?> 

to delete1.php

if (isset($_POST['deleteItem']) and is_numeric($_POST['deleteItem'])) { 
     // here comes your delete query: use $_POST['deleteItem'] as your id 
     mysqli_query($con,"DELETE FROM joke WHERE id='$_POST[deleteItem]'"); 
    } 
    mysqli_close($con); 
    header('Location: joke1.php'); 
    exit(); 
?> 

bym podobnie jak przycisk, aby powiedzieć "delete"

Odpowiedz

7

Go w inny sposób. Uczynić ukryty element input następująco:

echo "<input type='hidden' name='deleteItem' value='".$row['id']."'>"; 

i zmienić istniejący do

echo "<td><input type='submit' value='Delete' /></td>"; 

to wszystko.

EDYCJA1: Będziesz musiał zachować inną formę dla każdego Dowcipu.

while($row = mysqli_fetch_array($result)) 
{ 

    echo "<tr>"; 
    echo "<td>" . $row['joketext'] . "</td>"; 
    echo "<td>" . $row['jokedate'] . "</td>"; 
    echo "<td>" . $row['name'] . "</td>"; 
    echo "<td>" . $row['email'] . "</td>"; 
    echo "<td>"; 
    echo "<form action='delete1.php' method='post'> 
    echo "<input type='hidden' name='deleteItem' value='".$row['id']."'>"; 
    echo "<input type='submit' value='Delete' />"; 
    echo "</form>"; 
    echo "</td>"; 
    echo "</tr>"; 
} 
+0

HTML w swojej * Edit1 * jest naprawdę straszne. Wystarczy umieścić formularz, ukryty przycisk wprowadzania i przesyłania w ostatniej komórce tabeli – Phil

+0

Zrobiłem to. Dzięki. – kushpf

+0

Po prostu brakowało trochę składni w EDIT1 innych niż to działa świetnie, dzięki –

0

Użyj prostego sposobu

echo "<td><input type='button' value='Delete' onclick='javascript:location.href=\'delete1.php?id=" .$row['id']. "\'' /></td>"; 

delete1.php

if(isset($_GET['id']) and is_numeric($_GET['id'])) 
Powiązane problemy