0

この問題で私を助けてください。私はスクリプトを持っており、管理領域では、次のコードでファイル「login.php」を要求します。

<?
if($_COOKIE["ok"]==1){
    setcookie("user",$_REQUEST["name_theuser"]);
    setcookie("tipe",$_REQUEST["thetipe"]);
}else{
    echo "<script>document.location.href='disconnect.php';</script>";
}
echo "<script>document.location.href='bord.php';</script>";

?>

私の少しの知識と検索から理解しているように、php 5.3.x では非推奨です。

症状は、正しいユーザーとパスワードを使用してもログインできず、適切にリダイレクトされないことです。

誰かがハンドを着地させることができれば、それは大歓迎です。

ありがとうございました!

4

2 に答える 2

-1

JavaScript リダイレクトが間違っています。あなたはdocument.locationそれがあるはずですwindow.location$_REQUESTは減価償却されませんが、正しく使用していることを確認する必要があります。フォームが送信されている場合は、送信ボタンが設定されていることを確認してください。$_POSTより安全なメソッドを使用している場合、実際にはコードは次のようになります。

<?php
session_start();
if(isset($_POST['submitButton']) && isset($_COOKIE['ok']) && $_COOKIE['ok'] === '1'){
  setcookie('user', $_POST['name_theuser']);
  setcookie('tipe', $_POST['thetipe']);
  //send a header or do your thing here
}
else{
  header('LOCATION:disconnect.php'); die();
}
?>

また、ページの下部でリダイレクトを実行しようとしている理由もわかりませんでした。

サイドノート:

を使用する必要はありませんwindow.location.href =。実際にはwindow.location =、ショートカットとして使用できます。さらに短くすると、は暗黙的location =であるため、実際には を使用できます。window

于 2013-06-28T01:11:05.550 に答える