-4

ウェブページを作っています。基本的にユーザーのフォーム。ユーザー名、パスワード、電子メールID、データベースに既に存在するかどうかを確認しています。
それらが存在する場合は、ユーザー名が DB にある場合に「ユーザー名が既に存在する」ことを示す次のページに移動するか、電子メール ID が一致する場合に「この ID に既にアカウントがあります」と表示されます。
この行の後にフォームが続きます。それで、どうすればいいのか教えてください。
これが私のコードです

<?php
$host = "localhost";
$user = "root";
$password = "";
$database = "signin";
$table = "userdetails";
$userName = $_POST['userName'];
$emailId = $_POST['emailID'];
$password = $_POST['password'];
$cnfPassword = $_POST['cnfPassword'];
$con = mysql_connect($host, $user) or die(mysql_error());
mysql_select_db($database, $con) or die(mysql_error());
if ($password == $cnfPassword && strlen($password) != 0) {
    echo "Your Password Matched\n";
    echo "<br />";
} else {
    echo "Please enter a valid password \n";
    echo "<br />";
}
$result = mysql_query("SELECT * FROM `userdetails` WHERE `UserName`=\"$userName\"");
$count = 0;
while ($row = mysql_fetch_array($result)) {
    $count++;
    echo "UserID ".$row['UserID']."<br />UserName: ".$row['UserName']."<br />EmailID: ".$row['emailID']."\n";
}
if ($count == 0 && $password == $cnfPassword && strlen($password) != 0) {
    $query = "INSERT INTO userdetails (UserName,emailID,Password) VALUES('$userName','$emailId','$password')";
    $result = mysql_query($query);
    echo $result;
    echo "<br />";
    echo "You ar welcomed\n";       
    echo "<br />";
} else {
    action("sign_up.php");
    echo "<br />Username already exists\n";
    echo "<br />";
}
?>
4

2 に答える 2

2

phpヘッダー関数を使用する必要があります。次のようにページを直接送信できます。

header('Location: yourpage.php')

または、次のように数秒遅れてリダイレクトすることもできます。

header("Refresh: 5;url=yourpage.php");

ヘッダー関数を使用する場合は、ヘッダーの前に他の出力が作成されていないことを確認してください。詳細については、こちらを参照してください。

于 2013-06-20T07:38:46.693 に答える
0

header('Location: URLTOTHEPAGE');スクリプトの前にヘッダーが送信されない場合に使用できます。

于 2013-06-20T07:33:46.090 に答える