0

iPhoneアプリ初心者です。iPhoneからのログインについては、このチュートリアルに従いました。

以下のようなphpファイルがあります。


コード


index.php

<!DOCTYPE html>
<html>
    <head>
        <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
        <title></title>
    </head>
    <body>
        <?php
        $user = $_POST['uname'];

        if ($user == 'user') {
            echo "Welcome to my site...";
        } else {
            echo "Invalid User";
        }
        ?>
    </body>
</html>

アプリケーションを実行し、ユーザー名としてユーザー名を入力し、パスワードをテキストとして入力すると、以下のようにiPhoneに出力されます


出力

<!DOCTYPE html>
<html>
    <head>
        <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
        <title></title>
    </head>
    <body>
            Welcome to my site...
    </body>
</html>

私が期待していた出力はテキストWelcome to my site...だけですが、完全な HTML コードが得られます。

なぜ私はこのようになるのですか?PHP ファイルでどのような変更を行う必要がありますか?

4

3 に答える 3

2

iphoneアプリケーション開発チュートリアルに従って、ボタンとテキストボックスを作成するために標準のsdkを使用していますが、htmlではありません。iphoneでhtmlを使用してログインフォームを作成する場合は、完全なhtmlコードを印刷しているため、webViewを使用してください。のみ、次のコードのみを index.php ファイルに入れます

<?php
  $user = $_POST['uname'];
  if ($user == 'user') {
       echo "Welcome to my site...";
  } else {
      echo "Invalid User";
  }
?>
于 2012-12-25T11:46:44.297 に答える
0

PHPサーバーは、PHPブロックにない限り、何でもそのまま出力します

<?php
  //this is interpreted php code 
?>

そのため、コードの php ブロックに到達するまで、ファイル内のすべての html が出力されます。php ブロックの内容を解釈し、エコーした内容をファイルのその位置に挿入します。php ブロックが終了すると、後続のすべてが再び吐き出されます-あなたの場合は html として。

単純なテキスト出力だけが必要な場合は、HTML を除外する必要があります (php を機能させるためには必要ありません)。

一方、Web ブラウザーからもサイトにアクセスするために HTML が必要な場合は、評価用の php を別の php ファイルに入れ、iPhone アプリがこの php ファイルだけを参照するようにすることをお勧めします。HTML ファイルに、php の require 関数を介してこのファイルを含めます。

于 2012-12-25T11:50:32.403 に答える
0

あなたのphpスクリプトは、ファイルに書いたすべてのテキストを出力します。

PHP タグの前と後に、HTML ヘッダー、本文を記述しました。これを削除してみてください:

    <?php
    $user = $_POST['uname'];

    if ($user == 'user') {
        echo "Welcome to my site...";
    } else {
        echo "Invalid User";
    }
    ?>

ただし、ユーザーにログインして、後でサーバーとやり取りしようとすると、常にユーザーを渡さずに、サーバーにユーザー名を送信し、セッションを作成し、ユーザーを保存して、一意のセッション ID をアイフォン。次回 API に接続するときは、ユーザーがすでにわかっているため、ユーザーがログインしているかどうかを再検証する必要はありません。

于 2012-12-25T11:56:36.287 に答える