2012-01-16 8 views
1

mysql_queryのさまざまなフィールドを表示するページがあります。私は値が利用可能なときに次のフィールド/行を表示したいだけです。空ではなく空でない行を表示するにはどうすればよいですか?

$web = $row['Website']; 


<?php 
if ($web = NULL) 
{?> 
<!-- DO NOTHING --> 
<?php 
} 
else 
{?> 
<tr> 
<td valign='top' colspan='3' align='center'><DIV CLASS='standings_title'><?php echo $web ?></div></td> 
</tr> 
<?php 
} 
?> 

私が間違っていることを誰かに教えてください。

+0

($ウェブ= null)の場合は動作しません。 'if($ web)'を試すか、少なくともif($ web == null)という比較演算子を使用してください。 – TuK

答えて

3
<?php if($web):?> 
<tr> 
<td valign='top' colspan='3' align='center'><DIV CLASS='standings_title'><?php echo $web ?></div></td> 
</tr> 
<?php endif; ?> 
2

isset()を使用してください。

if(isset($web)) 
{ 

} 

それとも

if($web) 
{ 

} 
+2

2番目のネゲートのネゲーションを削除することをお勧めします。 – AlexanderZ

0
$web = $row['Website']; 
// Trim whitespace so a single blank space doesn't display as a populated value. 
$web = trim($web); 
if (!empty($web) { 
    // Display it. 
} 
3
if (isset($value) && strlen($value) > 0) { 
    //stuff 
} 

PHPは0」などの事を考慮するので、これは、空($値)または単にIF($値)を使用するよりも優れています"空である。ただし、値が "0"にならないことを保証できれば機能的に同等で、!empty($ value)はより高速になります。 PHPマニュアルから

:行の

The following things are considered to be empty: 

"" (an empty string) 
0 (0 as an integer) 
0.0 (0 as a float) 
"0" (0 as a string) 
NULL 
FALSE 
array() (an empty array) 
var $var; (a variable declared, but without a value in a class) 
0

ポストカラム(PDOで)nullでない場合:

$sql = 'SELECT * FROM posts where post_date !="" '; 
    $stmt = $database->prepare($sql); 
    $stmt->execute(); 
    $rowCount = $stmt->rowCount(); 

    if($rowCount < 1) 
    { 
     return null; 
    } 
    else 
    { 
     do somthing ... 
    } 
+0

nullを検出するには、rowCountまたはcolumnCountを使用します(PDO内) – Maher

関連する問題