私はこれのためにPHPスクリプトの一部をカスタマイズしようとしてきました。
入力値が数値(1、3、20、99など)の場合に画像を表示したい。それ以外の場合は、入力値がテキスト(lorem、randomtextなど)の場合にテキストを表示するようにします。そして、値が0の場合は何も表示しないようにします。
しかし、私はそれを間違え続けています。入力値に関係なく、常にテキストが表示されます。
PHPコードは次のとおりです。
if ( $topic['topic_icon'] = $topic['icon_id'] ) {
if (is_numeric($topic['icon_id'])) {
"<img src='".$ibforums->vars['img_url']."/icon{$topic['icon_id']}.gif' alt='{$topic['icon_id']}' />";
} else {
"<span class='text-icon {$topic['icon_id']}'>{$topic['icon_id']}</span>";
}
} else {
"";
}
そして、これがユーザーが値を入力できるHTMLの一部です(ラジオボタン付きで、<form />
タグはコードの巨大なチャンクの一部であるため含まれていません):
<input type="radio" class="radiobutton" name="iconid" value="15" /> <img src="{$ibforums->vars['img_url']}/icon15.gif" align='middle' alt='' />
<input type="radio" class="radiobutton" name="iconid" value="16" /> <img src="{$ibforums->vars['img_url']}/icon16.gif" align='middle' alt='' />
<input type="radio" class="radiobutton" name="iconid" value="17" /> <img src="{$ibforums->vars['img_url']}/icon17.gif" align='middle' alt='' /><br />
<input type="radio" class="radiobutton" name="iconid" value="SPRING" /> <span class='text-icon SPRING'>SPRING</span>
<input type="radio" class="radiobutton" name="iconid" value="SUMMER" /> <span class='text-icon SUMMER'>SUMMER</span>
<input type="radio" class="radiobutton" name="iconid" value="AUTUMN" /> <span class='text-icon AUTUMN'>AUTUMN</span>
<input type="radio" class="radiobutton" name="iconid" value="WINTER" /> <span class='text-icon WINTER'>WINTER</span><br />
<input type="radio" class="radiobutton" name="iconid" value="0" checked="checked" /> [ Use None ]
MySQLテーブルで使用される列(それicon_id
は)はとして設定されvarchar(64)
ます。
長いタイトルをお詫びします...