2016-04-28 10 views
0

年を選択して、選択した年のすべてのデータを表示しますが、このエラーが表示されるたびに表示されます:booleanでexecute()を呼び出すbooleanでexecute()を呼び出す

どうして表示されますか?

これは私のクエリです:

$sql = (" SELECT code,supplier,date FROM suppliers WHERE 
    YEAR(date) = $date "); 

これは私のコードです:

<?php 
if(isset($_POST['submit'])) 
{ 

$date = $_POST['date']; 
$sql = (" SELECT code,supplier,date FROM suppliers WHERE YEAR(date) = $date 

    "); 

$connexion->exec ("set names utf8"); 
$reqd = $connexion->prepare($sql); 
$reqd->execute(); 
$query = $reqd -> fetchAll(PDO::FETCH_ASSOC); 

} 

?> 

<form method="POST" action=""> 
    <select class="form-control select2" style="width: 100%;"> 
     <option selected="selected">2016</option> 
     <option>2015</option> 
     <option>2014</option> 
    </select> 
    <button type="submit" name="submit" class="btn btn-primary"> 
     <span class="glyphicon glyphicon-ok"></span> Submit 
    </button> 

    </form> 

    <table id="example1" class="table table-bordered table-striped"> 
    <thead> 
     <tr> 
    <? if(isset($_POST['date'])) { ?> 
     <th style="text-align:center">code</th> 
     <th style="text-align:center">supplier</th> 
     <th style="text-align:center">date</th> 

    <? } ?>  
       </tr> 
      </thead> 
      <tbody> 
       <?php 

        foreach ($query as $q => $r) : 

        ?> 
       <tr style="text-align: center;"> 
       <td><? echo $r['code']; ?></td> 
       <td><? echo $r['supplier']; ?></td> 
       <td><? echo $r['date']; ?></td> 

       </tr> 

        <?php 
        endforeach; 
        ?> 

      </tbody> 

      </table> 

おかげ

+0

$ date = $ _POST ['date'];それを使用する前に$ _POST ['date']を確認してください –

+0

ありがとうございます。 – user5198335

+0

あなたの歓迎: –

答えて

0

は入れname名の日付のない選択で属性がpost

<select name="date" class="form-control select2" style="width: 100%;"> 
に設定されていません
+0

あなたの答えに感謝します。それは私を助けるが、私はまだ同じprobを持っている – user5198335

関連する問題