- ベストアンサー
phpとjavascriptで画像を切り替える
こんにちは。phpで掲示板を作っているんですが、画像差し替えのためのjavascriptを入れると上手く動作しません。どなたかお手数ですがご教授いただけませんでしょうか?以下がスクリプトです。 <?php require_once("****.php"); $con = mysql_connect($DBSERVER, $DBUSER, $DBPASSWORD); $selectdb = mysql_select_db($DBNAME, $con); $sql = "select * from stock where no = '$no'"; $rst = mysql_query($sql,$con); $body =""; while($col = mysql_fetch_array($rst)) { $img = $col["imgfilename"]; $img1 = $col["imgfilename1"]; $body .= "<p style='text-align: center;'> <img src ='upload/$img' name='imgs' alt='*'><br> <a href ='#' onClick='roimg('upload/$img1'); return false;'>差し替え画像</a> </p>"; } $con= mysql_close($con); ?> <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"> <HTML> <HEAD> <META http-equiv="Content-Type" content="text/html; charset=Shift_JIS"> <META http-equiv="Content-Style-Type" content="text/css"> <script type="text/javascript"> <!-- function roimg(i){ if (document.images){ document.imgs.src=i; } } //--> </script> </HEAD> <center> <?= $body ?> </center> </BODY> </HTML>
- みんなの回答 (3)
- 専門家の回答
質問者が選んだベストアンサー
回答については#1さんのとおりだと思いますが補足。 $bodyにデータを流し込むとき、複数行をダブルコー テーションでくくっていますが、可読性もわるく、 バグの温床ともなりかねないのでヒアドキュメントを お使いになるとよいでしょう。 それならコーテーションをエスケープする必要もなく なります。 $body .=<<<eof 普通にHTMLをかく eof;
その他の回答 (2)
- yambejp
- ベストアンサー率51% (3827/7415)
#2です。 エラーはPHPのエラーですかjavascriptのエラーですか? とりあえず「eof」は終端子なのでその後ろになにも かけません。すぐ改行してください。
お礼
試行錯誤の上何とかできました。なるほど終端子ですか。 有難うございます、大変勉強になりました。
- moon_night
- ベストアンサー率32% (598/1831)
<a href ='#' onClick='roimg('upload/$img1'); return false;'>差し替え画像</a> シングルクウォーテーションの中にシングルクウォーテーションが入っているけど、こういう書き方ってできましたっけ?
補足
#1さん#2さんご回答有難うございます。ヒアドキュメント??ですか・・ 恐縮ですが上記のスクリプトを以下のようにすればいいのですか?試したところエラーが出てしまって上手くいきません。宜しくお願いします。 ~中略~ $body .=<<<eof<p style="text-align: center;"> <img src ="upload/$img" name="imgs" alt="*"><br> <a href ="#" onClick="roimg('upload/$img1'); return false;">差し替え画像</a> eof; } $con= mysql_close($con); ~中略~