$sql = mysql_query("SELECT * FROM doc");
while($ro =mysql_fetch_assoc($sql)) {
$data[] = Array(
'author' => $ro['author'] ,
'title' => $ro['title']
);
}
以上のスクリプトでdata配列に格納していきます。
問題は
'title' => $ro['title']
です。
$ro['title']が空だった場合はそのまま空のデータを入れるのではなく、「none」といったテキストデータを格納したいのです。
現状は出力時に空かどうかを判別して、空だったら「none」を出力しています。ちょっとスマートじゃないので格納時に処理したいです。
みなさんよろしくお願いします。
>$sql = mysql_query("SELECT * FROM doc");
$sql = mysql_query("SELECT author,ifnull(title,'none') as title FROM doc");
または(未確認)
$sql = mysql_query("SELECT author,if((title is null) or (length(title)<1) ,title,'none') as title FROM doc");
http://dev.mysql.com/doc/refman/4.1/ja/control-flow-functions.ht...
$data[] = Array( 'author' => $ro['author'] , 'title' => $ro['title'] ? $ro['title'] : 'none' ) ;
こんな感じでは?
三項演算子ですよね。
色々と試してみましたが出来ませんでした・・。
>$sql = mysql_query("SELECT * FROM doc");
$sql = mysql_query("SELECT author,ifnull(title,'none') as title FROM doc");
または(未確認)
$sql = mysql_query("SELECT author,if((title is null) or (length(title)<1) ,title,'none') as title FROM doc");
http://dev.mysql.com/doc/refman/4.1/ja/control-flow-functions.ht...
最初のSQLで出来ました!
ありがとうございます。
これでスクリプトも少なくなってスマートになりました。
最初のSQLで出来ました!
ありがとうございます。
これでスクリプトも少なくなってスマートになりました。