• ベストアンサー

IF文の書き方。

CGIでhtml表示部分を作成中です。 if文で以下のような物を構築したいのですが可能でしょうか? 表のサイズ(幅)はユーザーが選べるようにしています($all_width = "xxx";)。 いくつかの項目(リンク)がその表の中にあります。 このときに表の幅が何ピクセル以上だったら一列に表示したいので項目の間には空白を入れそれ以下だと文字が1つだけ下に行くなどのデザイン上おかしくなることを防ぐため改行を入れるという風にしたいのですが… if ($all_width = "xxx"){   ##←ここがよくわからない print <td align=\"center\"><a href=\"xxx\" target=\"$tar\">項目1 </a> <a href=\"xxx\" target=\"$tar\">項目2</a></td>\n"; } else {          ##←ここにもそれ以下だったらが必要? print <td align=\"center\"><a href=\"xxx\" target=\"$tar\">項目1 </a><br><a href=\"xxx\" target=\"$tar\">項目2</a></td>\n"; } 幅がこれ以上だったらこっちを表示、それ以下だったらこっちを表示とさせたいのですが可能でしょうか? よろしくお願いします。

  • CGI
  • 回答数2
  • ありがとう数3

質問者が選んだベストアンサー

  • ベストアンサー
  • madman
  • ベストアンサー率24% (612/2465)
回答No.1

CSIの言語は何でしょう? これ以上は if ($all_width >= "xxx") ##言語によっては書き方が異なるかも これ以下は、今回の場合 else だけで判断できます。 より大きい > より小さい < 以上    >= 以下    <= 質問の書き方だと、 "xxx"の時だけ空白、それ以外(大きいか小さい時)は改行となります。

master-3rd
質問者

お礼

ありがとうございます。ばっちり動きました。 簡単なことだったんですね。 勉強になりました。

master-3rd
質問者

補足

回答ありがとうございます。 えっと、言語はperlです。 その場合、これでOKでしょうか? …って試してみればいいだけでした。 やってみてダメだったらまた報告します。

その他の回答 (1)

  • nonchi
  • ベストアンサー率43% (16/37)
回答No.2

if ($all_width >= "xxx") { とダブルクォートでくくっちゃうと文字列扱いになるからif ($all_width >= xxx) { ではないですかね? 分岐させる処理が2つしかないなら、 if (条件) {} else {} でよいでしょうね。  

関連するQ&A

  • テーブル幅を完全に指定したい

    テーブル幅の指定方法を教えてください。 以下のような記述のテーブルを何列も羅列して 表を作ろうと思っています。 alt="小A"~alt="小D" のところは 項目ごとのアイコン画像が入り、その項目に該当するものが無い場合は空白となるような表です。 実際にブラウザで表示してみると、widthの設定はしているのに、空白をつくると 若干ですが横幅が変わってしまい、表として並べたときにそのズレが目立ちます。 何がいけないのか、お知恵を拝借できませんでしょうか。 宜しくお願い致します。 以下、その表の一部である テーブルになります。 <table bordercolor="#ffffff" width="520" height="80" align="center" cellspacing="3"> <tr><td bgcolor="#ffcccc"> <table> <tr> <td width="100" bgcolor="#ffcccc" align="center" valign="middle"> <a href="★" target="_blank"><img src="■.gif" width="80" height="60" border="0" class="pict"/></a> </td> <td width="260" align="left" valign="center"> あいうえおかきくけこさしすせそたちつてとなにぬねのはひふへほまみむめもやゆよ </td> <td valign="center"> <img alt="中" src="■.gif" width="80" height="60" class="pict" /> </td> <td width="25"><a href="★" target="_blank"><img alt="小A" src="■.gif" width="25" height="60" class="pict" /></a></td> <td width="25"><a href="★" target="_blank"><img alt="小B" src="■.gif" width="25" height="60" class="pict" /></a></td> <td width="25"><a href="★" target="_blank"><img alt="小C" src="■.gif" width="25" height="60" class="pict" /></a></td> <td width="25"><a href="★" target="_blank"><img alt="小D" src="■.gif" width="25" height="60" class="pict" /></a></a></td> </tr> </table></td></tr></table>

    • ベストアンサー
    • HTML
  • HTMLのリンクアンカーがおかしい???

    開発中にふと気が付いたことなのですが、以下のソースをブラウザ(IE5.0)で表示すると、aaaだけ、TABLE内のアンカーの左右でもリンクするようになってしまうのですが、なぜなのでしょうか??? <html> <head></head> <body> <table border=0 cellpadding=3 width=730> <tr><td align=center><a href="help_10.asp" target="right"><h2>aaa</h2></a></td></tr> <tr><td align=center><a href="help_20.asp" target="right"><h2>bbb</h2></a></td></tr> <tr><td align=center><a href="help_35.asp" target="right"><h2>ccc</h2></a></td></tr> </table> </body> <html>

  • aspファイル内でのIF文埋め込み

    現在とあるホームページの編集をするのに.aspファイルをいじっています。 ホームページ上に「氏名」と「社員番号5桁」を入れるテキストボックスがあり、それを以下のように表示させています。 1.氏名:○○ (社員番号:○○) <tr height="25"> <td width='25' align='left' valign='top'>1.</td> <td nowrap width='120' align='left' valign='top'>氏名:</td> <td width='400'  align='left' valign='top'><b><%= session.contents("name") %></b>   (社員番号:<b><%= session.contents("bangou") %></b>)</td> </tr> この時「社員番号」テキストボックスに入力があれば(社員番号:○○)の部分を表示させ、 入力がない場合(社員番号:○○)の表示そのものをしない設定にしたいのですが、aspやhtmlに関して未経験で勉強での知識だけでは追いついていないため、<%>を使った埋め込みや、構文が出来ていない為困っております。なのでお力添えして頂けると有り難いです。 <tr height="25"> <td width='25' align='left' valign='top'>1.</td> <td nowrap width='120' align='left' valign='top'>氏名:</td> <td width='400'  align='left' valign='top'><b><%= session.contents("name") %></b> <% if len("HosCode") = 5 then %>   (社員番号:<b><%= session.contents("bangou") %></b>)</td> <% end if %> </tr> ↑私自身が考えてみた一例(5桁を入れても「社員番号:○○が表示されない」)

  • タグがわかりません

    以下の表記PGMを作ったのですが・・・ 1)クーポン、T E L、、住 所、定休日の場所に該当する欄をカラーにし、「白抜きの文字」にしたい。 2)「その他詳細」【お客様からのご評価】【アンケートモニタ】【通信販売情報】がある横1行のみ他の「2倍の高さ」にしたい 以上をやりたいのですが。お教え下さい。 <TABLE width="100%" border="1" bordercolor="#999999" cellpadding="1" cellspacing="1"> <tr> <td width="25%" align="center"><FONT COLOR=RED><B>クーポン</B></FONT></td> <td width="25%" align="center"><FONT COLOR=RED><B>T E L</B></FONT></td> <td width="25%" align="center"><FONT COLOR=RED><B>住 所</B></FONT></td> <td width="25%" align="center"><FONT COLOR=RED><B>定休日</B></FONT></td> </tr> <tr> <td width="25%" align="center"><FONT COLOR=RED><B>只今、新規30%オフ サービス中!</B></FONT></td> <td width="25%" align="center">********</td> <td width="25%" align="center">**********</td> <td width="25%" align="center">毎週 月曜日</td> </tr> <tr> <td width="25%" align="center"><FONT COLOR=RED><B>その他詳細</B></FONT></td> <td width="25%" align="center"><A HREF="cust.html" target="_blank">【お客様からのご評価】</A></td> <td width="25%" align="center"><A HREF="moni.html" target="_blank">【アンケートモニタ】</A></td> <td width="25%" align="center"><A HREF="tuhan.html" target="_blank">【通信販売情報】</A></td> </tr> </TABLE>

    • ベストアンサー
    • HTML
  • IEのテーブル表示の不具合でしょうか・・・?

    IEで正しく表示されているものが、別のページへ行って「戻る」ボタンを押すと、テーブルの表示が崩れてしまいます。 2列のテーブルの右側の部分が左側にかぶって表示されてしまうのです。 参考までにその部分のソースを以下に記述します。 何か気になる点などお気づきになられたら教えてください。 <table width="320" border="0" cellspacing="0" cellpadding="0"> <tr> <td width="200"> <table width="200" border="0" cellspacing="0" cellpadding="5"> <tr> <td class="px12"> ・<a href=>あああああ</a><br> ・<a href=>いいいいい</a><br> ・<a href=>ううううう</a><br> <hr width="160" size="1" noshade align="left"> ・<a href=>えええええ</a><br> <hr width="160" size="1" noshade align="left"> ・<a href=>おおおおお</a><br> <hr width="160" size="1" noshade align="left"> </td> </tr> </table> </td> ※以下から左側のテキストにかぶって表示されてしまいます。 <td width="120"><a href=><img src="images/画像.gif" width="120" heigt="180" border="0"></a><br> <table width="120" border="0" cellspacing="2" cellpadding="0"> <tr> <td valign="top"><img src="images/矢印画像.gif" width="11" height="11" border="0"></td> <td class="px12"><a href=>テキストテキストテキスト</a></td> </tr> </table> </td> </tr> </table> 以下が私の環境です。 WindowsXP(HomeEdition)・SP2インストール済・IE6 よろしくお願いします。

  • ブラウザによってリンク集のバナー画像が表示されません。

    ↓ こちらの質問とほぼ同じです。 http://oshiete1.goo.ne.jp/qa3085778.html そして、こちらで紹介されているサイトhttp://www.aland.to/~lintrank/trylint/htmllint.htmlでチェックしても解決できなかったので、質問させていただきたいと思います。 私は、Win(IE7)、ビルダー11、フォトショ・イラレ等を使ってHPを作成しました。 既に転送済みのファイルのうち リンク集の表に貼ったバナー画像がIE6だと表示されません(直リンはしてません)。×がつくのではなく、何も表示されていません。 IE7だと全く問題ないです。他のファイルには上記の様な異常は一切ありません。 リンク集一覧は、2×2の表を作り、左にバナー画像、右に ちょっとした説明を載せています。 ブラウザによって表示が異なるのはタグが正確ではないからでしょうか。HTMLというものは、つい最近知った初心者なのでよく分かりません。 よろしくお願いします。 おそらく↓この部分が表のタグだと思います。 <TABLE border="0" width="731" height="85" summary="イラスト関連サイト様一覧"> <TBODY> <TR> <TD align="center" valign="middle" width="258"><A href="http://***.***.jp/" target="_blank"><IMG src="banner1.gif" width="200" height="40" border="0" alt="*** "></A><BR> <FONT size="-1">サイト名:<A href="http://***.***.jp/" target="_blank"> ***</A></FONT></TD> <TD valign="middle" width="463"><FONT size="-1">管理人:***様</FONT><BR> <FONT size="-1">***さんが描かれるイラストは、~。</FONT></TD> </TR> <TR> <TD align="center" width="258" height="23"><A href="http://***.***.jp/" target="_blank"><IMG src="banner2.GIF" width="200" height="40" border="0" alt="***"></A><BR> <FONT size="-1">サイト名: <A href="http://***.***.jp/" target="_blank">***</A></FONT></TD> <TD valign="middle" width="463" height="23"><FONT size="-1">管理人:***様<BR> ***さんが描かれるイラストは、~。</FONT></TD> </TR> </TBODY> </TABLE>

    • ベストアンサー
    • HTML
  • ■至急■html詳しい方 テーブル内のリンク書式

    htmlでテーブル内にリンクを貼った場合の書式設定が 反映しません。 下記のテーブル内のTOP , PROFILEなどの文字色、文字サイズを 変更したいのですが、<font size="20">と書いても全く反映しません。 書く場所が悪いのでしょうか? <html> <head> <title>memuページ</title> <!--<link href="./style.css" rel="stylesheet" type="text/css">--> <body link="WHITE" vlink="WHITE" alink="WHITE"> </head> <body> <BR> <table width="1200" border="0" cellspacing="0" cellpadding="5" align="center"> <tr bgcolor="pink"><font size="20"><td colspan="2"><b> <td width="250" height="30"><a href="./main.html" target="main">|TOP|   <td width="250" height="30"><a href="./profile.html" target="main">|PROFILE| <td width="250" height="30"><a href="./shop.html" target="main">|SHOP|</td> <td width="250" height="30"><a href="./help.html" target="main">|HELP|</td></font> </table> </body> </html>

    • ベストアンサー
    • HTML
  • Firefoxでbackground-imageが上手く表示されない。

    Firefoxでbackground-imageの画像が文字の部分しか表示されません。 (IEでは表示されます。) http://hptoolbox.tm.land.to/ のトップメニューです。 スタイルシートのソースは以下の通りです。 ========================================= A.tab:Link,A.tab:Visited{ color : #336699; text-decoration:none; width : 124px; height : 25px; background-image : url(../images/tab1.gif); background-repeat: norepeat; background-position: left; text-align:center; font-size: 12px; margin-left:2px; padding-top:5px;} a.tab:hover{ background-image : url(../images/tab2.gif); background-repeat: norepeat; background-color:transparent; } ========================================= HTMLは以下の通りです。 ========================================= <table border="0" cellpadding="0" cellspacing="0"> <tr> <td width="124" height="25" align="center"><a class="tab" href="index.php">トップ</a></td> <td width="124" height="25" align="center"><a class="tab" href="cgi-bin/ps/ps_user.cgi?act=reg1">サイトの登録</a></td> td width="124" height="25" align="center"><a class="tab" href="cgi-bin/ps/ps_search.cgi?act=new">新着サイト</a></td> <td width="124" height="25" align="center"><a class="tab" href="cgi-bin/ps/ps_search.cgi?act=rank">アクセスランキング</a></td> <td width="124" height="25" align="center"><a class="tab" href="cgi-bin/ps/ps_search.cgi?act=plink">パーソナル</a></td> <td width="124" height="25" align="center"><a class="tab" href="link.html">リンク</a></td> <td width="124" height="25" align="center"><a class="tab" href="contact.html">お問い合わせ</a></td> </tr></table> ========================================= どなたか原因を教えて頂けないでしょうか。 宜しくお願い致します。

    • ベストアンサー
    • HTML
  • htmlについて

    htmlやJavaScriptを使って <a href="xxx" target="aaa">www</a> で指定した aaa のtable または td に ページを表示させることはできますか?

  • 写真集の写真を別窓で大きく表示したいのです

    写真集の写真を別窓で大きく表示したいのですが、 クリックしてもそのままの同サイズでしか別窓で表示されません。 大きく拡大した写真を表示したいのですが このタグでどこがいけないのでしょうか? アドバイスよろしくお願いします!   <tr> <td align="center" valign="middle" width="128" height="128"><A href="s-d11900251.jpg" target="_blank"><IMG src="s-d11900251.jpg" border="0" width="160" height="120"></A></td>

    • ベストアンサー
    • HTML

専門家に質問してみよう