无法在php中编码和解码Url

时间:2017-04-26 08:21:30

标签: php

我创建了一个表单,并通过URL将动态信息传递到下一页。

edit_user.php

<form class="w3-container " action='urlencode(edit_action.php?edit_id=<?php echo $edit_id); ?>' method='post' name="form"  id="form-e" role="form">

网址视图: http://localhost/gst_work/bank/edit_user.php?edit_id=64

我正在尝试通过urlencode()函数对Url进行编码以保护数据

代码

{{1}}

每次都会返回分号错误。

我还希望在下一页中获取此网址值,即 edit_action.php 页面。如何通过decodeurl()函数实现这一点,现在我直接使用$ _GET ['edit_id']方法。

除了encodeurl或session之外,在php中处理和保护URL数据有什么不同的方式?

2 个答案:

答案 0 :(得分:0)

你的语法错了。这是正确的语法

<form class="w3-container " action='edit_action.php?edit_id=<?= urlencode($edit_id); ?>' method='post' name="form"  id="form-e" role="form">

urlencode是一个PHP函数,应该在PHP标记内。

要访问edit_id中的edit_action.php参数,请使用filter_input()等过滤功能,并避免直接访问$_GET$_POST等超全局数组。 / p>

在您的情况下,filter_input(INPUT_POST, 'edit_id');,因为您已将表单方法设置为post。

答案 1 :(得分:0)

为什么要对整个网址进行编码,只需要对要传递的值进行编码

 <form class="w3-container " action='edit_action.php?edit_id=<?php echo urlencode($edit_id); ?>' method='post' name="form"  id="form-e" role="form">