テストサーバーで動作するプロジェクトがありますが、別のサーバーに移動すると動作しなくなりました。主にPHPだと思いますが、ここで意見をお聞きします。したがって、私のメイン ページは、次のように、php スクリプト ファイルを呼び出す POST を含むフォームを持つログイン用の HTML です。
<form method="POST" action="prologin.php">
Name: <input type="text" name="nam"><br>
Password: <input type="password" name="pas"><br>
<input type="submit" value="Login" data-inline="true" data-icon="gear">
</form>
prologin.php ファイルは次のようになります。
<?php
session_start();
include 'mycon.php';
$nume1=mysql_real_escape_string( $_REQUEST['nam'] );
$pass1=mysql_real_escape_string( $_REQUEST['pas'] );
$s = "SELECT * FROM uzers WHERE uzname = '$nume1' and pass = md5('$pass1')";
var_dump($s);
... followed by other validations and stuff.
HTML ファイルを実行して [送信] ボタン (ログイン) をクリックすると、Chrome または Firefox で「未定義」ページが表示され、「ソースを表示」すると、上記の値が空の SQL が表示されます。あれは:
string(56) "SELECT * FROM uzers WHERE uzname = '' and pass = md5('')"
何が間違っている可能性がありますか?PHP が REQUEST 変数を受け取らないのはなぜですか? それが起こると私が想定していることだからです。修正するにはどうすればよいですか?