2

规格:

  • 我有一个将结果作为 PHP 变量输出的网络表单。

  • 使用 RSForm Pro

  • Joomla!2.5.14

  • 管理员电子邮件输出

例子:

'修改输出布局':

To Approve this request, Please Add it to the Calendar:

http:///phpt/getform.php?name={Name:value}&dateFrom={from:value}&dateTo={until:value}

输出:

To Approve this request, Please Add it to the Calendar:

http:///phpt/getform.php?name=Josh Thomson&dateFrom=...etc

问题:

变量以空格输出。由于变量被附加到 URL,我希望使用正确的编码对变量进行编码。例如%20,对于“空格”,最终输出将如下所示:

To Approve this request, Please Add it to the Calendar:

http:///phpt/getform.php?name=Josh%20Thomson&dateFrom=...etc

我只使用 PHP,所以请您指定一个将采用变量并返回编码变量的解决方案...我假设它看起来类似于这样:

$encodnameval = encodeurl($_POST['form']['name']);

非常感谢任何帮助,谢谢!乔希。

编辑:上面的代码已更改,但仍然无法正常工作。

输出到 URL:

http:///phpt/getform.php?name=$encodnameval&dateFrom=...etc

需要使用 RSForms。

4

4 回答 4

3
urlencode($string)

正是您要找的。 http://de2.php.net/manual/en/function.urlencode.php

或者如果这是您需要替换的唯一字符,则只需用 %20 替换所有空格

于 2014-03-04T13:30:04.870 回答
1

我发现自动编码是在浏览器中完成的,所以一个静态超链接:

http://mywebsite.org/phpt/myscript.php?name={Name:value}&dateFrom={from:value}&dateTo={until:value}

是链接生成有效 URL 所必需的。

在 rsforms 中,这意味着在“源代码编辑器”中编写 URL 的 HTML 部分,在文本编辑器中编写字符串元素,以及 Whoila!有用!

http://amazewebs.com/demo = 显示我的脚本使用 POST 方法代替。

于 2014-07-11T14:52:00.360 回答
1

正如马林所说urlencode(),它将为你工​​作..

如下使用它..

假设你想发送这个

 $name = 'Josh Thomson';  // $name = $_POST['form']['Name'];
 $url = 'http://phpt/getform.php?name='.$name;

你需要做的是..

$name = urlencode('Josh Thomson'); // $name = urlencode($_POST['form']['Name']);
$url = 'http://phpt/getform.php?name='.$name;

然后它会自动变得安全..喜欢

http://phpt/getform.php?name=Josh%20Thomson

随意问任何问题..

于 2014-03-04T13:36:25.633 回答
0

所以这对你有用: $name = urlencode($_POST['name']); $encodnameval = 'Name: '.$name;

于 2014-03-04T13:35:34.733 回答