Я испытываю довольно странную проблему с моим скриптом. У меня есть этот скрипт, который будет отправлен в jQuery как POST. Это URL, который отсылается:PHP - Шифровать и дешифровать странный знак
url: 'index.php?i=v&p=k&token=<?php echo($tokenS); ?>&key=<?php echo $secretKey; ?>&token=<?php echo $tokenS; ?>&time=<?php echo $time; ?>&stime=<?php echo $stime; ?>'
Когда в действии, это будет выглядеть примерно так:
url: 'index.php?i=v&p=k&token=F53A8D1113D8A158AD89F6A115DCB13174F0E0CC&key=56.50.57.61.106.118.118.114.60.49.49.105.113.113.105.110.103.48.101.113.111.61.51.53.58.56.52.53.56.54.55.53&token=F53A8D1113D8A158AD89F6A115DCB13174F0E0CC&time=15&stime=1386236453'
Таким образом, URL содержит весь вид информации, которую мне нужно проверить.
Проблема возникает, когда я должен проверить переменную key
. У меня есть это:
$key = inputFilter($_POST['key']);
// Need to decrypt the key.
$key = $this->sDecrypt($_POST['key']);
/*
* Need to split the key up..
* After this, we should have an array looking like this:
* -> Array ([0] => ID [1] => URL [2] => TIME) <-
* ID = id of the advertisement
* URL = url of the advertisement
* TIME = time of the advertisment started showing (Should match $stime)
*/
$key = explode(';',$key);
$key2 = explode(';',$this->sDecrypt($_SESSION['ad']['key']));
Затем, после расшифровки ключа, я проверка его так:
// Check if session key & post key is the same
if($key[0] != $key2[0] || $key[1] != $key2[1] || $key[2] != $key2[2])
die("error");
А вот где получить то странно. Я получаю здесь die("error");
.
Я попытался распечатывания, чем содержал $ ключ:
echo "<pre>";
echo $key[0];
echo "</pre>";
echo "<pre>";
echo $key2[0];
echo "</pre>";
В результате этого:
$key[0] = �
$key2[0] = 608
Таким образом, $key2[0]
имеют правильное значение, но $key[0]
не делает. Он содержит какой-то тип водослива.
EDIT:
var_dump($_POST['key']);
является NULL
Любая идея, почему?
Вы отображаются URL-адреса с их параметрами GET, а затем ссылаются на POST в вашем коде. Можете ли вы 'var_dump ($ _POST ['key']);' и сообщить нам, что это содержит. –
Только что отредактировал мой вопрос. var_dump ($ _POST ['key']); is NULL – oliverbj
Попробуйте искать в $ _GET ['key'] вместо этого. –