-2

PHPスクリプトが機能することを確認するにはどうすればよいですか?を使用してphp -f filename.php email@address.comいますが、エラーが発生します。phpスクリプトは、Androidアプリと連携して、メールが投稿されたメールアドレスと一致するデータを取得することを目的としています。これがphpコードです:

<?php
$con = mysql_connect("localhost","username","password");
if (!$con)
{
  die('Could not connect: ' . mysql_error());
}

mysql_select_db("db_name", $con);
$email= mysql_real_escape_string($_POST['email']);
$result=mysql_query("SELECT * FROM `TableName` WHERE email='$email' ");

if($result){ 
  $num_rows = mysql_num_rows($result);
  print(json_encode($num_rows));
}

  mysql_close($con);
?> 

または、コマンドラインからこのスクリプトをテストできず、代わりにhtmlファイルを使用する必要がありますか?

たとえば、次の行を置き換える$email= "myaddress@nd.edu";と、次のように入力php -f getdbstats.phpすると、正しい結果が得られます。

4

2 に答える 2

1

コマンドラインphpは少し異なります。POSTまたはGETグローバル配列を使用してコマンドラインパラメータを格納することはありません。コマンドラインからパラメーターが入力される$argvというグローバル変数を使用する必要があります。したがって、コードでは、電子メールアドレスは配列の$argv[1]要素に格納されます。$argv[0]はスクリプトの名前です。詳細はこちら: http: //php.net/manual/en/reserved.variables.argv.php

于 2012-06-20T11:54:04.103 に答える
0

スクリプトはPOSTを期待しなくなったため、編集後に機能します。これをコマンドラインスクリプトとして実行することが重要なのはなぜですか...私を打ち負かします。スクリプトが機能するかどうかをテストするだけの場合は、1つのテキストフィールドと送信ボタンを使用して簡単なフォームを作成し、入力が正しく受信されているかどうかを確認できます。

何らかの理由でコマンドラインでこれを実行する予定がある場合は、このSO投稿を参照してください

于 2012-06-20T11:50:47.567 に答える