2016-05-31 3 views
1

あなたは何が間違っているのか教えていただけますか? iは[PHP] [Mysql]は私のIf文から何も出力できません。誰が何がうまくいかなかったか知っている?

<?php 
     $output = NULL; 

     if(isset($_POST['submit'])){ 
      $st = $_POST['search']; 
      //Connect to the Database 
      $mysqli =NEW mysqli("localhost","root","","exam"); 

      $search = $mysqli->real_escape_string($st); 
      echo $st; 

      //Query Database 
      $result = $mysqli->query("SELECT * FROM users WHERE name = '$search'"); 
      if($result->num_rows > 0){ 
       echo "yes"; 
      } 
     else{ 
      echo "No RESULT"; 
     } 
    } 

?> 
<form> 
    <input type="TEXT" name="search"/><br> 
    <input type="SUBMIT" name="submit" value="search"/> 
</form> 
+0

** <?php **の後の行に、** ini_set( 'display_errors'、1); **を追加します。 – user2182349

+0

@ user2182349それが信じられているかどうか、それとも不思議なことに、(エラー報告)は何も投げないでしょう。 POST配列とフォームメソッドを使用しない場合、フォームはサイレントモードで失敗します。 –

+1

検索している場合は、 '='ではなく 'like'や全文検索を使いたいかもしれません。 '='は完全一致を必要とします.. – chris85

答えて

2

フォームがmethodたデフォルト値を指定していない...何も出力に含まいけないようです。..試合は、結果がない場合は「いいえ結果は」結果が見つかりませんでしたとされている場合、「はい」ouputをしたいですあなたは$_POST配列を使っています。

したがって、「投稿」方法を指定する必要があります。

また、some very important benefitsのraw mysqli接続の代わりにPDOを使用してください。

+0

それはありがとう!あなたは正しい私の方法を指定する必要があります! – ProblematicSolution

関連する問題