【 HP質問箱 】

新しい質問は「新規入力」ボタンをクリックしてください。
| Back | Next | Page-3

【HP質問箱/詳細】 一覧 / 詳細

  No.10007 テーブルのなかの画像の位置について
[ES] [ブラウザ]  09/09/08 (火) 17:11
お世話になります。
下記のようなテーブルがあります。

電話  
0××ー×××ー××××
メール
◎◎@△.ne.jp

電話とメールが 画像になっています。

このとき、テーブルの属性に 「vertical-align:middle」
と入れることで上下の幅を均等しようと思ったのですが、
テキストは真ん中になりましたが、
どうも画像のメールだけが真ん中よりちょい上のように見えます。
どうしてでしょうか。
もとの画像がダメなのでしょうか。
抽象的にしか質問できずわかりにくいかもしれませんが、
回答よろしくお願いします。
  No.10008 Re:テーブルのなかの画像の位置について
[atom] [ブラウザ]  09/09/08 (火) 17:50
そうですね、抽象的で原因を特定できませんね。

こちらで判る方法と言えば..
たとえば、メールの画像と電話の画像を入れ替えたらどうなるのでしょうか?

この時、メールの画像の方がおかしければ、画像の問題、
電話の画像の方がおかしければ、画像ではなく、テーブルやセルなどの他の問題ということになります。

できればそのページを見せてもらうのが、確実なのですけどね。


  No.10009 Re^2:テーブルのなかの画像の位置について
[ES] [ブラウザ]  09/09/09 (水) 16:42
逆に入れ替えてみました。すると、どちらも真ん中にあるような感じに見えます。

よくわかりません。画像の問題でしょうか。

その画面を添付します。

添付したら画像が映りませんでした。
こちらで考えてみます。
  No.10003 画像クリックで別の画像に切り替わる場合
[MIRA] [ブラウザ]  09/08/31 (月) 20:19
初めまして。
HPを始めてもう一年になりますが、まだまだ初心者同然です。
過去ログを見たのですが解決には至らず、
恥を忍んで質問させていただきます。

わたしはイラストサイトをやっております。
今更な質問ですが、タイトルにもある通り、画像(アイコン)クリックで別の画像(アイコン)に切り替わるというふうにするにはどうしたらよいでしょうか。
イラストサイトでよくあるあれです。

本当に殆どなにもわかっていないので、詳しく説明をしていただけたらと思います。
よろしくお願い致します。
  No.10004 Re:画像クリックで別の画像に切り替わる場合
[atom] [ブラウザ]  09/08/31 (月) 20:41
このサイトにはご質問のようなサンプルがいくつもありますが、それらを読んでも判らないのでしょうか?

検索もしないで質問してるなら、ちゃんと検索してください。
もし、読んでも判らないなら、どこがどうわからないかご質問ください。
  No.10005 Re^2:画像クリックで別の画像に切り替わる場合
[MIRA] [ブラウザ]  09/09/03 (木) 16:58
勿論自分がまずすべきことはやりました。その上で質問させていただいてます
検索も致しましたし、サイト内も一通り目を通させて頂きました。
しかし何分未熟なもので、どこをどう見ればよいのかよくわからないのです。
どうも申し訳ございません。
  No.10006 Re^3:画像クリックで別の画像に切り替わる場合
[atom] [ブラウザ]  09/09/03 (木) 19:37
たとえばGoogle検索で「画像 クリック」と検索するだけで、たくさんのサンプルが出てきます。

あるいは、ここのサイトのサンプルなら、「DHTMLサンプル」-「オンマウスで画像の変更」があります。
http://beginners.atompro.net/smpdhtm_grpchgd.shtml

「onmouse(オンマウス)」を「onclick(オンクリック)」に変更すれば使用できます。

↓参考までにGoogleで検索した場合
http://www.google.co.jp/search?hl=ja&source=hp&q=%E7%94%BB%E5%83%8F%E3%80%80%E3%82%AF%E3%83%AA%E3%83%83%E3%82%AF&lr=&aq=f&oq=

  No.9996 質問です
[黒井光] [ブラウザ]  09/08/17 (月) 17:35
私は、こちらのサイト様を見ながらalphaEDITでHPを作成しています。
上下フレーム2分割をしていて、下窓にリンク、上窓にページを表示させたいのですが、そちらのサイトに書いてある通りにしても、リンクをクリックすると上窓ではなく別窓で表示されてしまいます。
解決策などがありましたらお教え下さい。

また、同じサイト内でリンクを貼る場合に、”~/~/ページ名.html”となるのを、ページ名.htmlまで短くするのですが、リンクのプロパティを開くたびに元に戻っています。
これは外部リンク以外全てなるのですが、大丈夫でしょうか?
また、上の問題と関係はないでしょうか?

過去にこのような事例がありましたら、解決方法を教えていただきたいです。

本当はメールの方で送ろうと思ったのですが、何度やってもエラーになってしまったのでこちらに失礼いたしました。

よろしくお願い致します。
  No.9997 Re:質問です
[atom] [ブラウザ]  09/08/17 (月) 21:03
メールの件は失礼しました。
後で見直し直しておきます。


今回のような事例は、初心者の方が時々質問されます。
問題は、nameに指定する名前と、targetで指定する名前が一致してないことがほとんどです。

参考までに「HP作成の予備知識」の簡単なフレームページの作成..を参考にしてみてください。
あと、「HTMLの解説」にもフレームの説明があります。
まずは参考にしてください。
  No.9998 Re^2:質問です
[黒井光] [ブラウザ]  09/08/18 (火) 01:05
質問への回答ありがとうございました。
しかし、やはり見ながら作業しても結果が変わりません。

そこで再びお尋ねしたいのですが、一つのフレームページからは
他のフレームページへ移動することは出来ないのでしょうか?

現在フレームページを上下で作成し、下がメニュー(各ページへのリンクが6つ)、上が各ページです。
例えばmainという上ページでフレームを作った場合、
この下フレームのリンクからaboutというページへ上フレーム表示で飛ぶことは出来ないのでしょうか?

先ほど確認しましたが、mainのフレームページから
同ページへのリンクはフレーム状態で移動可能でした。
しかし、同フレームの下リンクにあるaboutに飛ぼうとしても
新しいウィンドウで表示されてしまいます。
ちなみにaboutもフレームページを作っており、
こちらのフレームページからもaboutページのみ
フレーム表示され、他のリンクへは新しいウィンドウで
表示されてしまいます。

なお、nameに指定する名前と、targetで指定する名前が一致していることは全リンクにおいて確認しました。

過去ログ(?)を見ても分からなかったので、
解決策をご存知でしたらお教えいただけますでしょうか?

よろしくお願いいたします。


長文失礼致しました。
  No.9999 Re^3:質問です
[atom] [ブラウザ]  09/08/18 (火) 11:59
ひょっとして、フレームが入れ子になってるのかな?
(フレームの中に新たなフレームを作っている?)

もしそうなら、そのフレーム関係を親、子と例えると、
子供から親のフレームページを変更したいということではないでしょうか?

その場合は、親フレームの指定には「parent.」を使います。

親の「main」というフレーム枠を変更したい場合は、
「parent.main」と指定します。

このあたりは、「HTMLの解説」でも説明しています。
※フレームの入れ子は説明してなかったです。(^_^;)
もしサーバーにアップしているならそのページが見れた方が直接原因を調べることができるのですがねぇ。
  No.10000 Re^4:質問です
ホーム [黒井光] [ブラウザ]  09/08/18 (火) 14:50
> ひょっとして、フレームが入れ子になってるのかな?
> (フレームの中に新たなフレームを作っている?)
多分そうではないです;

仮状態ですがサーバーにアップしましたので、宜しければご覧になって下さい。

なお、URLはindexに飛びますが、ENTERから入ったページが問題のフレームページです。

何度もすみませんが、よろしくお願いしますm(_ _)m

  No.10001 Re^5:質問です
[maimu] [ブラウザ]  09/08/19 (水) 04:08
> > ひょっとして、フレームが入れ子になってるのかな?
> > (フレームの中に新たなフレームを作っている?)
> 多分そうではないです;
>
> 仮状態ですがサーバーにアップしましたので、宜しければご覧になって下さい。
>
> なお、URLはindexに飛びますが、ENTERから入ったページが問題のフレームページです。
>
> 何度もすみませんが、よろしくお願いしますm(_ _)m
>

拝見しましたが、
別窓表示になる原因はやはりターゲットの指定ミスだと思いますね。

ENTERから入ったページが問題のフレームページ。
で、上フレーム名は
<frame name="main" src="main.html" scrolling="auto">
のようにmainと指定

nameに指定する名前とは、この
<frame name=" "
つまりフレーム名の部分ですね。

それなのに、下フレームに表示されているmenu.htmlを見てみると
<a href="about.html" target="about" >About</a>
<a href="voice.html" target="voice" >Voice</a>
<a href="mail.html" target="mail" >Mail</a>
とターゲット指定が別々(しかもフレームページでnameに指定が無い名前)です。
上フレーム(フレーム名main)に表示したいなら、全てtarget="main"とするべきですね。

※ページのファイル名がabout.html、voice.htmlなので、それと一致するようにtarget指定も同じ名前(about、voice)にしたのでしたら、
その考え方は誤りです。
  No.10002 Re^6:質問です
[黒井光] [ブラウザ]  09/08/19 (水) 16:22
そうだったのですか!
理解力が足りなくてすみませんでした。

教えていただいた通りに変更したらちゃんとできました。
本当にありがとうございます!!

ご迷惑お掛けしましたm(_ _)m
  No.9993 余白?
添付 [ES] [ブラウザ]  09/07/13 (月) 17:20
何度もすみません。
なかなか作業する機会自体がとれずに止まっていましが、
また再開しました。
そして即壁にぶちあたり。。

作っているサイトそのものを添付しました。

ここで今どうしてもできないのが、
「はじめまして。…」と続くところです。(m-rの部分)
何ができないかというと、この文章の始まりが、
左はどうもpadding-leftで指定していけてるみたいなのですが、上(top-l2)から いくつと指定したいのに、
marginやpaddingを使っても、画面のサイズを変えると、
すごく上の空白が大きくなります。
見た目変ですよね。
どのように設定すればいいのでしょうか。
助けてください。
  No.9994 Re:余白?
[atom] [ブラウザ]  09/07/13 (月) 23:57
これはテーブルのセル(td)でしょ?

tdの上下間隔に対する位置関係は標準で中央です。

ですから、画面を大きくすると中央により、上下に大きな余白ができてしまい、指定したマージンが意味をなさなくなるのです。

上余白(margin-top、padding-top)などを指定したいなら上寄せをしてないと意味がありません。

cssではtdに「vertical-align: top;」などを指定します。
  No.9995 Re^2:余白?
[ES] [ブラウザ]  09/07/14 (火) 15:03
> これはテーブルのセル(td)でしょ?
>
> tdの上下間隔に対する位置関係は標準で中央です。
>
> ですから、画面を大きくすると中央により、上下に大きな余白ができてしまい、指定したマージンが意味をなさなくなるのです。

初めて知りました。
全部読んで理解してから作り出したつもりでしたが、抜けまくってますね。(>_<)
的確なアドバイスありがとうございます。
できました。
やはり素人がHPを作るのは難しいです。
とりあえず、次に進みます。


  No.9987 フレームページの件
ホーム [ようこ] [ブラウザ]  09/07/04 (土) 00:16
過去にもご質問させていただいた者です。
実家のパソコンを使って、HPを更新しようとしたところ、フレームページが表示されなくなってしまいました。
さらにいろいろと扱っていたら以前のデータまで消してしまい、かなりショックを受けております。。。

フレームページのみが表示されないというのは、どのような原因が考えられるのでしょうか?
パソコンがVistaだとこのようなことがあるのでしょうか?

お忙しいところすみませんが、教えていただけたらと思います。
よろしくお願いします。
  No.9989 Re:フレームページの件
[atom] [ブラウザ]  09/07/04 (土) 00:35
もし、これがalphaEDITの話なら、
alphaEDITでフレームページを作成する場合、
新規作成はできても訂正はうまく機能しないようです。

もし、サーバー側で正しい表示ができるなら、サーバーからダウンロードするという手があります。

それ以外の問題だと、もう少し状況を詳しく説明してくれないと、情報が少な過ぎて何を答えたらいいかわかりません。
  No.9990 Re^2:フレームページの件
ホーム [ようこ] [ブラウザ]  09/07/04 (土) 01:21
すぐにお返事いただけてうれしいです。
ありがとうございます。
それとうまく文章で表現できず、わかりづらくて申し訳ありません。

alphaEDITで作っています。
プレビュー画面で何も表示されないんですが、サーバーにUPするとちゃんと出てきます。
編集した箇所もちゃんと更新されています。

サーバーからダウンロードというのはどのようにするのでしょうか?
ぜひ教えていただきたいです。

それと、もう一つ疑問があるのですが、フレームページで作ったものを、パソコン画面の真ん中にくるようにレイアウトしたいのですが、それはどのようにすればいいのでしょうか?今作っているものが左寄りになっているので、中央に表示させたいと思っています。

いろいろお聞きして申し訳ありません。

よろしくお願い致します。

  No.9991 Re^3:フレームページの件
[atom] [ブラウザ]  09/07/04 (土) 10:12
alphaEDITは各単一ページの編集はできても、フレームページを直接再確認したり、編集したりする機能はありません。
あくまでも、フレームページを簡単作成するための機能があるだけです。


> サーバーからダウンロードというのはどのようにするのでしょうか?

サーバーからのダウンロードは、
ffftpだとアップロードの反対、
サーバー側のファイルをパソコン側に移動するだけです。
上書きされますので、現在のファイルが大事なら別フォルダにコピーしておくか、別フォルダにダウンロードするなど、注意が必要です。


フレームページ自体はそのページを分割する機能しかありません。
したがって、各ページ単位で左寄せ右寄せなど、レイアウトを変えられても、フレームページ自体の右寄せ中央寄せなどはありません。

あくまでも画面分割機能だけです。

ページデザインを重視するならフレームページはあまりお勧めできません。

  No.9992 Re^4:フレームページの件
ホーム [ようこ] [ブラウザ]  09/07/04 (土) 10:23
わかりました。
ご丁寧に教えていただき、どうもありがとうございました。
とても勉強になりました。
  No.9980 flash挿入による警告回避について
[RIBON] [ブラウザ]  09/06/29 (月) 15:32
ホームページ作成でflashを挿入すると「警告」が出ます。
回避方法として<!-- saved from url=(0014)about:internet -->を入れましたが、こうすると「警告」は無くflashは正常に動きますが「リンク」が全て飛ばなくなります。考えられる原因を教えてください。よろしくお願いします。
  No.9982 Re:flash挿入による警告回避について
[atom] [ブラウザ]  09/06/29 (月) 17:28
う~ん..
その問題は、サーバーの設定に関わる問題のようですので、一度、その問題点、回避方法など、サーバー管理者に尋ねられてはどうでしょうか?

こちらとしてはサーバーの設定など、管理者ではありませんので、現時点で、何故制限がかかってるのか、また、可能なのか不可能なのかもわかりません。
  No.9984 Re^2:flash挿入による警告回避について
[atom] [ブラウザ]  09/06/29 (月) 23:02
こんな特殊な命令ってどうやって知ったのでしょうか?

インターネットでその命令を調べたら、ローカルファイルを表示させたり、アクセスしようとした場合、危険な行為なのでセキュリティ上、エラーになる..というような説明がありました。

そういう特殊な命令を意味もわからず使用することは危険ですよ。
使用する前に調べましょうね。
  No.9986 Re^3:flash挿入による警告回避について
[RIBON] [ブラウザ]  09/06/30 (火) 18:35
> こんな特殊な命令ってどうやって知ったのでしょうか?
>
> インターネットでその命令を調べたら、ローカルファイルを表示させたり、アクセスしようとした場合、危険な行為なのでセキュリティ上、エラーになる..というような説明がありました。
>
> そういう特殊な命令を意味もわからず使用することは危険ですよ。
> 使用する前に調べましょうね。
>

早急なご返信ありがとうございました。
ちゃんと調べるようにします。
  No.9973 テーブルによるページ構成
[ES] [ブラウザ]  09/06/23 (火) 17:35
たびたびすみません。
フレーム処理だといけないという結論にいたり、
ページ構成を変えようと思います。
すべてをテーブルにして、セルとしてそれぞれ内容を描いていこうとしましたが、また問題が。

セルの一つとして表があるのです。
つまり、テーブルの中にテーブルの記述ができてしまって。
そうすると、おおもとのテーブルにあてはめたい色とかが、
中のテーブルの記述が出てきたところで終わってしまって。
テーブルの中にテーブルというのはできないのでしょうか。

意味通じますでしょうか。説明べたですみません。
アドバイスお願い致します。

  No.9974 Re:テーブルによるページ構成
[atom] [ブラウザ]  09/06/23 (火) 18:04
いや、ちょっと意味がわかりません。

テーブルの中のテーブルは何も問題ありませんし、特に指定がなければ、外側の指定がそのまま生きてます。

<table border="1" style="background: #ccffff">
<tr>
<td>

<table border="1">
<tr>
<td>
ちちちち
ととと
</td>
</tr>
</table>

</td>
</tr>
</table>



ちちちち
ととと



  No.9975 Re^2:テーブルによるページ構成
[ES] [ブラウザ]  09/06/25 (木) 14:44
> テーブルの中のテーブルは何も問題ありませんし、特に指定がなければ、外側の指定がそのまま生きてます。

すみません、こちらの記述ミスでした。
ミスをなくさないといけませんね。。
ただ、その問題は、記述ミスだったということで解決するのですが、
テーブルですべて囲もうとすると、まわりに余白ができてしまいました。
すべてをborder指定してみたら、そのようになったのです。
あれ、でもこのatomさまお作りのページはそんなことないですね。テーブルだと駄目?!
また間違っているのでしょうか(^_^;)。

とりあえず、質問の内容については
上記のような原因で解決いたしましたので、ご報告させていただきます。

  No.9976 Re^3:テーブルによるページ構成
[atom] [ブラウザ]  09/06/25 (木) 15:15
これもまた内容がよくわかりませんが、
初心者に多いのが、妙な所に全角空白が入ってると、テーブルの表示が崩れたりします。

こちらとしては普通に行えることができない時は、言葉だけではわかりません。
実際のページを見せていただくのが一番だと思います。

※追加
ひょっとしてページ周りにある微妙な隙間のことでしょうか?
もしそうなら、スタイルシートで次のようにページマージンを「0」にすることで解決します。

body{ margin: 0; }
  No.9977 Re^4:テーブルによるページ構成
添付 [ES] [ブラウザ]  09/06/26 (金) 16:06
教えていただいたもの正解です。
よくわかりますね。私がボケてるのでしょうか。。

現況を添付します。上がCSS記述分。後半がhtml記述分です。

今困っていることは、テーブルのなかのテーブルがあるところの大きさです。
tdとしての幅を80pxくらいに、また中のテーブルをもっと右に持っていきたいのですが、動きません(泣)

どこがおかしいのでしょうか。
  No.9978 Re^5:テーブルによるページ構成
[atom] [ブラウザ]  09/06/26 (金) 16:50
tableには無条件で隙間を作る設定が入ってます。

cssで設定するなら「table」に「border-collapse: collapse;」を追記してください。

タグで次のように指定したのと同じです。
<table cellspacing="0">

それと、隙間を開けたくないなら、tdに背景色を指定するのではなく、table自体に背景色を設定するという手もあります。

  No.9979 Re^6:テーブルによるページ構成
[atom] [ブラウザ]  09/06/26 (金) 17:05
上記(No.9978)の返信はページ全体のテーブルの僅かな隙間もなくす方法でした。

今回の質問。
cssがちょっと込み入ってますね。

できるだけ不要な設定を無くし、シンプルにした方がいいですよ。

tdとしての幅を80pxにしたいということですが、このテーブルは「width:700px」と指定されてます。
セルが6つしかありませんので、ひとつのセル幅は
700px ÷ 6 = 約116px となり、
セルのwidthを指定しても無視されます。

便利な機能ですが、
tableの幅を指定して、セル幅を自動にするか、
table幅を無指定にして、セル幅を指定するか、
のどちらかにしないと設定がぶつかってしまいます。

それと、tableを右にずらせたいのなら内側のテーブルに「margin-left:200px;」などと指定すればいいでしょう。
margin-rightはありますが、margin-left指定はありません。
margin-rightの指定が単なるミスなら、削除すべきでしょう。
左詰めであればmargin-leftだけで充分でしょう。


  No.9981 Re^7:テーブルによるページ構成
[ES] [ブラウザ]  09/06/29 (月) 15:39
返信遅くなり申し訳ありません。

> できるだけ不要な設定を無くし、シンプルにした方がいいですよ。

そうなのでしょうね。。ただ、何が不要か判断するのが難しいです。

> tdとしての幅を80pxにしたいということですが、このテーブルは「width:700px」と指定されてます。
> セルが6つしかありませんので、ひとつのセル幅は
> 700px ÷ 6 = 約116px となり、
> セルのwidthを指定しても無視されます。

すみません、ここは”幅”ではなく、”高さ”でした。
中のテーブルの高さは40px指定、そのテーブルが入るtdは
80pxに指定したいのですが、どう見ても80px以上に
なっている状況です。

> それと、tableを右にずらせたいのなら内側のテーブルに「margin-left:200px;」などと指定すればいいでしょう。
> margin-rightはありますが、margin-left指定はありません。
> margin-rightの指定が単なるミスなら、削除すべきでしょう。
> 左詰めであればmargin-leftだけで充分でしょう。
>
左詰めでなく、右詰めを教えてくださったのですよね。
marginの説明は何度読んでもたまに?なことをしてしまいます。
left指定ですね、わかりました。
  No.9983 Re^8:テーブルによるページ構成
[atom] [ブラウザ]  09/06/29 (月) 18:44
何が不要かがわからないなら、ひとつひとつ、削除したり入れたりしていけばいいでしょう?

入れても外しても変わりないのであれば必要ないということです。
タグだけに限らず、細かい設定もひとつひとつチェックしてみればいいだけの事です。


> 中のテーブルの高さは40px指定、そのテーブルが入るtdは
> 80pxに指定したいのですが、どう見ても80px以上に
> なっている状況です。

それなら「td.top-l2」のcssに「height:80px;」を追加すればいいだけです。


> 左詰めでなく、右詰めを教えてくださったのですよね。

違います。
現在左詰めになってるから「magin-left」は効果があっても「margin-right」は指定しても意味がないでしょう?
って言う意味です。

「margin」とは余白のことでその端からどれだけの余白を作るか?という意味です。
左詰め(左に寄ってる)なのに、その右側にマージン(余白)を指定しても意味がないでしょう?
という意味です。

わからなければ、簡単なサンプルを自分で作り、簡単なcssを設定して確認すればいいのです。
言葉で理解できないなら、ご自分で設定し、体で覚える必要があります。


  No.9985 Re^9:テーブルによるページ構成
[ES] [ブラウザ]  09/06/30 (火) 16:27
> タグだけに限らず、細かい設定もひとつひとつチェックしてみればいいだけの事です。

がんばります!

> > 中のテーブルの高さは40px指定、そのテーブルが入るtdは
> > 80pxに指定したいのですが、どう見ても80px以上に
> > なっている状況です。
>
> それなら「td.top-l2」のcssに「height:80px;」を追加すればいいだけです。

そのとおりでした。入れてるつもりでしたが、抜けていました(^_^;)


> > 左詰めでなく、右詰めを教えてくださったのですよね。
>
> 違います。
> 現在左詰めになってるから「magin-left」は効果があっても「margin-right」は指定しても意味がないでしょう?
> って言う意味です。
>
> 「margin」とは余白のことでその端からどれだけの余白を作るか?という意味です。
> 左詰め(左に寄ってる)なのに、その右側にマージン(余白)を指定しても意味がないでしょう?
> という意味です。

詳しく書いていただいてありがとうございます。
やっと意味を理解できました。不出来ですみません。

> 言葉で理解できないなら、ご自分で設定し、体で覚える必要があります。

練習あるべし、ですね。
なかなかHP作りに時間を割く余裕がありませんが、
忘れない程度には作っていかないと。

いろいろありがとうございました。
なんとかページ構成はできた模様です。
ここに具体的な内容をどう記述していくか、
また壁にブチあたりながらやっていくことになるでしょう。
質問もさせていただくと思いますが、よろしくお願いいたします。



  No.9954 文字化け
[oyama] [ブラウザ]  09/06/15 (月) 09:45
PHPは文字化けしないのですが、

$param=@ARGV[0];

http://○○○/exa.cgi?ANIMEドラえもん

URLに日本語が含まれていると、日本語が文字化けして今います。
対策方法は無いでしょうか?
  No.9955 Re:文字化け
[oyama] [ブラウザ]  09/06/15 (月) 09:52
「追加」
CGI(Perl)だと、文字化けしてしまいます。
  No.9956 Re^2:文字化け
[atom] [ブラウザ]  09/06/15 (月) 10:17
Perlは基本的にeuc-jpコードが標準のようです。
Windowsは基本sjisですよね?
その文字コードの違いにより文字化けするのです。

入力パラメータで日本語を扱うには、日本語処理の機能を組み込む必要があります。

掲示板で説明するのは難しいので、Googleの検索結果を貼っておきます。
http://www.google.co.jp/search?hl=ja&q=perl+%E6%97%A5%E6%9C%AC%E8%AA%9E+%E5%A4%89%E6%8F%9B&lr=&aq=4&oq=perl+%E6%97%A5%E6%9C%AC%E8%AA%9E

  No.9959 Re^3:文字化け
[oyama] [ブラウザ]  09/06/15 (月) 20:05
require "jcode.pl";
$param=@ARGV[0];
jcode::convert(\$param,'euc');
print $param;

と記述しましたが、サーバーエラーでは無いようですが、
何も表示されません。
  No.9960 Re^4:文字化け
[atom] [ブラウザ]  09/06/15 (月) 23:04
「jcode.pl」は同一フォルダに設置しましたか?

どんな状態でテストされてるのかよくわかりませんが、上記のような記述ではエラーで実行されないでしょう?

通常であれば、まずは次のようなテストをするべきですが。
このような簡単なテストはされたのでしょうか?

難しいことを一度にせず、簡単なテストをたくさん繰り返して、どこまでなら正しく動作するのか、テストをすべきですよ。

#!/usr/bin/perl
#↑この行は半角で記述する

require "jcode.pl";
$param="日本語テスト";
jcode::convert(\$param,'sjis');

print "Content-type:text/html\n\n";
print $param;
  No.9961 Re^5:文字化け
[oyama] [ブラウザ]  09/06/16 (火) 09:09
>「jcode.pl」は同一フォルダに設置しましたか?
設置しています。

「jcode.pl」を作成し、
http://srekcah.org/jcode/jcode.pl-2.13
からダウンロード(コピー)しました。

しかし、
500サーバーエラーになってしまいます。
require "jcode.pl";
$param="日本語テスト";
jcode::convert(\$param,'sjis');

print "Content-type:text/html\n\n";
print $param;
  No.9963 Re^6:文字化け
[atom] [ブラウザ]  09/06/16 (火) 16:45
私がサーバーでテストしたらちゃんと表示されましたがねぇ。

では2箇所潰した、次のような記述では正常に表示されるのでしょうか?

#require "jcode.pl";
$param="日本語テスト";
#jcode::convert(\$param,'sjis');

print "Content-type:text/html\n\n";
print $param;

それと、テスト用のCGIと「jcode.pl」のパーミッションは「755」になってるでしょうか?
  No.9964 Re^7:文字化け
[oyama] [ブラウザ]  09/06/16 (火) 19:31
はい。
正常に表示されました。
  No.9965 Re^8:文字化け
[atom] [ブラウザ]  09/06/16 (火) 22:27
では、

require "jcode.pl";
$param="日本語テスト";
#jcode::convert(\$param,'sjis');

print "Content-type:text/html\n\n";
print $param;


これでは?
この方法は、定義しただけで実際には呼び出してません。
  No.9966 Re^9:文字化け
[oyama] [ブラウザ]  09/06/17 (水) 08:42
ありがとうございます。

サーバーエラーが発生してしまいました…
  No.9967 Re^10:文字化け
[atom] [ブラウザ]  09/06/17 (水) 18:07
となると、

require "jcode.pl";

この行がおかしいということになります。

これは単純に「jcode.pl」を読み込むだけですが、それがエラーになるということですね。

なら、
1.「jcode.pl」が存在しない。
2.「jcode.pl」が壊れてる。
3.「jcode.pl」が正しく設置できてない。
4.パーミッションが間違ってる。

などが考えられます。

サーバーに設置した「jcode.pl」のファイル名を「jcode.txt」に変更し、この掲示板に添付してください。

こちらでも確認してみます。
  No.9968 Re^11:文字化け
添付 [oyama] [ブラウザ]  09/06/17 (水) 19:38
ありがとうございます。
ファイルを振付けます。
  No.9969 Re^12:文字化け
[atom] [ブラウザ]  09/06/17 (水) 19:47
やっぱり..

これじゃあエラーになります。
改行が全く入ってません。

画面上のものをそのままコピーしましたね。
本当は「ソース表示」してそれを張りつけるか、ちゃんとダウンロードしないとだめですよ。

次の方法を試してみてください。
1.そのリンクを右クリック
2.「対象をファイルに保存」をクリック
3.名前を「jcode.pl」にして保存

それでもうまくいかない場合はこちらで方法を考えます。
  No.9970 Re^13:文字化け
[oyama] [ブラウザ]  09/06/17 (水) 19:54
ありがとうございます!
試してみたら上手くいきました!

しかし、
【記述】
require "jcode.pl";
$param=@ARGV[0];
jcode::convert(\$param,'sjis');

print "Content-type:text/html\n\n";
print $param;

【アクセス】
http://○○○/exa.cgi?ANIMEドラえもん

パラメータを取得すると、文字化けしてしまいます
  No.9971 Re^14:文字化け
[atom] [ブラウザ]  09/06/18 (木) 12:47
いろいろ調べてみました。

すると「jcode.pl」は、内部(スクリプト内)の文字のコード変換には有効ですが、パラメータ入力の日本語に対してはどうしてもうまくできませんでした。

それはブラウザが標準でsjis、ところがperlはeucが標準のため、パラメータを受けた時点で既に文字化けしてる可能性がありそうです。

そこで、よそ様のcgi、また、このサイトの提供しているスキンボードcgiで使用している方法の方が近道だと感じてきました。

それは「cgi-lib.pl」を使用する方法です。

■ 作成サンプル
require 'cgi-lib.pl'; #&ReadParse(*in)の為必要

&ReadParse(*in);

( $key, $value ) = each( %in );
print "Content-type:text/html\n\n";
print "$key";

です。

また、呼び出し方法は、urlエンコードをして呼び出す必要があります。

×exa.cgi?ANIMEドラえもん
○exa.cgi?ANIME%83h%83%89%82%A6%82%E0%82%F1

上記の説明で専門的な知識がいろいろ出てきますが、ネット検索などで調べてください。
ここの掲示板で説明してるときりがありませんから。
  No.9972 ありがとうございました
[oyama] [ブラウザ]  09/06/18 (木) 20:47
ありがとうございました。
  No.9947 リンクについて
[ES] [ブラウザ]  09/06/12 (金) 16:13
2つのフォームを使って1ページとしています。
上下にわかれているのですが、上は、ホームとか問い合わせとかで、
下はページによってそれぞれ変えたいのですが、
このとき、問い合わせにリンクをはっても、
上のページ上でリンクされるだけで下は変わりません。
もしかしてこういうものですか。
常に上の部分はどこのページに行っても同じにしたくて、
やってみたのですが。。
どのようにすればいいか教えてください。
  No.9949 Re:リンクについて
[atom] [ブラウザ]  09/06/12 (金) 21:07
う~ん..フォームではなくフレームのことかな?

フレームで上下2分割し場合、何も指定がなければ、それぞれが独立して動作します。

ただ、aタグの「target」属性を使えば多少のコントロールはできます。
クリックすると下のフレームだけページ変更するなどのコントロールができるようになります。

「target」属性は、ここのサイトの「htmlの解説」などにもありますが、少しややこしいかもしれません。

  No.9957 Re^2:リンクについて
[ES] [ブラウザ]  09/06/15 (月) 14:06
> う~ん..フォームではなくフレームのことかな?

そうです。ACCESSの属性と間違って書いてしまいました。
すみません。

> ただ、aタグの「target」属性を使えば多少のコントロールはできます。
> クリックすると下のフレームだけページ変更するなどのコントロールができるようになります。
>
target="_top" と記述することで出来ました。


根本的な問題として、
同じ部分はひとつのHTMLで、フレームを2分割にして
それぞれ下だけを変えていく方が、なんとなくいいのかなと思っていたのですが、
ひとつのフレームで毎回同じ記述部分があっても、それはそれでいいのでしょうか。
何か違いは出てくるものですか?
  No.9958 Re^3:リンクについて
[atom] [ブラウザ]  09/06/15 (月) 15:45
同じ記述がたびたび出てきても何ら問題はありません。

それよりも、フレームページは検索エンジンに引っ掛かりにくい、引っかかってもフレームページとしてではなく、単体ページ表示となりますので、
どこかにフレームページへのジャンプ先リンクなどを記載するなどの工夫があった方がいいでしょう。
  No.9962 Re^4:リンクについて
[ES] [ブラウザ]  09/06/16 (火) 15:11
なるほど。
よくわからないまま作ると危険ですね。
まだアップしていないので、他からどのように見えるか
全然確認できていません。

構成から考えなおそうと思います。
ありがとうございました。
  No.9951 PHP
[oyama] [ブラウザ]  09/06/14 (日) 18:08
返信が出来なかったので再投稿します。

Perlでパラメータ取得
http://beginners.atompro.net/expcgi_cgi10.shtml
ですが、
PHPでも同じように、
パラメータを取得したいです。
可能でしょうか?

filedsp1.cgi?testhtm.dat

のような事をPHPで…
  No.9952 Re:PHP
[atom] [ブラウザ]  09/06/14 (日) 18:48
> filedsp1.cgi?testhtm.dat
> のような事をPHPで…

PHPの場合、サーバー環境に左右されることが多いですが、通常であれば、上記のパラメータは「$_SERVER['QUERY_STRING']」で取得できます。


  No.9953 Re^2:PHP
[oyama] [ブラウザ]  09/06/15 (月) 09:23
ありがとうございました。
| Back | Next | Page-3

 一覧 / 詳細


page update:11/07/06 21:02

Copyright (c) 2000-2009, all Rights Reserved & Produced by atom