0

みなさん、こんにちは。感謝祭をお楽しみください。私はHTMLフォームを使用して電子メールアドレスを取得し、mySqlデータベースに追加するためにこの小さなphpスクリプトを作成しました。ユーザーをhtmlページにリダイレクトして、感謝していることを知らせようとしています。ただし、私のphpスクリプトはデータベースを更新しますが、以下に示すように(ヘッダー)を使用してもリダイレクトは機能せず、元のhtmlフォームページに留まります...調査を行ったところ、少し混乱しました。 phpスクリプトにはHTMLが含まれていないので、問題はありません...本当に混乱している、または燃え尽きているだけです。助けてください!(注:プライバシーを保護するために*を追加しました;>))

    <?php
    $host = "*********";
    $user = "*********";
    $db_name= "********";
    $pass= "********";

    $con = mysql_connect($host, $user, $pass);

    if (!$con) 
    { 
    die('Could not connect: ' . mysql_error()); 
    } 
    mysql_select_db("******", $con);

    $email=mysql_real_escape_string($_POST['email']);
    $sql="INSERT INTO *** (email) VALUE ('$email')";         

    if (!mysql_query($sql,$con)) {
    die('Error: ' . mysql_error()); 
    } 
    mysql_close($con);
    header('Location: http://www.********.com/thanks.html');


    ?>

皆さん、ありがとうございます。プロセスは次のように流れます。ユーザーは/index.htmlにアクセスします。フォームタグを使用して、$nameを取得します。ユーザーが自分のメールアドレスを入力して[送信]をクリックすると、sendSql.phpが起動します。これは、表示されているすべてのコードです。このsendSql.phpは機能し、ユーザーの電子メールでデータベースを更新しますが、thanks.htmlページに移動するのではなく、最初に電子メールを入力した元のindex.htmlページにハングします。ブラウザバーに、sendSql.phpが一瞬表示された後、デフォルトのwwwに戻ります。** .com/index.htmlページ。sendSql.phpを起動するhtmlコードは次のとおりです。

                         <form method="post" action="sendSql.php">
                 <input type="text" value="your@email.com" name="email" />
                 <input type="submit" value="Subscribe">
                         </form>
4

1 に答える 1

1

コードの最後で、送信ボタンが使用されたかどうかを確認する簡単なhtmlリダイレクトを試すこともできます。

<meta http-equiv="REFRESH" content="0;url=http://www.the-domain-you-want-to-redirect-to.com">

しばらく前にこれを使用しました。これが機能したかどうか、そうでない場合はどのように問題を解決したかをお知らせください

于 2012-11-22T18:06:59.173 に答える