ホームページ  >  記事  >  バックエンド開発  >  少女は、PHP Web ページのテーブル内のレコードをクリックしたときに、データベース内の対応するレコードを削除する方法についてアドバイスを求めたいと考えています。

少女は、PHP Web ページのテーブル内のレコードをクリックしたときに、データベース内の対応するレコードを削除する方法についてアドバイスを求めたいと考えています。

WBOY
WBOYオリジナル
2016-06-23 13:43:30920ブラウズ

たとえば、PHPで書かれたWebページのテーブルは、次のように似ています。

2 Li Si 女性 削除 編集
その中で、シリアル番号、名前、性別などはすべてデータベースから直接読み取られます。

シリアル番号 1 の「削除」をクリックしたときに、シリアル番号 1 のレコード全体をデータベースから削除するにはどうすればよいですか?
(削除はhref形式で、処理ページにリンクされています。)

「削除」をクリックした際にシリアル番号を取得し、フォームPOSTで処理ページに渡したいのですが、
処理ページはデータベースを操作します。
しかし、このシリアル番号を取得する方法がわかりません~~~~~~~~~~
神様、ありがとうございます





ディスカッション (解決策) に返信します

これには、js を使用してシリアル番号を入力してフォームのフィールドに割り当てます。操作はポストを通じて実行されます。 削除の場合は、Ajax を通じて実行できます。これにより、フォームの送信時にページ全体を更新する必要がなくなります。

これには、js を使用してシリアル番号を取得し、それをフォーム内のフィールドに割り当てて操作する必要があります。役職。

削除の場合は、Ajax を介して実行できます。これにより、フォームの送信時にページ全体を更新する必要がなくなります。

削除だけでなく、ページのジャンプや処理も行われます。新しいページ。

この JS でシリアル番号を取得し、それをフォームのフィールドに割り当てる方法を教えてください...
何度も試しましたが、何も機能しません...

たとえば、次のプロンプトは行が見つからないことを示します
<a href = "delete.php ? id = ' ".$row['id']. " ' ">删除</a>


行が見つかりませんか?
シリアル番号 名前 性別 削除 編集
1 Zhang San 男性 削除編集 2 Li Si 女性 削除編集
どうやってこれらを思いついたのですか? ?生成されたコードを見てください

列列は見つかりませんでした。 ?生成されたコードを見てください???

$sqklink、
$sql="select * from users "、
$mysql_query()~~~~ を通じて読み取られます

重要なのは、これであるようです行を認識できません。 。 。

http://blog.csdn.net/MoreWindows/article/details/7102362
処理ページから ID シリアル番号を取得して処理する方法については、こちらの記事を参照してください

しかし、私はまだこのIDの取得方法がわかりません。 。 。 。




これには、js を使用してシリアル番号を取得し、それをポストを通じて操作するためにフォーム内のフィールドに割り当てる必要があります。
削除の場合は、フォームの送信時にページ全体を更新することを避けるために、Ajax を通じて実行できます


不单单是删除,类似的还有“编辑”,也是页面跳转,在新的页面中做处理。
请问,这个js获取序号怎么实现啊,还有赋值到表单中一个字段……
尝试了好多都不对……
比如以下的,提示找不到row
<a href = "delete.php ? id = ' ".$row['id']. " ' ">删除</a>

你的 程序是不是php和html混写到一起的。你在循环数组的时候就可以用数组下标当序号然后删除就想你那样写
5d4db4aa8de7814b13f436dcd473a725删除5db79b134e9f6b82c0b36e0489ee08ed你说找不到row什么意思啊。如果有报错把它完整的粘贴出来

<?php// 执行 SQL$sql="select * from users ";// 执行查询$result = mysql_query($sql);// 结果// 参见 mysql_result(), mysql_fetch_array(), mysql_fetch_row() 等。while ($row = mysql_fetch_assoc($result)) {    echo $row['序号'];    echo $row['姓名'];    echo $row['性别'];echo '<a href ="delete.php?id = '.$row['序号']. ' "   >删除</a>';}// 释放关联结果集的资源// 在脚本结束的时候会自动进行mysql_free_result($result);?>


把数据库的字段替换一下,里面的 序号   姓名  性别

?了一?例子,看看。

<?php$conn=@mysql_connect('dbhost','dbusername','dbpassword')  or die(mysql_error());mysql_select_db('dbname',$conn) or die(mysql_error());$sqlstr = "select * from users";$query = mysql_query($sqlstr) or die(mysql_error());while($thread=mysql_fetch_assoc($query)){	$result[] = $thread;}?><table><tr><td>序?</td><td>姓名</td><td>性?</td><td>?除</td><td>??</td></tr><?phpforeach($result as $row){?>	<tr>	<td><?php echo $row['id'] ?></td>	<td><?php echo $row['name'] ?></td>	<td><?php echo $row['gender'] ?></td>	<td><a href="del.php?id=<?php echo $row['id'] ?>">?除</a></td>	<td><a href="mod.php?id=<?php echo $row['id'] ?>">??</a></td></tr><?php}?></table>



这个得用js获取序号然后赋值到表单当中一个字段里通过post进行操作。
如果就是一个删除完全可以通过Ajax来实现这样就避免提交表单时整个页面都刷新



不单单是删除,类似的还有“编辑”,也是页面跳转,在新的页面中做处理。
请问,这个js获取序号怎么实现啊,还有赋值到表单中一个字段……
尝试了好多都不对……
比如以下的,提示找不到row
<a href = "delete.php ? id = ' ".$row['id']. " ' ">删除</a>

你的 程序是不是php和html混写到一起的。你在循环数组的时候就可以用数组下标当序号然后删除就想你那样写
5d4db4aa8de7814b13f436dcd473a725删除5db79b134e9f6b82c0b36e0489ee08ed你说找不到row什么意思啊。如果有报错把它完整的粘贴出来

谢谢你哈,热心人。
(原谅我不能直接贴代码,因为编程的机子无法联网……我只能尽量描述,谢谢你的耐心)
是把php和html混合在一起写的。
目前有两个网页,users.php和delete.php
其中,user.php实现了用table显示各个用户的信息,包括序号,姓名等,每条用户记录后都跟一个“删除”。实现如下:
…… <a href = "delete.php ? id = ' ".$row['id']. " ' ">删除</a> ……
序号 姓名 ……

这样就通过POST提交到href后边的delete.php了吧?
打算通过delete.php实现用这个id检索到数据库中的相应记录,然后删除:
$sql="delete * from users where id =' ". $_POST['id']. " ' ";

但是,出错提示是:POST['id']无法识别这个id,说是无效检索名。
不知道哪里出错了~~·

你这个虽然有form表单在外面。但不是post提交就是URL提交(通过地址栏提交的)所以你这句话
$sql="delete * from users where id =' ". $_POST['id']. " ' ";应该这样写
$sql="delete * from users where id =' ". $_GET['id']. " ' ";

但是,出错提示是:POST['id']无法识别这个id,说是无效检索名。这句话是不是在delete.php报出的啊?
如果你的user.php页面写不好可以参考8楼的

但是,出错提示是:POST['id']无法识别这个id,说是无效检索名。这句话是不是在delete.php报出的啊?
如果你的user.php页面写不好可以参考8楼的


对,是在delete.php中出错了
提示:Undefined index id in delete.php on line 4

我先去试试你们给的建议,谢谢你~~~

<a href="delete.php?id=<?php echo $row['id'] ?>">删除</a>

1、去掉 url 中的多余空格和引号
2、取值用 $_GET['id'],而不是 $_POST['id']
3、如果你确实想用 post 方式。那可以使用 ajax

   

把数据库的字段替换一下,里面的 序号   姓名  性别




?了一?例子,看看。

<?php<?php}?></table>





你这个虽然有form表单在外面。但不是post提交就是URL提交(通过地址栏提交的)所以你这句话
$sql="delete * from users where id =' ". $_POST['id']. " ' ";应该这样写
$sql="delete * from users where id =' ". $_GET['id']. " ' ";





<a href="delete.php?id=<?php echo $row['id'] ?>">删除</a>

1、去掉 url 中的多余空格和引号
2、取值用 $_GET['id'],而不是 $_POST['id']
3、如果你确实想用 post 方式。那可以使用 ajax



谢谢各位的耐心回复,在你们的帮助下问题已解决,小菜鸟很感激。o(∩_∩)o
其中,7,8,12,15楼的参考价值最大
<a href="delete.php?id=<?php echo $row['id'] ?>">删除</a>

这段代码是对的,为了获取当前行的id,关键是在处理页中一定要用 $_GET['id'],而且id的i是小写,
我把这个id与数据库字段Id搞混了,所以写成了 $_GET['Id'],导致一直出错。
希望对有同样困扰的人有帮助。
再次谢谢耐心回答问题的人。
声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。