使用mycrypt后SQL查询无法正常工作

时间:2015-11-14 14:01:33

标签: php

我是PHP的新手,我尝试使用此代码向数据库添加值。我试图回应所有标签,一切正常,除非它没有出现在我的数据库中。在添加加密部分之前,我已经完成了所有工作。我已经发现,如果我使用RStudio代替MCRYPT_RAND,它似乎效果更好。有些东西告诉我,这可能只是一个我无法找到的简单错误。有关如何找到此错误或答案的任何提示表示赞赏。

MCRYPT_DEV_URANDOM

2 个答案:

答案 0 :(得分:0)

阵列访问

要从像$_REQUEST这样的关联数组中获取值,您应该更改qoutes的使用

...
$account = "$_ REQUEST[account]";
...

...
$account = $_REQUEST["account"];
...

插入声明

我认为列 id 是主键,不是吗?所以它不能是 null 。如果是自动增量列,则可以保留值:

$sqlinsert = "INSERT INTO `bob` (`date`, `username`, `store`, `category`, `amount`, `bank account`, `notes`, `millisecond`, `receiptpicture`) 
VALUES ('$date', '$username', '$store', '$category', '$amount', '$bankaccount', '$notes', '$millisecond', '')";

答案 1 :(得分:0)

我现在开始了。我做的最大的改变是我base64加密了所有的mcyrpt数据。

$username = base64_encode(mcrypt_encrypt(MCRYPT_RIJNDAEL_256, $key, $username1, MCRYPT_MODE_ECB));
$store = base64_encode(mcrypt_encrypt(MCRYPT_RIJNDAEL_256, $key, $store1, MCRYPT_MODE_ECB));
$category = base64_encode(mcrypt_encrypt(MCRYPT_RIJNDAEL_256, $key, $category1, MCRYPT_MODE_ECB));
$amount = base64_encode(mcrypt_encrypt(MCRYPT_RIJNDAEL_256, $key, $amount1, MCRYPT_MODE_ECB));
$bankaccount = base64_encode(mcrypt_encrypt(MCRYPT_RIJNDAEL_256, $key, $bankaccount1, MCRYPT_MODE_ECB));
$notes = base64_encode(mcrypt_encrypt(MCRYPT_RIJNDAEL_256, $key, $notes1, MCRYPT_MODE_ECB));