php Aes_Encrypt致命错误
我将值插入数据库,但我需要密码进行加密,然后插入特殊字符。我正在使用mysql数据库,编码是在正常的php程序中完成的。php Aes_Encrypt致命错误
PHP PROGRAM
$mysecretkey = 'd5k8b6q3';
$password=(AES_ENCRYPT('$v4','$mysecretkey')); // problem is here in encryption
$q="insert into customers (name,username,email,password) values('$v1','$v2','$v3','$password')";
$s= mysql_query($q);
if(!$s)
{
$r["re"]="Inserting problem in database";
print(json_encode($r));
}
else
{
$r["re"]="Record inserted successfully";
}
但当我代替执行其加密的我得到错误
Fatal error: Call to undefined function AES_ENCRYPT() in ..../checking.php on line 5
如何解决这个问题和其他细节的代码是在数据库中的密码字段是VARCHAR,我取的上面的代码中添加了来自POST变量v1,v2,v3,v4和测试密钥的数据。
当我给的密码"test123"
AES加密后的数据必须插入这是"÷A5jèŸ2A1::h "
感谢您的帮助和时间的朋友........请告知如何解决这个问题
尝试像下面(我认为这是一个MySQL的功能,而不是PHP所以在查询中使用直接)
$q="insert into customers (name,username,email,password) values('$v1','$v2','$v3',AES_ENCRYPT('".$v4."','".$mysecretkey."'))";
或
$q="insert into customers (name,username,email,password) values('$v1','$v2','$v3',AES_ENCRYPT('$v4','$mysecretkey'))";
更多: - http://www.w3resource.com/mysql/encryption-and-compression-functions/aes_encrypt%28%29.php
谢谢我会尽力让你知道这个....但我试过第二种方式,你说它不工作@ Rakesh Sharma – 2014-12-03 05:05:19
都是一些引用差异。试试哪个会适合你 – 2014-12-03 05:23:22
雅第一个人很好,谢谢兄弟我不会忘记你在我的生活中。我坐了三天,玩它,但你在3分钟内@Rakesh Sharma – 2014-12-03 05:36:56
你可以尝试更类似于你的做法像
的mysql_query( “SET @密码= AES_ENCRYPT('” $ V4。 “ ''” $ mysecretkey。 “')”); ('$ v1','$ v2','$ v3',@ password)插入客户(名称,用户名,电子邮件,密码)。
亲切的话我会检查它,让你知道这个 – 2014-12-03 06:34:14
您需要在AES_ENCRYPT()部分放置“”。此外,使用'AES_ENCRYPT' MYSQL函数[不是很安全](http://security.stackexchange.com/questions/45838/is-why-should-you-avoid-aes-in-mysql-true)默认。 – 2014-12-03 04:42:30
当然,我会尽力让你知道我的朋友@MisterDood – 2014-12-03 05:07:42