[PHP-users 29454] Re: ページ表示エラー
sudo kan
hoataa @ hotmail.com
2006年 6月 21日 (水) 14:03:24 JST
お世話になっております。須藤です。
寺尾さん、ご回答ありがとうございます。
> ソースを見てる限りおかしなところはないかな?と思います。
> 流し読みなので、気づいてないかも知れませんけど・・・。
>
> 検討違いかも、テンプレートの文字コードは何で書いておりますか?
> Shift-JISですと、そういった状態になることがあったように思います。
> EUC又は、UTF8で書くことをお勧めします。
> もし、すでに書いておられましたら申し訳ございません。
申し訳ありません。文字コード辺りを記述していませんでした。
bodyより上は以下のようになっております。
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN">
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="ja">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=Shift-JIS" />
<title>xxxxxxxx</title>
</head>
<body bgcolor="#FFFFFF">
仰られたように、charset部分をEUC-JP,UTF-8,他にはISO-2022-JP等に変えてみまし
たが、
変化がありませんでした。
ブラウザ自体のエンコードも変えてみましたが、それでもうまくいきません。
ソースを細かく新しいテキストに貼り付けていったのですが、やはり原因の場所は
form部分ですね。
ただhiddenをなくすとうまく表示できたり、hiddenをなくしても2つめのボタンを記
述すると
表示できなくなったりします。
smartyのif等が悪さをしてるのかとも考えられたので、単純にform1つ、2つと増やし
てみましたが
1つ目はOKなのに、2つ目は駄目になったりと、smartyなしでもエラーがでます。
スタイルシートも念の為消したりしてますが、それでもうまくいきません。
実は同じhtml内に同様の記述をしている部分があるのですが、そちらではうまく表示
されます。
以下のような感じです。
<table>
{foreach name="i" item="row_list" from=$rs}
<tr bgcolor={cycle values="#FFFFFF,#DDFFDD"}>
{foreach name="loopnum" key="key" item="data" from=$row_list}
{if $key == "member_id" || $key == "name" || $key ==
"date_update"}
<td>{$data}</td>
{/if}
{if $key == "member_id" || $key == "status"}
{assign var="$key" value=$data}
{/if}
{if $key == "carrier_code" }
<td>{$Member->get_term($data)}</td>
{/if}
{if $smarty.foreach.loopnum.last}
<td style="white-space: normal">
<form name="form1" method="post"
action="admin_member_update.html" style="position:relative; top:10px;">
<input type="submit" name="kousin" value="更新">
<input type="hidden" name="member_id" value={$member_id}>
<input type="hidden" name="before_after" value="0">
</form>
</td>
<td style="white-space: normal">
<form name="form1" method="post" action="admin_member_delete.html"
style="position:relative; top:10px;">
{if $status == 1}
<input type="submit" name="reentry" value="再入会" >
<input type="hidden" name="member_id" value={$member_id}>
<input type="hidden" name="before_after" value="0">
{else}
<input type="submit" name="delete" value="退会">
<input type="hidden" name="member_id" value={$member_id}>
<input type="hidden" name="before_after" value="0">
{/if}
</form>
</td>
{/if}
{/foreach}
</tr>
{/foreach}
</table>
ただこちらは2次元配列を2つのforeachを使用して順番に表示しています。
この方法だと、列の並び替えができない為、始めのように1つのforeachでの
表記方法を試みています。
千葉様、nomoto様、ご回答ありがとうございます。
if文の演算子の部分ですが、eq でも試してみましたが、
エラーは直りませんでした。
form部分でのif文自体を取り除いてやってみましたが、それでも結果は変わりません
でした・・・
_________________________________________________________________
MSN アラートで欲しい情報を必要な時に逃さずキャッチ!
http://alerts.msn.co.jp/
PHP-users メーリングリストの案内