2012-04-23 8 views
-1

データベースから値を取得して値を表示しますが、値を表示し、whileループに値がない場合はメッセージを表示しないという空のメッセージも表示します。
ここに私のコードは、誰も助けてください?print null値whileループの条件の場合に使用するメッセージ?

/* database link */ 
    require_once '../db.php'; 
    $query = "SELECT id,first_name FROM ajax_user"; 
    $result = mysql_query($query,$connection) or die('Could connect !');  
    /* loop */ 
    while ($row = mysql_fetch_array($result)) {    
     if($row['first_name']):      
      echo $row['first_name']; /* no problem print those values */    
     else:    
      /* here is the problem, message doesn't print if (ajax_user) */ 
      /* table is empty */ 
      echo 'no value your database !!';  
     endif;    
    } 
+1

だから問題は何ですか?エラーはありますか?間違った結果ですか? – JohnFx

+0

mysql_fetch_array($ result)の値がnullの場合は、問題が1つしか表示されません。どうすれば可能ですか?私を助けてください.. –

答えて

0

データベースメッセージのno値をwhileループの外側に移動する必要があります。フェッチが行を返さない場合、while条件はfalseなので、コードはループ全体をスキップします。このような

何か...

/* database link */ 
    require_once '../db.php'; 
    $query = "SELECT id,first_name FROM ajax_user"; 
    $result = mysql_query($query,$connection) or die('Could connect !'); 

    $row = mysql_fetch_array($result); 

    if ($row): 
    do {    
     if($row['first_name']):      
      echo $row['first_name'];     
     endif;    
    } while ($row = mysql_fetch_array($result)) 
    else: 
    echo 'no value your database !!';  
    endif; 

警告:正確な構文は、ここで完璧ではないかもしれないので、私は(PHPの専門家は、必要に応じて私の答えを編集してください)、多くのPHPで動作しません。ただし、制御フローは必要な処理を行う必要があります。

関連する問題