2017-02-05 9 views
0

私のウェブサイトにはログインページがあります。私のコンピュータではSafariとChromeの両方で動作しますが、iPhoneでは動作しません。何が間違っているかを確認するためにいくつかのコードを試してみました。セッションはSafariで動作していません。私がやっていることは、一度ログインすれば、彼らのセッションは$_SESSION['logged'] = true;で、アカウントページにリダイレクトされます。私はクッキーを受け入れています。どんな助けもありがとうございます。ありがとうiPhoneで動作しないセッション(Safari、Chrome)

<?php 
session_start(); 
$db = mysqli_connect(#,#,#,#); 
if (isset($_POST['submit'])) { 
    $username = mysqli_real_escape_string($db, $_POST['username']); 
    $password = mysqli_real_escape_string($db, $_POST['password']); 


    $sql = "SELECT * FROM users WHERE username='$username' AND password='$password'"; 

    $result = mysqli_query($db, $sql); 

    if (mysqli_num_rows($result) == 1) { 
    $_SESSION['username'] = $username; 
    $_SESSION['logged'] = true; 
    echo '<script type="text/javascript"> 
     window.location = "http://example.com/index.php?page=account" 
     </script>'; 
} else { 
    echo '<script>'; 
echo "Alert.render('Incorrect Username or Password.');"; 
echo '</script>'; 
} 
} 
?> 
+0

これは、あなたが http://stackoverflow.com/questions/41787597/sessions-not-working-in-safari どのようにこのサイトをホストしていると、上のサイトを立ち上げ、ここで求めたものと類似の質問のようですあなたのデスクトップ対あなたのiPhone? AWS上のプライベートDNSでホストされているのですか、または誰でもアクセスできるようになっていますか、またはネットワーク内のローカルマシン上でホストされていますか? また、完全なセッションの詳細とフォームの詳細(パスワードやコンテンツのハッシュを保つことができます)をvar_dump()することができますか? – Dom

+0

@DomDaFonte私は自分の質問にセッションの詳細を入れました。パブリックアクセスのため、ネットワーク上のローカルマシン上でホストされていません。 –

+0

@DomDaFonteまた、var_dump()を実行すると、window.locationを無効にしたときにbool(true)と表示されます。 –

答えて

1

あなたのiPhoneはクッキーを受け入れるように設定されていますか?設定アプリのSafariで[Cookieを受け入れる]設定を確認します。無効になっている可能性があります。

+0

私は前にクッキーを受け入れていたので、それは問題ではない –

+0

http:// /iphone/29080012/iphoneこのURLを確認してください。 –

関連する問題