2012-01-24 8 views
0

私はちょうど把握することができない狂った問題があります。私のフォームは2つのフィールドと送信ボタンを持っています。私が提出したときにVARSは... $ _POSTだけで罰金に送信ボタンの値と一緒に私の期待値を持つ2つのフィールドを提供します

print('<div class=error>'); 
print_r($_POST); 
print('</div>'); 

を渡されます。

どのように!送信ボタンに基づいて処理できるように、次のコード行を追加すると、すべてのデータがクリアされます。ポスト配列が空になります。

if ($_POST['submit'] == 'Submit') { 

データを消去します。値を 'Submit'から他のものに変更すると、varsはまだ$ _POSTに表示され、チェックするとクリアされます。

私はここで間違っていますか?ここ

は、フォームの:

<form method="post" action="<?php echo $_SERVER['PHP_SELF'];?>"> 
<? 
    if (isset($msg)) { 
    echo "$msg"; 
    } 
?> 
<input type=text name='email'><br> 
<br><input type=password name='password'> 
<br> 
<input type="submit" name="submit" value=Submit> 
</form> 

、ここでは、処理コードです:

if ($_POST['submit'] == 'Submit') { 
echo "<div class=error>made it here</div>"; 
$u = $_POST['email']; 
$p = $_POST['password']; 
$auth = mysql_query("Select * from member where email='$u' and password='$p'"); 
$auth = mysql_fetch_array($auth); 

if ($auth) { 
    $pid = $auth[id]; 

    echo "aa"; 
    sess_register("sess_msg"); 
    $sess_msg = null; 
    global $auth, $pid; 
} 
} 

私は送信ボタンが以外に値を持っているかどうかをチェックしたときに、私は値を変更した場合Submitボタンの実際の値 - $ _POSTに送信されたすべての変数を消去します

+0

あなた 'if'の内側には何ですか? – Ryan

+3

まだ関連していないコードがあれば、テストしてください。ここにコードを投稿してください。 –

+3

答えを得るには正確なコードを表示する必要があります。記述した内容が '$ _POST'配列をクリアするものは何もありません。 – FtDRbwLXw6

答えて

1

クリックした送信ボタンを確認するには、配列内のキーとしての名前$_POST

だから、あなたが行う必要があります。

if (array_key_exists('submit', $_POST)) { 
    // your code 
} 

リトルアドバイス:クエリにそれを置く前に、より良いエスケープあなたの$ _POSTデータをたい! これをチェックしてください:http://php.net/manual/en/function.mysql-real-escape-string.php

0

投稿からは、$ _POST配列を空にしてコードが見えません。私が現時点で考えることのできる唯一のことは、コード内に実際には「=」記号だけを置くことであるかもしれないということです。

var_dump($_POST); 

if (isset($_POST['submit'])) { 
    var_dump($_POST); 
    echo "<div class=error>made it here</div>"; 
    $u = $_POST['email']; 
    $p = $_POST['password']; 
    $auth = mysql_query("Select * from member where email='$u' and password='$p'"); 
    $auth = mysql_fetch_array($auth); 

    if ($auth) { 
     $pid = $auth[id]; 

     echo "aa"; 
     sess_register("sess_msg"); 
     $sess_msg = null; 
     global $auth, $pid; 
    } 
} 

var_dump($_POST); 

関連する問題