2016-12-11 10 views
0

私はMySQLにテーブルを持っていますが、PHPで「タスク」が記述されているかどうかをチェックしたいと思います(todoリストwebappです)。 「まだタスクを追加していません」というメッセージを表示したくない場合は、問題が表示されていません。if/elseステートメントでMysqliクエリが正常に動作しない

PHPは、ユーザー1(PHPの現在のuser_id = 2)で、ユーザー1のMySQLにタスクを挿入していないので、タスクリストが空ではないと仮定していますすべてのタスクはユーザー2)です。

<?php 
global $connection; 
$user = $_SESSION['user_id']; 

$query = "SELECT * FROM to_do_list WHERE user = $user"; 
$items = mysqli_query($connection, $query); 
?> 

      <div> 
       <?php if(!empty($items)): ?>  
       <ul id="myUL"> 
        <?php foreach($items as $item): ?> 
        <li> 
         <span class="item<?php echo $item['done'] ? ' done' : '' ?>"><?php echo $item['task']; ?></span> 
         <?php if(!$item['done']): ?> 
         <a href="#" class="donebutton">Done</a> 
         <?php endif; ?> 
        </li> 
        <?php endforeach; ?> 
       </ul> 
       <?php else: ?> 
       <p>You haven't added any tasks yet.</p> 
       <?php endif; ?> 
      </div> 

答えて

2

mysqli_queryは「資源」ではない配列を返します - ので: - あなたは出力を呼び出すことができます代わりにforeach($items as $item):使用の

while($item = mysqli_fetch_assoc($items))

、今すべての$item結果(意味の関連する配列であります$item['done']のような名前を使用)

if(!empty($items))の代わりに、if(mysqli_num_rows($items) > 0)

+0

驚くばかり!今、多くのおかげで作品! –

+0

役に立つことが楽しいです:)素敵な一日を! –

関連する問題