如何 laravel 在 jquery 上加密

how to laravel encrypt on jquery

我在单击按钮时附加了一个表单,因此我想在表单中加密要编辑的行的 ID。 所以我试过这样:

var txt1 = "<tr class='warning'><td>";
var text = txt1.concat(data[0].nombre,"</td><td><span class='glyphicon glyphicon-question-sign btn-lg'></span></td><td><button type='button' id='",data[0].id,"' class='btn btn-info edit' data-toggle='tooltip' data-placement='top' title='Editar'><span class='glyphicon glyphicon-pencil'></span></button></td><td><a href='",url2,"'><button type='button' class='btn btn-danger' data-toggle='tooltip' data-placement='top' title='Borrar'><span class='glyphicon glyphicon-trash'></span></button></a></td></tr><tr><td  colspan='5' style='padding:0;' class='info-",lastid, "' data-course= ",<?php echo Crypt::encrypt(",data[0].id, "))); ?>></td></tr>");
$(".publics").append(text);

但它以文本方式加密 ",data[0].id,",而不是存储在 data[0].id 上的值。

如何加密值?

看来您还没有完全理解 javascript 和 PHP 是如何一起玩的。

PHP 在您的网络服务器上运行。它接收从客户端计算机上的浏览器发送的传入请求。交给 PHP/Laravel。 Laravel 处理路由等并运行模板文件中的代码。即执行 Crypt::encrypt(",data[0].id, ")。此时字符串 ",data[0].id, " 已经被加密,即全部被加密。 然后 PHP 将响应发送回客户端计算机,浏览器在其中执行 javascript。这意味着浏览器没有机会加密字符串。它甚至无法执行 PHP 代码。

您唯一的选择是使用 javascript 库来加密 ID。如果 id 动态更改,则不能使用 PHP 代码。