2017-04-16 9 views
0

私は$contact_idを返すようにしたいが、私が得るすべてがある:それは帰国しなければならない enter image description hereなぜ私のmysqli_fetch_assocが機能していないのですか?

the user id is 11

success. 
the user id is 

は、例えば、私のinsert.htmに、私は$ CheckContact入力します。これは私のuserテーブルです:

enter image description here

そして、私は私のブラウザのアドレスバーに再びcheckcontact.phpをクリックした場合、その後私が取得:

the user id is 23 

それは関係なく$CheckContactが何であるかを、常に23ません。 何が間違っているか教えていただけますか?ここに私のコードは次のとおりです。

<?php 

require('dbConnect.php'); 

$CheckContact = $_POST['phonenumber']; 
$sql = "SELECT * FROM user WHERE username = '$CheckContact'"; 
$result = mysqli_query($con, $sql); 
$check = mysqli_fetch_array($result); 
//if $CheckContact is in the user table... 
if(isset($check)) { 

    echo 'success.' . "<br>"; 

    // get the associated rows of $CheckContact 
     $row = mysqli_fetch_assoc($result); 
    // get the associated user_id in that row 

     $contact_id = $row["user_id"]; 
     echo "the user id is ", $contact_id; 

} 
//if $CheckContact is NOT in the user table... 
else { 

    echo 'failure'; 
    } 

?> 
+1

PHPでエラー報告を有効にしましたか? –

+1

insert.htmからフォームを共有できますか? –

+0

この問題は、クエリが失敗した場合に発生する可能性があります。 '$ check'はnullになり、今設定されているので' isset'のチェックに合格しています。代わりに '!empty 'を使用してください –

答えて

0
why dont you use this: 
<?php 
$sql="Select query"; 
       $result=mysqli_query($con,$sql); 
       while($rws=mysqli_fetch_assoc($result)){ 
       ?> 
to print all data 
<?php 
} 
?> 

は(空みてください)$私は自分のコードを変更すると、これは

2

を変数にnull値が含まれているかどうかを示すかはありませんチェックのために:

<?php 

require('dbConnect.php'); 

$CheckContact = $_POST['phonenumber']; 
$sql = "SELECT * FROM user WHERE username = '$CheckContact'"; 
$result = mysqli_query($con, $sql); 
$num_rows = mysqli_num_rows($result); 

if($num_rows >= 1) { 

etc.... 

これは問題なく動作します。

関連する問題