1

携帯電話の中に、ユーザー名とパスワードを要求するHTMLページが表示されました。送信ボタンを押すと、サーバーにアップロードしたPHPファイルを使用して、データベースで既存のユーザーを確認します。

問題は、ログインが成功した後、PHPファイルから電話内のHTMLファイルであるメインメニューページにリダイレクトするにはどうすればよいですか?

PHPで、他のページにリダイレクトするこのコードを見ました。

header( "file:/// android_asset / www / mainMenu.html");

変更しようとしましたが、まだ機能していません。誰か助けてもらえますか?

4

3 に答える 3

2

ローカル デバイスのページは Web サーバーでホストされていないため、リモート Web サーバーは http:// URL を使用してアドレス指定できないため、PHP ヘッダー関数がデバイスに保存されているローカル ページにリダイレクトする方法はありません。

代わりにできることは、window.location.href を使用してモバイル ブラウザーをローカル HTML ファイル (file:///android_asset/your_file.html) にリダイレクトするヘッダーに JavaScript のスニペットを含む空白のページを PHP に返すことです。またはwindow.location.replace。これが機能するのは、JavaScript がデバイス上で実行され、ローカル ファイル システム上のファイルを認識しているためです。

編集: blank.html は次のようにする必要があります。

<html>
<head>
    <script type="text/javascript">
        window.location.href = 'file:///android_asset/my_local_page.html';
    </script>
</head>
<body>  
</body>
</html>

上記のテキストで、my_local_page.html をメイン メニュー ページに置き換えます。次に、サーバーに blank.html を配置し、PHP の header() を使用して blank.html にリダイレクトします。

于 2012-04-11T19:13:35.227 に答える
1

phonegapp フレームワーク (またはモバイル用の他の webapp フレームワーク) を使用して html5 + javascript アプリを構築する場合、ローカルとリモートの html ページを混在させるのは好きではありません。表示されるページは完全にローカルまたはリモートのいずれかですが、混在はありません。完全にローカルなディスプレイを使用することを選択したが、リモート サービスを呼び出す必要がある場合は、ajax リクエストを使用します。

同じことをすることをお勧めします。したがって、ajax を使用して php ログイン メソッドを呼び出し、成功したら phonegapp ページを変更します。たとえば、php スクリプトは、'succes' または 'fail' のいずれかの単純な文字列を返すことができます。その後、phonegap アプリで必要なページ変更を実行できます。

よろしく

于 2012-04-22T21:47:21.650 に答える
0

ローカルの html ファイルのみに固執するというあなたの提案が気に入っています。私も同じようにやっています。しかし、ローカル html を使用して支払いゲートウェイを実装する必要があります。したがって、コントロールはリモートサーバーに送られます(利用可能なAPIがないため、ajaxを介して行うことはできません)。ローカル フォルダに戻るにはどうすればよいでしょうか。解決策の 1 つは、サーバーからペイメント パラメータを含むページを送信することです。このページは、javascript を介してローカルの html ファイルを呼び出します。これを行うためのより良い方法を教えてもらえますか?

于 2012-04-25T06:01:12.460 に答える