初めての店舗開業を成功させよう>>

よろしくお願い致します。
現在オンラインショップをしております。
不可能なことかも知れませんが良策がございましたらお教え頂ければ幸いです。

ショッピングページ・カートは自動生成のレンタルで自ドメインページより
ショッピングページへリンクでとばしてお買い物をしてもらうシステムです。

現在は自ドメインのAというページにインラインフレームを作りそこに
レンタルの別URLショッピングページを表示させております。

自ドメインのindex.htmlページに設置してあるキーワード検索(商品の検索)の
検索結果を自ドメインのAページのインラインフレームに表示したいと
思っているのですが・・・方法がわからずご質問させて頂きました。

*通常はショッピングページにある検索窓を自ドメインのindexページに設置しました。

あくまでもCGIはレンタルショッピングページのあるサーバーにあり手をつけることはできないです。

htmlはタグ打ちできる程度理解しております。
perlやphpは素人レベルで理解がかなり浅い状態です。

どうぞご指南よろしくお願い致します。

このQ&Aに関連する最新のQ&A

A 回答 (2件)

ページの構成が良く分からないまま答えたので#1みたいな回答になりましたが、全然解決になってませんでしたね。

申し訳ない。

ページAにあるもの
・キーワード検索フォーム
・ショップを表示するインラインフレーム

ページBにあるもの
・検索結果を表示したいインラインフレーム

こんな構成でしょうか。
別ページに飛びつつ、その中のインラインフレームに検索結果を表示すると言うことになりますね。

これは、HTMLだけでは解決できないような気がします。

JavaScript・CGIなどで解決しようと思えば、出来なくは無さそうですが。
やっかいですね。


▽やっかいその1
JavaScriptだと。
別窓になりますが。
ページBがページAからJavaScriptで開かれた子ウインドウなら、インラインフレームの中に検索結果を表示するのは可能かもしれません。(未確認)


▽やっかいその2
ページBをCGIで作ると。
ページAの検索フォームで、ページB(CGI)に飛ぶ。
ページB(CGI)では、受け取ったキーワードを元に、検索結果URLを作成。IFRAMEのSRCにURLを書き込んで出力。


他にもっとスマートな方法があるのでしょうか。自分には思いつきませんでした。
    • good
    • 0
この回答へのお礼

度々のご返答心よりお礼申し上げます。
厄介なことをお尋ねしてかえって申し訳ございませんでした。
ページ構成はAページにはIFRAMEはなくBにIFRAMEがある構成です。
説明不足でもうしわけございませんでした。

仰せのとおり単純なものでは無いことがよく理解できました。
JavaScriptもしくはCGIを使用しないと難しいことがよくわかりました。

ご説明頂いた内容よりCGIのほうが良いように思いました。
只今Pealも勉強中ですので自作で出来るようがんばってみます。

大変お忙しい中ご親切な回答深くお礼感謝致します。
ありがとうございました。

お礼日時:2005/10/07 16:52

検索結果を取得して、自分でデザインして表示したいと言うことでなければ、


IFRAMEに名前を付けて、キーワード検索のFORMでターゲット指定するといける思います。

http://www.tagindex.com/html_tag/frame/i_name.html
http://www.tagindex.com/html_tag/form/form_targe …
    • good
    • 0
この回答へのお礼

お答え誠にありがとうございます。
とても解りやすく深くお礼申し上げます。
お忙しい中もうしわけございません。
もう1点お教えいただきたいのですが・・・
Aというページに設置してあるキーワード検索を
BというページのIFRAMEに検索結果を表示する場合は
Aのキーワード検索FORMのTARGETにBというページも指定しないと表示できませでした。
ページ(B.html)を指定する方法はどのようにすればよろしいのでしょうか?
どうぞよろしくお願い致します。

お礼日時:2005/10/07 15:27

このQ&Aに関連する人気のQ&A

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!

このQ&Aを見た人が検索しているワード

このQ&Aと関連する良く見られている質問

Q検索結果を別フレームに表示したい

ひどく初歩的な質問かとは思いますが、教えて頂きたいです。

Fessという全文検索システムを利用した検索サイトを構築しています。
http://fess.codelibs.org/ja/articles/article-4.html

上のページのソースを使って、検索フォームを作成したのですが、
検索結果を同ページ内では無く、別フレームに表示したいです。
<div id="subheader"></div>
<div id="result"></div>
の部分をどうにかすれば良いのかな、とは思っているのですが
皆目見当が付かないため、ご教授宜しくお願い致します。

<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8"/>
<title>検索サイト</title>
</head>
<body>
<div id="header">
<form id="searchForm">
<input id="searchQuery" type="text" name="query" size="30"/>
<input id="searchButton" type="submit" value="検索"/>
<input id="searchStart" type="hidden" name="start" value="0"/>
<input id="searchNum" type="hidden" name="num" value="20"/>
</form>
</div>
<div id="subheader"></div>
<div id="result"></div>
<script type="text/javascript" src="http://ajax.googleapis.com/ajax/libs/jquery/1.9.0/jquery.min.js"></script>
<script type="text/javascript" src="fess.js"></script>
</body>
</html>

ひどく初歩的な質問かとは思いますが、教えて頂きたいです。

Fessという全文検索システムを利用した検索サイトを構築しています。
http://fess.codelibs.org/ja/articles/article-4.html

上のページのソースを使って、検索フォームを作成したのですが、
検索結果を同ページ内では無く、別フレームに表示したいです。
<div id="subheader"></div>
<div id="result"></div>
の部分をどうにかすれば良いのかな、とは思っているのですが
皆目見当が付かないため、ご教授宜しくお願い致します。

<html>
...続きを読む

Aベストアンサー

ANo3です。


>JSONPは利用していません
ajaxでデータを取得しているのはあってますよね?


データをjsonで取得しているのか、他の形式で取得しているのかわかりませんが、ajaxをご利用なら、ご使用のスクリプトは大きく分けて、
 1)サーバにリクエストを送る処理
 2)データを受取り、ブラウザに表示する処理
とからなっていると想像します。

1)の部分は変更する必要はありません。
2)の部分でHTMLのDIVやSPAN等の内容にデータを反映している処理(=DOM操作)で、対象とする要素を例えば、
 document.getElementById(~~)
等のような方法で特定していると想像しますが、この時のdocumentはスクリプトがあるdocumentObject(=HTML文書)を意味しています。
他フレームの文書(=別のHTML文書)にデータを反映したい場合は、他フレームの文書(documentObject)のDIVやSPAN(=DOM)を対象とするように修正する必要があります。

上記のgetElementById()を例にすると、
 (他フレームのdocumentObject).getElementById(~~)
などとすることで、対象をそのフレーム内の要素として指定することができます。
具体的には
 parent.frames["hoge"].document.getElementById(~~)
のような記述になると思います。
上記のような修正を、表示処理の対象を指定している部分に対して行ってください。


詳細な説明は、検索するか、ANo3のリンク先から辿れると思います。

ANo3です。


>JSONPは利用していません
ajaxでデータを取得しているのはあってますよね?


データをjsonで取得しているのか、他の形式で取得しているのかわかりませんが、ajaxをご利用なら、ご使用のスクリプトは大きく分けて、
 1)サーバにリクエストを送る処理
 2)データを受取り、ブラウザに表示する処理
とからなっていると想像します。

1)の部分は変更する必要はありません。
2)の部分でHTMLのDIVやSPAN等の内容にデータを反映している処理(=DOM操作)で、対象とする要素を例えば、
...続きを読む

Qテーブル内の文字列を改行させたい

<TABLE border="1">
<tr> <TD>aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa</TD>
</tr>
</TABLE>

これを、ある一定の幅を指定して改行させたいのですが、
CSSを使おうが使わず指定しようが、反映されません。
全角文字だと反映されます。

IE6、IE7で対応させたいと思っています。

CSSでも何でも良いので、どうすれば対応出来るのか
ご教示下さい。

Aベストアンサー

英数半角文字だと、続けて入力した場合、一つの単語とみなして禁則処理をしてしまうんだと思います。
なので、<br>で改行するのがいいのかと思いますが、
IEで対応したいということなので、IE7で動作するかはわかりませんが、
word-break:break-all;
の指示で単語の切れ目を無視して改行してくれると思います。

参考URL:http://www.htmq.com/style/word-break.shtml

Qサイト内にGoogleサイトを表示する方法

こんにちは。
先日からPHPでメタサーチを作っています。

先日の質問
http://oshiete.goo.ne.jp/qa/7027045.html


複数の検索サイト(Yahoo!、Google等)から選択し、
検索窓に入力した値を検索サイトに送り、
iframe内に表示するようにしました。

しかし本日の昼頃から、Googleの検索結果が表示されなくなりました。

IE9では
「この Web サイトに入力する情報のセキュリティを保護するため、このコンテンツの発行者はフレーム内での表示を許可していません。」
と表示され、
FireFox、chromeではエラーすら表示されません。

iframeに問題があるのでしょうか?
objectタグ使用でも変化がなく、
php includeでも表示されませんでした。

Googleの公式サイトを表示する、他の方法がありますでしょうか?
ご教示お願い致します。


以下、ソースです。

search5.php

<?php
if (isset($_GET["keyword"])){
$keyword=$_GET["keyword"];
}else{
$keyword="";
}
$keyword4url=urlencode($keyword);
?>
<?PHP
if (isset($_COOKIE["chk_1"])){
$checked["chk_1"]=" checked";
}else{
$checked["chk_1"]="";
}

if (isset($_COOKIE["chk_2"])){
$checked["chk_2"]=" checked";
}else{
$checked["chk_2"]="";
}
print_r($_COOKIE);
?>

<!DOCTYPE HTML>
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
<script type="text/javascript">
function P1(w1){parent.frame1.location.href=w1}

function setCookie(key,val,url){
tmp = key+"="+escape(val)+";";
tmp += "expires=Fri, 31-Dec-2030 23:59:59;";
if(url){
tmp += "domain="+getDomain(url)+";";
tmp += "path="+getDomainPath(url)+";";
}
document.cookie = tmp;
};
function delCookie(key){
expiredate = new Date();
expiredate.setYear(expiredate.getYear()-1);
tmp = key+"=;";
tmp += "expires="+expiredate.toGMTString();
document.cookie = tmp;
};
function set_cookie_radio(){
delCookie("chk_1");
delCookie("chk_2");
if(document.getElementById("chk_1").checked) setCookie("chk_1","1");
if(document.getElementById("chk_2").checked) setCookie("chk_2","1");
}
function del_cookie_radio(){
delCookie("chk_1");
delCookie("chk_2");
}

</script>
</head>

<body>
<center>

<form action="search5.php" method="get">
キーワード:<input type="text" name="keyword" size="20" value="<?php echo $keyword;?>" onfocus="this.select()">

<input type="submit" value="検索する">
</form>

<form>
<input type="button" value="クッキー削除" onclick="del_cookie_radio()">
</form>

<form>
<input id="chk_1" type="radio" name="RB1" onClick="P1('http://search.yahoo.co.jp/search?p=<?php echo $keyword4url; ?>');set_cookie_radio()" <?PHP echo $checked["chk_1"];?>>Yahoo!
<input id="chk_2" type="radio" name="RB1" onClick="P1('http://www.google.co.jp/#q=<?php echo $keyword4url; ?>');set_cookie_radio()" <?PHP echo $checked["chk_2"];?>>Google
</form>

<iframe src="http://search.yahoo.co.jp/search?p=<?php echo $keyword4url; ?>" name="frame1" frameborder="1" scrolling="auto" width="977" height="600">
</iframe>

</center>
</body>
</html>

こんにちは。
先日からPHPでメタサーチを作っています。

先日の質問
http://oshiete.goo.ne.jp/qa/7027045.html


複数の検索サイト(Yahoo!、Google等)から選択し、
検索窓に入力した値を検索サイトに送り、
iframe内に表示するようにしました。

しかし本日の昼頃から、Googleの検索結果が表示されなくなりました。

IE9では
「この Web サイトに入力する情報のセキュリティを保護するため、このコンテンツの発行者はフレーム内での表示を許可していません。」
と表示され、
FireFox、chromeではエラーすら表...続きを読む

Aベストアンサー

>「この Web サイトに入力する情報のセキュリティを保護するため、このコンテンツの発行者はフレーム内での表示を許可していません。」

単純にGoogleから拒否されてるのでは?
拒否されていないにしても、そのようなものは作るべきではありません。

Google ブランドの第三者使用に関するガイドライン
http://www.google.co.jp/permissions/guidelines.html
上記ページの禁止事項に、
Google のページ(Google ロゴまたは Google 検索ボックスをクリックしたときに表示されるページを含む)をフレーム内に表示することやミラーリングすることは避けてください。
と書かれてあります。

Googleに限らず、フレームを用いて第三者のページ内に自社ページを組み込まれることを嫌う場合がほとんどではないでしょうか。

ちなみにYahoo!のヘルプは↓こちら
http://help.yahoo.co.jp/help/jp/common/view/view-51.html

QHTMLでテーブルを横に並べる方法

HTMLでホームページを作っています。
テーブルを横に二つ並べたいのですが、二つ目のテーブルはどうしても最初のテーブルの下の段になってしまいます。どうしたら横に並べることができますか?
教えていただければ幸いです。
よろしくお願いします。

Aベストアンサー

2列のテーブルを作ったらいかがでしょうか?
<table>
<tr>
<td>1つめのテーブルに入れる内容</td>
<td>2つめのテーブルに入れる内容</td>
</tr>
</table>

それぞれのテーブルをそのまま使いたいならば、
↑のテーブルのセルの中に、それぞれ入れれば2つ並びます。
<table>
<tr>
<td><table>←1つめのテーブル→</table></td>
<td><table>←2つめのテーブル→</table></td>
</tr>
</table>

QArrayListの使い方がわかりません。(超初心者です。)

情報管理用のクラス[Hito]を作成する。
プロパティ
 String name
double taijyu
double sincho
double nenrei

・メインクラスでHitoをArrayListに5つ格納し、それぞれの値を表示させるという課題に挑んでいます。

2週間前からjavaを勉強し始めたばかりで、ようやくオブジェクト指向や、クラスというものどんなものか多少イメージがわいてきた程度です。ArrayListについては配列と違い、格納するデータ数の数をはじめから決めなくてもいいというぐらいしかわかっていません。(これでさえ違うかも?)

 どのように組みはじめばいいか、そしてArrayListはどのように使えばいいのか教えていただけますか? よろしくお願いします。

Aベストアンサー

ほかの方の説明で理解を深めたら、以下のコーディングを打ち込んでコンパイルします。
C:\java\OKWeb>javac TestHito.java
成功したら、

C:\java\OKWeb>java TestHito
で実行してみてください。
C:\java\OKWeb>java TestHito
名前 あきら 体重 74.3 身長 184.3 年齢 35
名前 まみ 体重 44.5 身長 168.4 年齢 28

と表示されます。
先ず動く事で感動を得る事が大切だと思います。
import java.util.*;

class Hito {
private String name;
private double taijyu;
private double sincho;
private int nenrei;

public Hito(){
name="";
taijyu=0;
sincho=0;
nenrei=0;
}

public void setName(String name){
this.name = name;
}
public void setTaijyu(double taijyu){
this.taijyu = taijyu;
}
public void setSincho(double sincho){
this.sincho = sincho;
}
public void setNenrei(int nenrei){
this.nenrei = nenrei;
}
public String getName(){
return name;
}
public double getTaijyu(){
return taijyu;
}

public double getSincho(){
return sincho;
}
public int getNenrei(){
return nenrei;
}
}

public class TestHito{


public static void main(String []args){
Hito[] hito =new Hito[5];
for(int i = 0; i < 5; i++){
hito[i] = new Hito();
}
hito[0].setName("あきら");
hito[1].setName("まみ");
hito[0].setTaijyu(74.3);
hito[1].setTaijyu(44.5);
hito[0].setSincho(184.3);
hito[1].setSincho(168.4);
hito[0].setNenrei(35);
hito[1].setNenrei(28);
ArrayList result = new ArrayList();
result.add(hito[0]);
result.add(hito[1]);
for(int i = 0; i<result.size(); i++){
hito[i]=(Hito)result.get(i);
System.out.println("名前 "+hito[i].getName()+
" 体重 "+hito[i].getTaijyu()+
" 身長 "+hito[i].getSincho()+
" 年齢 "+hito[i].getNenrei());
}

}
}

ほかの方の説明で理解を深めたら、以下のコーディングを打ち込んでコンパイルします。
C:\java\OKWeb>javac TestHito.java
成功したら、

C:\java\OKWeb>java TestHito
で実行してみてください。
C:\java\OKWeb>java TestHito
名前 あきら 体重 74.3 身長 184.3 年齢 35
名前 まみ 体重 44.5 身長 168.4 年齢 28

と表示されます。
先ず動く事で感動を得る事が大切だと思います。
import java.util.*;

class Hito {
private String name;
private double taijyu;
private double sincho;
...続きを読む

QIOException ってどういうときに起こるのでしょうか?

IOException ってどういうときに起こるのでしょうか?

http://www.atmarkit.co.jp/fjava/rensai2/javaent12/javaent12.html
を見て勉強しています。

  catch ( IOException e) {
    System.out.println( "キーボードが故障しているのかもしれません" );
  }

と書いてあります。
ハード(キーボード)が故障しているのを Java のプログラムのレベル(ソフトウェア)で感知できるというのがよくわかりません。「

NumberFormatException の方はわかるのですが・・・

Aベストアンサー

現実的には、キーボードからの入力でIOExceptionが発生することは、
ほとんどあり得ないと思います。
そもそも、キーボードが故障していたとしても、
IOExceptionは投げられないでしょう。
「キーボードが故障しているのかもしれません」というのは、
その記事の著者が冗談で書いたのだと思います。

ではなぜ、try-catchを書かなくてはいけないのか?
InputStreamやBufferedReaderは、
データ入力を抽象化したものだからです。
実際の入力元はキーボードだったり、ファイルだったり、
ネットワーク接続だったりするわけですけど、
InputStreamは、その入力元の情報を持っていないので、
データを読み取る際は常に
IOExceptionをキャッチするコードを書かなくてはいけません。
たとえ、絶対にIOエラーが発生しないストリームだとしても。

さらに付け加えるなら、
そもそも「標準入力=キーボード」であるとは限りません。
(一般的にはキーボードであることが多いですが。)
Javaでは、
System.setIn(InputStream)
を呼び出して、標準入力を変えてしまうことができますし、
標準入力を指定してプログラムを実行することができるOSもあります。

追伸1:
例外をキャッチしたときは、
スタックトレースをプリントすることをおすすめします。
catch (IOException e) {
e.printStackTrace();
}

追伸2:
そのプログラムでIOExceptionを発生させる最も簡単な方法は、
readLine()を呼び出す前に
標準入力(System.in)を閉じてしまうことです。
System.in.close();

現実的には、キーボードからの入力でIOExceptionが発生することは、
ほとんどあり得ないと思います。
そもそも、キーボードが故障していたとしても、
IOExceptionは投げられないでしょう。
「キーボードが故障しているのかもしれません」というのは、
その記事の著者が冗談で書いたのだと思います。

ではなぜ、try-catchを書かなくてはいけないのか?
InputStreamやBufferedReaderは、
データ入力を抽象化したものだからです。
実際の入力元はキーボードだったり、ファイルだったり、
ネットワーク接...続きを読む

Qレコード件数の表示

夜分失礼します。
上記内容について教えてください。
今JAVAを用いてレコード件数(200件)を表示させようとしています。
しかし、レコードセットの表示方法しか知らず、またレコード件数をPHPで表示させる方法くらいしか検索できませんでした。どこがいけないか指摘してください。
以下にコア部分を書きます。

// ドライバクラスをロード
Class.forName("org.gjt.mm.mysql.Driver");
// データベースへ接続
String url = "jdbc:mysql://localhost:3306/db";
con = DriverManager.getConnection(url,"root","**********")
stmt2 = con.createStatement();
strQuery2 = " select count(*) AS RecordNums from ********** ";
ResultSet rs2 = stmt2.executeQuery( strQuery2 );
SumNo = rs2.getFetchSize();

どうしてもSumNo=0となってしまいます。

夜分失礼します。
上記内容について教えてください。
今JAVAを用いてレコード件数(200件)を表示させようとしています。
しかし、レコードセットの表示方法しか知らず、またレコード件数をPHPで表示させる方法くらいしか検索できませんでした。どこがいけないか指摘してください。
以下にコア部分を書きます。

// ドライバクラスをロード
Class.forName("org.gjt.mm.mysql.Driver");
// データベースへ接続
String url = "jdbc:mysql://localhost:3306/db";
con = DriverManager.getConnect...続きを読む

Aベストアンサー

>「java.sql.SQLException: Before start of result set SQL 」
>というエラーが出ました。
>このエラーは何を表しているのでしょうか??(・_・?)

ResultSetのURLを見てもらうと書いていますが、「初期状態では、カーソルは~」という理由で
getInt(int columnIndex) メソッドを呼び出す前に
next() メソッドを呼び出す必要があります。

つまり、

Connection con =DriverManager.getConnection(~);
Statement stmt = con.createStatement();
String sql="";
ResultSet rs = stmt.executeQuery(sql);
while(rs.next())
{
int int_a = rs.getInt(~);
String str_a = rs.getString(~);
String str_b = rs.getString(~);
}
stmt.close();
con.close();

という使い方がDBへアクセスするときのひとつの流れです。(select文の結果を全て表示したいときですが)



>「public int getInt(int columnIndex)」
>この宣言はするべきなのでしょうか?
>これを追加すると(public int getInt;)ここがエラーになります。
どのクラスに定義しようとしていて、どんなエラーが出たのかよくわからないのでなんともいえませんが、インターフェースResultSetにはこのメソッドがすでに定義されているので、あなたがResultSetをimplementsしたクラスを作ろうとしているのならともかく、ResultSetをimplementsしたクラスを使うだけならこのメソッドを定義する必要はありません。


ところで、改行の問題はうまくいったんですか?

>「java.sql.SQLException: Before start of result set SQL 」
>というエラーが出ました。
>このエラーは何を表しているのでしょうか??(・_・?)

ResultSetのURLを見てもらうと書いていますが、「初期状態では、カーソルは~」という理由で
getInt(int columnIndex) メソッドを呼び出す前に
next() メソッドを呼び出す必要があります。

つまり、

Connection con =DriverManager.getConnection(~);
Statement stmt = con.createStatement();
String sql="";
ResultSet rs = stmt.executeQ...続きを読む

Qシンボルが見つかりませんというエラーが理解できません。

以下のようなじゃんけんゲームのプログラムを書いたのですが、「シンボルが見つかりません。」というエラーが表示されるのですが、エラーの意味が理解できず、解決できません。どこが間違っているのか教えていただけませんか。

import java.applet.Applet;
import java.awt.*;
import java.awt.event.*;
import java.io.File;

public class janken extends Applet
implements Runnable, ActionListener {
private static final int EXTERNAL_BUFFER_SIZE = 128000;

Image image[] = new Image[3];
Thread t;
int index1 = 0;
int index2 = 0;
String msg = "";
String msg1 = "";

boolean state = false;
Button b1 = new Button("ぐー");
Button b2 = new Button("ちょき");
Button b3 = new Button("ぱー");

public void init(){
for(int i = 0; i<=2; i++){
img[i] = getImage(getDocumentBase(),"hanabi" + (i+1) + ".JPG");
}
add(b1);
add(b2);
add(b3);
b1.addActionListener(this);
b2.addActionListener(this);
b3.addActionListener(this);
msg1 = "結果は・・";

}

public void paint(Graphics g){
g.drawImage(img[index1],350,30,this);
g.drawImage(img[index2],695,30,this);
g.drawString("コンピューター",420,300);
g.drawString("あなた",800,300);
g.drawString(msg,630,320);
g.drawString(msg1,550,320);
}

public void start(){
state = true;
t = new Thread(this);
t.start();

}

public void run(){
while(state){
index1++;
if(index1 == 3){
index1 = 0;
}
index2++;
if(index2 == 3){
index2 = 0;
}
repaint();
try {
Thread.sleep(60);
}catch(InterruptedException e) { }
}
}

public void actionPerformed(ActionEvent e){
if(state == false) {
start();
return;

}
state = false;
if(e.getSource() == b1) {
msg = "ぐー";
index2 = 0;
}

else if(e.getSource() == b2){
msg = "ちょき";
index2 = 1;
}

else if(e.getSource() == b3){
msg = "ぱー";
index2 = 2;
}
check();
repaint();
}

public void check() {
if(index1 == index2) msg ="あいこ";


else if (index1 == 0) {
if(index2 == 2) msg="あなたの勝ち";
else msg ="あなたの負け";
}

else if(index1 == 1) {
if(index2 == 0) msg="あなたの勝ち";
else msg="あなたの負け";
}

else if(index1 == 2) {
if(index2 == 1) msg="あなたの勝ち";
else msg="あなたの負け";
}

}
}

以下のようなじゃんけんゲームのプログラムを書いたのですが、「シンボルが見つかりません。」というエラーが表示されるのですが、エラーの意味が理解できず、解決できません。どこが間違っているのか教えていただけませんか。

import java.applet.Applet;
import java.awt.*;
import java.awt.event.*;
import java.io.File;

public class janken extends Applet
implements Runnable, ActionListener {
private static final int EXTERNAL_BUFFER_SIZE = 128000;

Image image[] = new Imag...続きを読む

Aベストアンサー

「シンボルを見つけられません。」というエラーの下に何か表示がありませんでしたか?そこにヒントがあると考えられます。
シンボルを見つけられませんといエラーが表示される主な理由は4つあります。
(1)クラス、メソッド、変数などの綴りミスや定義していない変数を使用している可能性がある。
(2)コンストラクタを呼び出すときに、newを忘れている可能性がある。(3)公開されていないメンバーを呼び出している可能性がある。
(4)必要なimport文を記述し忘れている可能性がある。
ここでのあなたのエラーは(1)番ではないでしょうか?上記ではimageとなっている変数がimgになっていますね。
これはエラー表示をよく見ることで意外と簡単に解決できるのです。
ゆっくり丁寧にエラー表示を見るように心がけることが大事ですよ。


人気Q&Aランキング

おすすめ情報