Php 从数据库中删除打印结果的最佳方法
我有一个关于安全删除数据库中的行的问题。 例如,我有一个行数组并打印它。看起来像这样Php 从数据库中删除打印结果的最佳方法,php,mysql,laravel,post,get,Php,Mysql,Laravel,Post,Get,我有一个关于安全删除数据库中的行的问题。 例如,我有一个行数组并打印它。看起来像这样 text 1 - delete text 2 - delete text 3 - delete ... text n - delete 文本信息后面有一个删除链接。我的问题是,当用户单击“删除”以删除此记录时,最好的方式是什么。我听说要在文本信息的实际id上设置links href,如下所示: <a href=?toDelete=1>delete</a> 当用户点击链接时,我可以
text 1 - delete
text 2 - delete
text 3 - delete
...
text n - delete
文本信息后面有一个删除链接。我的问题是,当用户单击“删除”以删除此记录时,最好的方式是什么。我听说要在文本信息的实际id上设置links href,如下所示:
<a href=?toDelete=1>delete</a>
当用户点击链接时,我可以通过_get获得它,然后我可以通过ID删除该行。我认为这根本不是最佳实践,如果是,那么告诉我。顺便问一下,我使用的是一个Laravel框架,那么有没有使用一些内置功能的选项?我将感谢您的帮助。一种方法是在表单中使用按钮或链接:
<form action="{{ URL::route('texts.destroy', $id) }}" method="POST">
<input type="hidden" name="_method" value="DELETE">
<input type="hidden" name="_token" value="{{ csrf_token() }}">
<button>Delete text</button>
</form>
好的,如果我得到50个查询结果,我需要每个链接50个表单?为什么不呢?这对网站性能影响不大。另外,如果你想加快速度,可以使用Ajax。好的,非常感谢。我已经用Ajax代码更新了我的帖子。当然,如果您选择ajax方式,只需使用变量而不是硬编码的
1
文本id即可。我不知道如何从ajax执行sql delete查询。我认为这是不可能的,但是我可以将其传递给php代码,但是如何传递呢?你能给我举个用法的例子吗。
{!! Form::open(array('method' => 'Delete', 'route' => array('texts.destroy', $id))) !!}
<button class="btn-xs btn-danger">Delete text</button>
{!! Form::close() !!}
$.ajax({
url: '/texts/1',
type: 'DELETE',
success: function(result) {
// Do something
}
});