1

常に印刷する方法ですが、印刷する必要がある同じ名前(値)のデータベースにある1つのホイッチにテキストが添付されているか、値が太字になっていますか?私の悪い英語でごめんなさい;D

値は次のとおりです

$a = '9.00';
$b = '10.00';
$c = '11.00';
$d = '12.00';
$e = '13.00';
$f = '14.00';
$g = '15.00';
$h = '16.00';
$i = '17.00';
$j = '18.00';

$date = '5/21/2012';
$q = mysql_query("SELECT * FROM times WHERE date='$date'");
while ($row = mysql_fetch_assoc($q)){
$time = $row['time'];
....

}

どうやって作るの?配列で?またはforeach...ヘルプ、お願いします; D

結果は次のようになります。

9.00 - AVAIBLE->これはdbにありません 10.00 - NOT AVAIBLE->これはデータベースにあります 11.00 - NOT AVAIBLE->これはデータベースにあります 12.00 - NOT AVAIBLE->これはデータベースにあります.....

4

2 に答える 2

3

私が理解しているなら、あなたはいつも印刷したいのです$a..$jが、それらがクエリ結果に現れる場合は、それらを太字にするか、それらを識別します。

// Store all times in an array rather than variables...
$times = array('9.00','10.00','11.00','12.00','13.00','14.00','15.00','16.00','17.00','18.00');

// Array to hold times from the database query
$dbtimes = array();

date = '5/21/2012';
$q = mysql_query("SELECT * FROM times WHERE date='$date'");
while ($row = mysql_fetch_assoc($q)){

  // Place database times onto the array
  $dbtimes[] = $row['time'];
}

// Iterate over all the times and if the same time occurs in the databse
// array list, output it with special marks as needed.
foreach ($times as $t) {
  if (in_array($t, dbtimes)) {
     // Print bolded time $t
     echo '<strong>$t</strong>';
  }
  else {
     // Print regular time $t
     echo $t;
  }
}

これは、MySQLの日時タイプ( is)の有効な日付形式で5/21/2012ないことに注意してください。2012-05-12うまくいけば、あなたの列dateは適切な日時タイプであり、のようなカスタム文字列ではありません5/21/2012。そうでない場合は、適切な日時に変更することをお勧めします。

于 2012-04-20T13:45:02.687 に答える
0
// store all the times in an array
$mytimes = array('9.00', '10.00', ..., '18.00');

$date = '5/21/2012';
$q = mysql_query("SELECT * FROM times WHERE date='$date'");

while($row = mysql_retch_assoc($q){
    $time = $row['time'];

    // loop through the array, if the time matches the value in the database, 
    // make it bold
    foreach($mytimes as $timecheck){
        if($time == $timecheck){
            // make bold
            echo '<b>'.$timecheck.'</b><br>';
        }
        else{
            echo $timecheck.'<br>';
        }
    }
}
于 2012-04-20T13:45:33.310 に答える