2012-01-25 3 views
0

Я использую PHP для отображения того, что находится в моей базе данных MYsql в таблице. Я бы хотел добавить кнопку «Удалить», я не знаю, как это сделать. Я хочу, чтобы кнопка удаления сразу после последнего столбца. Вот мой код.MYsql в таблице HTML. Удалить строку

<?php 
$db_host = 'localhost'; 
$db_user = 'root'; 
$db_pwd = ''; 

$database = 'coins_gage'; 
$table = 'coins'; 

if (!mysql_connect($db_host, $db_user, $db_pwd)) 
    die("Can't connect to database"); 

if (!mysql_select_db($database)) 
    die("Can't select database"); 

// sending query 
$result = mysql_query("SELECT * FROM {$table}"); 
if (!$result) { 
    die("Query to show fields from table failed"); 
} 

$fields_num = mysql_num_fields($result); 

echo "<h1>Table: {$table}</h1>"; 
echo "<table border='1'><tr>"; 
// printing table headers 
for($i=0; $i<$fields_num; $i++) 
{ 
    $field = mysql_fetch_field($result); 
    echo "<td>{$field->name}</td>"; 
} 
echo "</tr>\n"; 
// printing table rows 
while($row = mysql_fetch_row($result)) 
{ 
    echo "<tr>"; 

    // $row is array... foreach(..) puts every element 
    // of $row to $cell variable 
    foreach($row as $cell) 
     echo "<td>$cell</td>"; 

    echo "</tr>\n"; 
} 
mysql_free_result($result); 
?> 

ответ

1

Здесь вы должны сделать несколько вещей, чтобы сделать интерфейс удобным для пользователя и выполнить свою задачу. Если я суммирую шаги, которые вам нужно сделать, это так.

1) Удостоверьтесь, что вы держите свою таблицу в форме с методом POST. И добавьте следующие скрытые элементы непосредственно перед закрытием тега FORM.

<input type="hidden" name="hidDelete" id="hidDelete" value="" /> 

2) Добавить заголовок столбца в таблицу, изменяя этот раздел.

// printing table headers 
for($i=0; $i<$fields_num; $i++) 
{ 
    $field = mysql_fetch_field($result); 
    echo "<td>{$field->name}</td>"; 
} 
echo "<td>Delete</td>"; 
echo "</tr>\n"; 

3) Добавить кнопку удаления всех строк.

foreach($row as $cell) 
    echo "<td>$cell</td>"; 
echo "<td><input type=\"button\" value=\"Delete\" onclick=\"deleteThis({$field->id})\" /></td>" 
echo "</tr>\n"; 

4) Создать яваскрипт функции, чтобы сделать запрос удаления. Перед отправкой данных вы должны установить скрытое значение. Если вы используете javascript-библиотеку, такую ​​как jquery, это будет намного проще. Поскольку я не знаю, какую библиотеку вы используете, я объясню в чистом javascript.

<script type="text/javascript"> 
function deleteThis(id) 
{ 
    document.getElementById("hidDelete").value = id; 
    document.yourFormName.submit(); 
} 
</script> 

5) После того, как вы получите запрос на почту на вашу страницу, сделать удаление, прежде чем сделать выбор запросов.

if(isset($_POST["hidDelete"]) $_POST["hidDelete"] != "") 
{ 
    $rowID = $_POST["hidDelete"]; 
    // Write your delete queries 
} 
+0

Мой ответ не отформатирован хорошо. Кто-то, пожалуйста, отредактируйте его. Благодарю. –

+0

Ответ хороший, только я упростил бы его, представив окно выбора в форме («выбранное» значение будет удалено) – alfasin

Смежные вопросы