動的サイトを作ってみたのですが、うまくデータベースからデータが取得できません。。。
よろしくお願いいたします。
趣味でゲームソフトのデータベースを作っています。
MYSQLを使って動的にデータを表示させるサイトです。
http://www.game-minzoku.jp/meisai.php?titleid=5362
例えばこのようにパラメータをつけてページを展開しているのですが、
この『?title=****』の数字をアドレスバー上で変更してほかのページを表示させようとすると、
該当データがありません。
がと出てしまいます。
これがようやくGoogleにインデックスされ始めてきましたが、自然検索から入ってもこのようなことが起こってしまって困っています。
自分で調べてはみたものの、独学で進めているため、どうやって解決したらよいか分からず困っています。
どなたかお力添えいただけますと幸いです。
問題のページのソースはこちらです。(cssなどの不要と思われる個所はけしてありますが、もし足りない箇所あればおっしゃっていただけますと幸いです)
================================================================
<?php
extract($_GET);
mysql_connect('****','****','****');
mysql_select_db('****');
mysql_query("set character_set_client=utf8");
mysql_query("set character_set_connection=utf8");
mysql_query("set character_set_results=utf8");
$sql = "select * from game,genre,hanbai,kaihatsu,hard where game.genreid=genre.genreid and game.hardid=hard.hardid and game.hanbaiid=hanbai.hanbaiid and game.kaihatsuid=kaihatsu.kaihatsuid and game.titleid =" . $titleid;
$result = mysql_query($sql);
$rows = mysql_num_rows($result);
$title_name_sql = "select title from game where titleid =" . $titleid ;
$res = mysql_query($title_name_sql);
$title_name = mysql_result($res,0);
echo "<title>";
echo "$title_name | ゲーム民族</title>";
echo "</head><body>";
echo "<a href=index.php>ゲーム民族</a>";
echo "<h1><font size=2>ゲーム民族は";
echo "$title_name";
echo "の詳細を網羅したデータベースのサイトです</font></h1>";
echo "<p><a href=index.php>TOP</a> > $title_name</p>";
echo $title_name の基本情報;
if($rows == 0){
echo "<p>該当データがありません。</p>";
}
else {
while($row = mysql_fetch_array($result)){
echo "<a href=",$row["url"],">";
echo "<img src=",$row["img"]," alt=",$row["title"],">";
echo "</a>";
echo "<table border=1 height=40 cellpadding=2 cellspacing=2 width=800>";
echo "<tr><td>タイトル</td><td>";
echo $row["title"];
echo "</td></tr>";
echo "<tr><td>発売元</td><td>";
echo "<p><a href=\"maker.php?hanbaiid=",$row["hanbaiid"],"\">", $row["hanbai"] ,"</a></p>\n";
echo "</td></tr>";
echo "<tr><td>開発元</td><td>";
echo "<p><a href=\"developer.php?kaihatsuid=",$row["kaihatsuid"],"\">", $row["kaihatsu"] ,"</a></p>\n";
echo "</td></tr>";
echo "<tr><td>機種</td><td>";
echo $row["hard"];
echo "</td></tr>";
echo "<tr><td>発売日</td><td>";
echo $row["hatsubai"];
echo "</td></tr>";
echo "<tr><td>ジャンル</td><td>";
echo "<p><a href=\"genre.php?genreid=",$row["genreid"],"\">", $row["genre"] ,"</a></p>\n";
echo "</td></tr>";
$sql2= "select * from game,title_creater,creater,roll where game.titleid=title_creater.titleid and title_creater.createrid=creater.createrid and title_creater.rollid=roll.rollid and game.titleid = " . $row["titleid"];
$result2 = mysql_query($sql2);
$rows2 = mysql_num_rows($result2);
while($row2 = mysql_fetch_array($result2)){
echo "<tr><td>クリエーター</td><td>";
echo $row2["creater"];
echo $row2["roll"];
echo "</td></tr>";
}
}
}
?>
</body></html>
================================================================
本当に見にくい意味不明のソースで申し訳ありませんが、よろしくお願いいたします!
お礼
taketan_mydns_jp様 先ほど補足にて簡単に質問をしてしまい、申し訳ございませんでした。 コードをよく見たらすぐに分かることでした。 気持ちが先走ってしまいました。 ご丁寧に教えて頂き、大変感謝しております。 どうもありがとうございました!!
補足
taketan_mydns_jp様 大変貴重なアドバイスどうもありがとうございます。 一点お伺いしたいのですが、実際 $_GET["id"] は、$_GET["code"]の間違いでありました。 そこで今頂きましたコードですが こちらは受取り側、今回ですとshousai.phpの所に $id = $_GET["code"]; ではなく if(ereg("^[0-9]+$",$_GET["CODE"])){ $id=$_GET["id"]; }else{ echo "送信されたIDは不正です";exit; } にすれば宜しいのでしょうか??