Home > Article > Backend Development > 请帮帮忙,我贴代码了,现在不用下载文件看了。
a.php 包含一个删除选中书签的复选框function display_user_urls($url_array){ // display the table of URLs // set global variable, so we can test later if this is on the page global $bm_table; $bm_table = true;?> <br /> <form name='bm_table' action='delete_bms.php' method='post'> <table width=300 cellpadding=2 cellspacing=0> <?php $color = "#cccccc"; echo "<tr bgcolor='$color'><td><strong>Bookmark</strong></td>"; echo "<td><strong>Delete?</strong></td></tr>"; if (is_array($url_array) && count($url_array)>0) { foreach ($url_array as $url) { if ($color == "#cccccc") $color = "#ffffff"; else $color = "#cccccc"; // remember to call htmlspecialchars() when we are displaying user data echo "<tr bgcolor='$color'><td><a href=\"$url\">".htmlspecialchars($url)."</a></td>"; echo "<td><input type='checkbox' name=\"del_me[]\" value=\"$url\"></td>"; echo "</tr>"; } } else echo "<tr><td>No bookmarks on record</td></tr>";?> </table> </form><?php}
点击上面删除的复选框后,需要点击下方的删除书签<?php // only offer the delete option if bookmark table is on this page global $bm_table; if($bm_table==true) echo "<a href='#' onClick='bm_table.submit();'>Delete BM</a> | "; else echo "<font color='#cccccc'>Delete BM</font> | "; ?>
delete_bms.php 删除函数如下<?php require_once('bookmark_fns.php'); session_start(); //create short variable names $del_me = $HTTP_GET_VARS['del_me']; $valid_user = $HTTP_GET_VARS['valid_user']; do_html_header('Deleting bookmarks'); check_valid_user(); if (!filled_out($HTTP_GET_VARS)) { echo 'You have not chosen any bookmarks to delete. Please try again.'; display_user_menu(); do_html_footer(); exit; } else { if (count($del_me) >0) { foreach($del_me as $url) { if (delete_bm($valid_user, $url)) echo 'Deleted '.htmlspecialchars($url).'.<br />'; else echo 'Could not delete '.htmlspecialchars($url).'.<br />'; } } else echo 'No bookmarks selected for deletion'; } // get the bookmarks this user has saved if ($url_array = get_user_urls($valid_user)) display_user_urls($url_array); display_user_menu(); do_html_footer();?>
delete_bm函数的代码如下function delete_bm($user, $url){ // delete one URL from the database $conn = db_connect(); //此处已经包含在另一个php文件中,连接数据库是正常的 // delete the bookmark if (!$conn->query( "delete from bookmark where username='$user' and bm_url='$url'")) throw new Exception('Bookmark could not be deleted'); return true; }
bm_table.submit() 就是提交表单,bm_table是表单名,submit是表单方法。