在线等---PHP函数传递参数单引号与双引号

oyjoyj123 2015-07-03 05:33:07
http://software.ftp.sscmoni.com/1.png
图片上传不上去就用,麻烦大家点开看下
这个函数里面的传递的参数,就是那个红框里面,base64解密,传递的参数解密不成功,如果直接填,用单引号也不成功,用双引号成功,那个参数里面有\n换行符,双引号则生效,那么我要传递这个参数,因为这个参数是动态的,POST表单提交过来的,那么我应该怎样写呢?
<?php
class form{
public function __construct($user="username", $pass="123456", $code="123456" ){
$encryptedData = base64_decode($user);
echo("$datedate");
$decrypted = mcrypt_decrypt(MCRYPT_RIJNDAEL_128, $pass, $encryptedData, MCRYPT_MODE_CBC, "$code");
echo("$decrypted");
die;
}
}
if ( sizeof($_POST) ) {
$user = $_POST["date"] or die('内容不能为空!');
$pass = $_POST["key"] or die('内容不能为空!');
$code = $_POST["iv"] or die('内容不能为空!');
$Form = new form("$user", "$pass", "$code");
}
?>
...全文
259 4 打赏 收藏 转发到动态 举报
写回复
用AI写文章
4 条回复
切换为时间正序
请发表友善的回复…
发表回复
oyjoyj123 2015-07-03
  • 打赏
  • 举报
回复
大神们 我已经解决啦 谢谢大家帮我解决问题哦
xuzuning 2015-07-03
  • 打赏
  • 举报
回复
在base64_encode之前是有换行符的 那么 $encryptedData = base64_decode($user); 后 $encryptedData 中就有换行符 但是你 echo $decrypted; 是看不到的,因为浏览器不会将换行符表现为换行。html 的换行是 br 和 p 标记 你需要在文本状态下才能观察到
oyjoyj123 2015-07-03
  • 打赏
  • 举报
回复
引用 1 楼 xuzuning 的回复:
无论 $user 在 base64_encode 之前是什么,经过 base64_encode 之后,绝不会含有 换行符 因此不能在虚无的基础上进行讨论
在base64_encode之前是有换行符的,现在问题是 转换时,换行符没有生效,这个怎么办
xuzuning 2015-07-03
  • 打赏
  • 举报
回复
无论 $user 在 base64_encode 之前是什么,经过 base64_encode 之后,绝不会含有 换行符 因此不能在虚无的基础上进行讨论

21,890

社区成员

发帖
与我相关
我的任务
社区描述
从PHP安装配置,PHP入门,PHP基础到PHP应用
社区管理员
  • 基础编程社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧