php实现下面的删除操作 学期ID 学期名 操作52 2007-2008第一学期 删除51 2006-2007第二学期 删除请问这个代码怎么实现,点删除就能删除对应的那一行!回复的都谢了啊! 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 <a href="del.php?del=".$row['id']>删除</a>建个del.php页面。核心代码如下: if(mysql_query("delete from 表名 where id = ".$_GET[del])){ echo "删除成功";。。 页面和数据库是分别执行的,看你两个帖子,感觉你没分清楚客户端和服务器端的问题你要明白,虽然测试的时候可能是同一台机器但最终发布后,php和浏览者是在两台机器上分别操作哦,不可能同时无间断互传参数页面用js隐藏或者innerHTML改写内容实现“删除”数据库需要一次提交过程,执行sql的delete语句(也可通过ajax完成)另一种是以前的方法,先提交执行数据库del,然后再返回页面刷新 恩,给我来点代码啊,我是php新手,就是怎么删除对应行的信息, 1.我承认,我懒2.自备案实施以来,就几乎没再写过数据库和js的咚咚,忘得差不多了<div id="abc" style="display:block"><a href="javascript:fun(this);">删除</a> 某些文字 </div><script language="javascript">function fun(el){el.style.display='none';//下面是ajax提交,现在写不出了,呵呵;或者先执行ajax,判断返回再执行上一句隐藏}</script> 现在html页用JS写个判断是否删除的提示框function check(){ var flag=-1; //判断是否有复选框被选中,hid[]为删除按钮的name var cks= document.getElementsByName("hid[]"); var key= cks.length; for(var i=0;i<key;i++) { if(cks[i].checked==true) { flag=1; return window.confirm( "请确认是否删除? ") break; } } if(flag==-1) { alert("请选择要删除的信息"); return false; }}然后根据显示数据表格的form action="你的PHP删除页的代码"删除按钮 ,传一个ID给PHP删除页<input type="checkbox" name="hid[]" value="要删除信息的ID">然后在PHP里删除就OK了 我这有个例子你看下吧{{if !empty($list)}} {{foreach item=item from=$list }} <tr align="center" class="shu"> <td><input type="checkbox" name="hid[]" value="ID"></td> <td>33</td> <td>22</td> <td>11</td> </tr> {{/foreach}} {{else}} <tr> <td colspan="8">没有数据</td> </tr>{{/if}}$list为从数据库中读出的数据,通过foreach循环显示在表格里 具体代码搜索 php crud 操作 <?php /** * 自动化数据表操作类 * @author 小蔡 <[email protected]> * @version 1.0 */ class cls_crud extends cls_database { /** * 数据表名 * @var string */ private $table = ''; /** * 构造函数 * @param array $config 配置变量 */ public function __construct($config) { if(!emptyempty($config)) { foreach($config as $cf => $val) { $this->$cf = $val; } } parent::__construct(); } /** * 设置数据表(例如:在操作的过程中需要改变数据表,就可以使用此方法) * @param string $table */ public function set_table($table) { $this->table = $table; } /** * 读取一条记录 * @param string $id 主键 * @param string $fields 获取字段 * @return array */ public function read($id, $fields='*') { $sql = "SELECT {$fields} FROM `{$this->table}` WHERE `id`='{$id}'"; $this->query($sql); return $this->fetch_one(); } /** * 插入一条记录 * @param array $array 数组 * @return bool */ public function insert($array) { $fields = array(); $values = array(); foreach($array as $f => $v) { $fields[] = "`{$f}`"; $values[] = "'".mysql_real_escape_string($v)."'"; } $fields = implode(',', $fields); $values = implode(',', $values); $sql = "INSERT INTO `{$this->table}`({$fields}) VALUES({$values})"; return $this->query($sql); } /** * 更新一条记录 * @param int $id 主键 * @param array $array 数据数组 */ public function update($id, $array) { $values = array(); foreach($array as $f => $v) { $values[] = "`{$f}`='".mysql_real_escape_string($v)."'"; } $values = implode(',', $values); $sql = "UPDATE `{$this->table}` SET {$values} WHERE id='{$id}' limit 1"; return $this->query($sql); } /** * 删除一条记录 * @param int $id 主键 * @return bool */ public function delete($id) { $sql = "DELETE FROM `{$this->table}` WHERE id='{$id}' limit 1"; return $this->query($sql); } /** * 获取分页列表的数据 * @param array $wheres where条件数组,如果下标是数字,则直接加入条件,否则组合成:`{下标}`='{值}'这样的条件。最后用and链接 * @param string $order 排序字段 * @param int $desc 是否是降序 * @param int $offset 偏移量 * @param int $limit 读取记录数 * @param int $return_total 是否返回满足条件的记录总数,默认为0,需要显示分页时可以设置为1. * @return array */ public function get_list($wheres, $order='', $desc=1, $offset=0, $limit=8, $return_total=0) { //处理where条件 if($wheres) { $where = array(); foreach($wheres as $f => $v) { if(is_numeric($f)) { $where[] = $v; } else { $where[] = "`{$f}`='".mysql_real_escape_string($v)."'"; } } $where = implode(' and ', $where); } else { $where = '1'; } //处理orderby if(!emptyempty($order)) { $order = "order by `{$order}` " . (1===$desc ? 'desc' : 'asc'); } $sql = "SELECT * FROM `{$this->table}` WHERE {$where} {$order} limit {$offset}, {$limit}"; $this->query($sql); $data = $this->fetch_all(); if($return_total) { //返回记录总数(分页) $sql = "SELECT count(*) FROM `{$this->table}` WHERE {$where}"; $this->query($sql); $total = $this->fetch_one(); return array('total'=>current($total), 'list'=>$data); } else { return $data; } } } [code=PHP]你如果要删除id为52的数据:就在删除那里做个链接,比如<a href='a.php?action=del&id=52'></a>,执行sql语句,你应该可以做吧!$action=$_GET['action'];if($action=="del"){$id=$_GET['id'];$sql="delete from tablename where id=".$id;$res=query($sql);if($res>0){<script>alert("删除成功!")</script>}大概的就是这样,哥也是菜鸟,估计这方法对新手有用}[/code] 我给你写个例子:<table width="372" border="0"> <tr> <td width="105">学期id</td> <td width="186">学期名</td> <td width="67">操作</td> </tr> <tr> <td>52</td> <td>2007-2008第一学期</td> <td><a href="delete.php?action=del&id=52"onclick="return confirm('确定要删除吗?')">删除</a></td> </tr></table>delete.phpif(isset($_POST['action']) && $_POST['action']=='del'){ $id=$_GET['id']; $sql="delete from 表名 where id=$id"; $res=mysql_query($sql);} 关于PHP采集一个页面某一个数字的问题,请高手帮忙写个正则 sqlite如何获取一段时间记录 远程下载文件的问题... 新人!帮我看下while语句是怎么执行的 system函数的奇怪现象 请问我配置完PHP环境之后,输入地址,总是下载文件 关于在搜索结果中将关键字用红色文字表示,急?加100分 排列表格问题 请教一个正则替换问题 请问那里有PHPMYADMIN下载? PHP 测试方法 请教 手机图片的上传和下载的实现
echo "删除成功";
。。
你要明白,虽然测试的时候可能是同一台机器
但最终发布后,php和浏览者是在两台机器上分别操作哦,不可能同时无间断互传参数
页面用js隐藏或者innerHTML改写内容实现“删除”
数据库需要一次提交过程,执行sql的delete语句(也可通过ajax完成)另一种是以前的方法,先提交执行数据库del,然后再返回页面刷新
恩,给我来点代码啊,我是php新手,就是怎么删除对应行的信息,
2.自备案实施以来,就几乎没再写过数据库和js的咚咚,忘得差不多了<div id="abc" style="display:block"><a href="javascript:fun(this);">删除</a> 某些文字 </div>
<script language="javascript">
function fun(el){
el.style.display='none';
//下面是ajax提交,现在写不出了,呵呵;或者先执行ajax,判断返回再执行上一句隐藏
}
</script>
现在html页用JS写个判断是否删除的提示框function check()
{
var flag=-1;
//判断是否有复选框被选中,hid[]为删除按钮的name
var cks= document.getElementsByName("hid[]");
var key= cks.length;
for(var i=0;i<key;i++)
{
if(cks[i].checked==true)
{
flag=1;
return window.confirm( "请确认是否删除? ")
break;
}
}
if(flag==-1)
{
alert("请选择要删除的信息");
return false;
}
}然后根据显示数据表格的form action="你的PHP删除页的代码"
删除按钮 ,传一个ID给PHP删除页<input type="checkbox" name="hid[]" value="要删除信息的ID">
然后在PHP里删除就OK了
{{foreach item=item from=$list }}
<tr align="center" class="shu">
<td><input type="checkbox" name="hid[]" value="ID"></td>
<td>33</td>
<td>22</td>
<td>11</td>
</tr>
{{/foreach}}
{{else}}
<tr>
<td colspan="8">没有数据</td>
</tr>
{{/if}}$list为从数据库中读出的数据,通过foreach循环显示在表格里
<?php
/**
* 自动化数据表操作类
* @author 小蔡 <[email protected]>
* @version 1.0
*/
class cls_crud extends cls_database
{
/**
* 数据表名
* @var string
*/
private $table = '';
/**
* 构造函数
* @param array $config 配置变量
*/
public function __construct($config)
{
if(!emptyempty($config))
{
foreach($config as $cf => $val)
{
$this->$cf = $val;
}
}
parent::__construct();
}
/**
* 设置数据表(例如:在操作的过程中需要改变数据表,就可以使用此方法)
* @param string $table
*/
public function set_table($table)
{
$this->table = $table;
}
/**
* 读取一条记录
* @param string $id 主键
* @param string $fields 获取字段
* @return array
*/
public function read($id, $fields='*')
{
$sql = "SELECT {$fields} FROM `{$this->table}` WHERE `id`='{$id}'";
$this->query($sql);
return $this->fetch_one();
}
/**
* 插入一条记录
* @param array $array 数组
* @return bool
*/
public function insert($array)
{
$fields = array();
$values = array();
foreach($array as $f => $v)
{
$fields[] = "`{$f}`";
$values[] = "'".mysql_real_escape_string($v)."'";
}
$fields = implode(',', $fields);
$values = implode(',', $values);
$sql = "INSERT INTO `{$this->table}`({$fields}) VALUES({$values})";
return $this->query($sql);
}
/**
* 更新一条记录
* @param int $id 主键
* @param array $array 数据数组
*/
public function update($id, $array)
{
$values = array();
foreach($array as $f => $v)
{
$values[] = "`{$f}`='".mysql_real_escape_string($v)."'";
}
$values = implode(',', $values);
$sql = "UPDATE `{$this->table}` SET {$values} WHERE id='{$id}' limit 1";
return $this->query($sql);
}
/**
* 删除一条记录
* @param int $id 主键
* @return bool
*/
public function delete($id)
{
$sql = "DELETE FROM `{$this->table}` WHERE id='{$id}' limit 1";
return $this->query($sql);
}
/**
* 获取分页列表的数据
* @param array $wheres where条件数组,如果下标是数字,则直接加入条件,否则组合成:`{下标}`='{值}'这样的条件。最后用and链接
* @param string $order 排序字段
* @param int $desc 是否是降序
* @param int $offset 偏移量
* @param int $limit 读取记录数
* @param int $return_total 是否返回满足条件的记录总数,默认为0,需要显示分页时可以设置为1.
* @return array
*/
public function get_list($wheres, $order='', $desc=1, $offset=0, $limit=8, $return_total=0)
{
//处理where条件
if($wheres)
{
$where = array();
foreach($wheres as $f => $v)
{
if(is_numeric($f))
{
$where[] = $v;
}
else
{
$where[] = "`{$f}`='".mysql_real_escape_string($v)."'";
}
}
$where = implode(' and ', $where);
}
else
{
$where = '1';
}
//处理orderby
if(!emptyempty($order))
{
$order = "order by `{$order}` " . (1===$desc ? 'desc' : 'asc');
}
$sql = "SELECT * FROM `{$this->table}` WHERE {$where} {$order} limit {$offset}, {$limit}";
$this->query($sql);
$data = $this->fetch_all();
if($return_total)
{
//返回记录总数(分页)
$sql = "SELECT count(*) FROM `{$this->table}` WHERE {$where}";
$this->query($sql);
$total = $this->fetch_one();
return array('total'=>current($total), 'list'=>$data);
}
else
{
return $data;
}
}
}
执行sql语句,你应该可以做吧!
$action=$_GET['action'];
if($action=="del"){
$id=$_GET['id'];
$sql="delete from tablename where id=".$id;
$res=query($sql);
if($res>0){
<script>alert("删除成功!")</script>
}
大概的就是这样,哥也是菜鸟,估计这方法对新手有用
}[/code]
<tr>
<td width="105">学期id</td>
<td width="186">学期名</td>
<td width="67">操作</td>
</tr>
<tr>
<td>52</td>
<td>2007-2008第一学期</td>
<td><a href="delete.php?action=del&id=52"onclick="return confirm('确定要删除吗?')">删除</a></td>
</tr>
</table>delete.phpif(isset($_POST['action']) && $_POST['action']=='del'){
$id=$_GET['id'];
$sql="delete from 表名 where id=$id";
$res=mysql_query($sql);
}