0

上記のエラーは、何かが HTTP プロトコルを介して出力を送信していることを意味することを理解しています (正しく理解していれば)。エラーが発生する行は、setcookie の行とヘッダーの行 (最後の行) です。誰でもこれで私を助けてくれますか? ありがとうございました。

<?php
$a = 'thisissomestring=='; 
$b = 'thisissomestring==';
$encryptedData = base64_decode($a);
$iv = base64_decode($b);
$appKey ='thisissomestring';
$td = mcrypt_module_open(MCRYPT_SERPENT, '', MCRYPT_MODE_CBC, '');
$ks = mcrypt_enc_get_key_size($td);
$key = substr($appKey, 0, $ks);
mcrypt_generic_init($td, $key, $iv);
$decrypted = mdecrypt_generic($td, $encryptedData);
$str = $decrypted;
mcrypt_generic_deinit($td);
mcrypt_module_close($td);
$file = file($decrypted);
$output = $file[0];
if( !isset( $_COOKIE['thisismycookie'] ) )
{
    setcookie('thisismycookie', $output, time() + 600, "/", $_SERVER['HTTP_HOST']);
}
else
{
    echo 'Action not allowed [3]';
    die();
}
unset($file[0]);
file_put_contents($str, $file);
header("Location: http://www.mysite.com/something");

?>

4

1 に答える 1

2

Cookie を設定するには、ブラウザにデータを送信する必要があります。これを行うと、PHP を使用してリダイレクトできなくなります。そうしないと、表示されているエラーが発生します。代わりにセッションを使用してみてください。

于 2013-02-08T04:34:21.520 に答える