掲示板の削除用パスが空でPOSTメソッドで引いてきても中身が空

このQ&Aのポイント
  • 掲示板の各記事の表の最下部に削除用のパスワードのテキストフィールドと、削除ボタンをつけている
  • 削除ボタンを押すと、その記事自体が削除されるようにしているが、delete_s.php側でPOSTメソッドで値を引いてきても、中身が空なのです
  • どうしてかお分かりになる方、ご教授ください
回答を見る
  • ベストアンサー

掲示板の削除用パスの文字列がPOSTメソッドで空

掲示板の各記事の表の最下部に削除用のパスワードのテキストフィールドと、削除ボタンをつけていて、削除ボタンを押すと、その記事自体が削除されるようにしているのですが、delete_s.php側で POSTメソッドで値を引いてきても、中身が空なのです。どうしてかお分かりになる方、ご教授ください。 お願いします。 PHPのスクリプトは下記のようなものです。 ----------------------------------------------------------------------------------- function disp_record(){ // データベースに登録してあるデータを読み込む $con = mysql_connect("localhost", "root", "nifty042"); // ローカルのMySQLデータベースサーバーに接続する mysql_select_db("bbsdb"); // データベースサーバーに存在する(myPHPAdminで作成済みの)データベースを選択する $sql = "SELECT * FROM bbstbl ORDER BY date DESC;"; // 年月日の降順でソート $result = mysql_query($sql, $con); $rowco = mysql_num_rows($result); // テーブルの行数 if($rowco!=0){ for($i=0, $j=$rowco; $i<$rowco; $i++, $j--){ $row = mysql_fetch_row($result); // 取得された行に対応する配列を返し、内部のデータポインタを前に進める。 print("[".$j."]"); // 記事番号 print("<a href=\"bbs2.php\" target=\"_top\">&nbsp;最新</a>&nbsp;"); print($rowco."件の記事があります"."<br>"); print("<table width=\"715\" border=\"0\">"); print("<tr>"); print("<td>投稿日:".$row[1]."</td>"); print("</tr>"); print("<tr>"); print("<td>お名前:".$row[2]."</td>"); print("</tr>"); if($row[3]!=""){ print("<tr>"); print("<td>E-mail:".$row[3]."</td>"); print("</tr>"); } print("<tr>"); print("<td>題名:".$row[4]."</td>"); print("</tr>"); print("<tr>"); $row[5] = str_replace("\r\n", "<br>", $row[5]); // 改行をBRタグに置き換える。 print("<td>メッセージ:".$row[5]."</td>"); print("</tr>"); // if(is_null($passoword)==FALSE){ print("<form name=\"form1\" method=\"POST\" action=\"delete_s.php\">"); print("<tr>"); print("<td><input type=\"password\" name=\"ID_TEXT_DELETE_NUMBER\" id=\"ID_TEXT_DELETE_NUMBER\">&nbsp;"); // print("<input type=\"button\" name=\"ID_BTN_DELETE\" value=\"削除\" onclick=\"location.href='delete_s.php?sid=$row[0]&pass=$row[7]'\">"); print("<input type=\"button\" name=\"ID_BTN_DELETE\" value=\"削除\" onclick=\"location.href='delete.php?sid=$row[0]'\">"); print("</td></tr>"); // print("<input type=\"hidden\" id=\"hidden_value\" name=\"pass\" value=\"$row[7]\">"); print("</form>"); // } print("</table>"); print("<br>"); print("<hr color=\"silver\" width=\"100%\">"); } } } //////////////////// // メインルーチン // //////////////////// $res = disp_error(); // echo("res=".$res); if($res==1){ // 投稿成功時 regist_database(); disp_record(); }elseif($res==0){ // 何もしないでページ表示、更新されたとき disp_record(); }elseif($res==-1){ // 投稿失敗時 ; }else{ ; } ---------------------------------------------------------------------------------- 【delete_s.php】 <?php $pass = $_POST['ID_TEXT_DELETE_NUMBER']; echo("pass=".$pass); $con = mysql_connect("localhost", "root", "nifty042"); // ローカルのMySQLデータベースサーバーに接続する mysql_select_db("bbsdb"); // データベースサーバーに存在する(myPHPAdminで作成済みの)データベースを選択する $del_num = $_GET['sid']; //$pass = $_GET['pass']; //echo("pass=".$pass); $sql = "SELECT * FROM bbstbl WHERE sid=$del_num"; $result = mysql_query($sql, $con); $row = mysql_fetch_row($result); // 取得された行に対応する配列を返し、内部のデータポインタを前に進める if((strcmp($row[6], $pass))==0){ // フォームで入力された削除用パスと、投稿記事内に記入されたパスが同じ場合 $sql = "DELETE FROM bbstbl WHERE sid=$del_num"; mysql_query($sql, $con); }elseif($row[6]==NULL){ echo("投稿時に削除パスワードが入力されていません。"); }elseif($row[6]!=NULL && $pass==NULL){ echo("削除パスワードを入力してください。"); }elseif($row[6]!=NULL && $pass!=NULL && strcmp($row[6], $pass)!=0){ echo("削除パスワードが間違っています。"); } /* $sql = "DELETE FROM bbstbl WHERE sid=$del_num"; $result = mysql_query($sql, $con); */ mysql_close($con); // データベースとの接続を解除する header("Location: bbs2.php"); ?>

  • PHP
  • 回答数1
  • ありがとう数6

質問者が選んだベストアンサー

  • ベストアンサー
  • agunuz
  • ベストアンサー率65% (288/438)
回答No.1

formのPOSTではなく、onclickのlocation.hrefが効いているのではありませんか? >print("<input type=\"button\" name=\"ID_BTN_DELETE\" value=\"削除\" >onclick=\"location.href='delete.php?sid=$row[0]'\">"); location.hrefで遷移していれば(POSTされないので)$_POSTは空です。 >print("<form name=\"form1\" method=\"POST\" action=\"delete_s.php\">"); を print '<form name="form1" method="POST" action="delete_s.php?sid=' . $row[0] . '">'; に、 >print("<input type=\"button\" name=\"ID_BTN_DELETE\" value=\"削除\" >onclick=\"location.href='delete.php?sid=$row[0]'\">"); を print '<input type="submit" value="削除">'; にすべきだと思います。 というか、sidも(type="hidden"のinput要素を作って)POSTで引き渡すべきじゃないかなぁ

beterugius
質問者

お礼

お忙しいなか、お返事いただき、どうもありがとうございました。

beterugius
質問者

補足

ご説明が不十分だったかもわかりませんが、やりたいことは何かというと、記事削除用パスワードで入力したパスワードの値がdelete_s.php側で空なので、どうすれば受け取れるかとういうことなのです。 そして、記事上部で記入して投稿した削除用パスワードと、送信ボタンを押したあと、下部に個々に表示される掲示板のメッセージの削除ボタンの左側に記入したパスワードと一致していた場合のみ当該記事を削除したいのです。(お分かりだとは思いますが、蛇足であれば、すみません。)もちろん、上部の固定の表で入力されたパスワードと、下部の各メッセージで入力されたパスワードは1対1で対応しております。(DBの主キー、sidで判別できる)どうすれば受け取れるでしょうか? print("<form name=\"form1\" method=\"POST\" action=\"delete_s.php\">"); print("<tr>"); print("<td><input type=\"password\" name=\"ID_TEXT_DELETE_NUMBER\"id=\"ID_TEXT_DELETE_NUMBER\">&nbsp; print '<input type=\"submit\" value=\"削除\">'; print("</td></tr>"); // データベースのテーブルの最後のフィールドの値$row[0] print("<input type=\"hidden\"id=\"hidden_value\" name=\"password\" value=\"$row[0]\">"); // 各メッセージの最下部の削除ボタンの左側のパスワード入力欄に記入したパスワードの値 ※ここの部分ですprint("<input type=\"hidden\"id=\"hidden_value\" name=\"pass\" value=\" ここ \">"); print("</form>"); print("</table>"); ご意見を参考にさせていただき、上記のように変更してみましたが、そうすると、※の部分のvalueに何と書けばよいのかわかりません。どうぞよろしくお願いいたします。

関連するQ&A

  • GETメソッド ID MYSQL

    分からないことがありましたのでご質問をさせて頂きます。 現在作成してる仕様なのですが、 フォームの一つの項目のリンクを設置し、別のページに渡し そこで更に詳細な情報をMYSQLからひっぱってきて表示させようとしております。 そこでGETメソッドを使って行おうとしているのですが、どうしても 変数の受け渡しがうまくいきません。 こちらがそのコードになります。 1,フォーム <td><a href="shousai.php?code=<?php echo $row['id'];?>">詳しくはこちら</a></td> 2,詳細ページ(shousai.php) <?php echo var_dump($_GET["id"]); $id = $_GET["id"]; $con = mysql_connect('localhost','aaaa','aaa'); if (!$con) { print("MySQLへの接続に失敗しました"); exit; } if (!mysql_select_db("database")) { print("データベースへの接続に失敗しました"); exit; } $sql="select * from table where id ='$id'"; $result=mysql_query($sql,$con); //SQL文の発 $rows=mysql_num_rows($result); while($row = mysql_fetch_array($result)){ ?> <table border ="1"> <tr><td><?php echo $row["name"]; ?></p></td></tr> <tr><td><?php echo $row["address"]; ?></td></tr> <tr><td><?php echo $row["station"]; ?></td></tr> <?php } ?> </table> 2の詳細ページにてvar_dumpで$_GET["id"];の値を受け取ってるか 確かめたのですがNULLになっており、ページになにも反映されません。 フォームからリンクで値を送り、それをきっかけにデータベースに接続して詳細を表示させたいと思っております。 どなたかご存知の方お伺いできませんでしょうか?

    • ベストアンサー
    • PHP
  • PHP+MySQLでの検索結果の横並び表示について

    PHP+MySQLでデータベース作成をはじめた初心者です。 検索結果を横並びにしたかったので他ページを参考にやってみました。 横に並べられるようにはなったのですが、検索結果を横並びで、かつ、4こならべると次の行にうつる方法はどうすればいいのでしょうか? データひとつを■とすると ■■■<改行> ■■■<改行> ■■■<改行> といった感じです。 よろしくお願いいたします。 <?php $host = "localhost"; if (!$conn = mysql_connect($host, "ユーザー", "パス")){ die("MySQL接続エラー.<br />"); } mysql_select_db("データベース名", $conn); $sql = "SELECT * FROM 01_table WHERE on ='1'"; $res = mysql_query($sql,$conn); print("<tr>"); while($row = mysql_fetch_array($res)) { print("<td>".$row["■"]); print("</td>"); } mysql_free_result($res); ?> print("</tr>");

    • ベストアンサー
    • PHP
  • テーブルの内容を<a>タグでくるんだ時のアンカー

    下記のPHPスクリプトにおいて、テーブルの内容を<a>タグで 挟み、データベースの内容を表示しているのですが、 先頭レコードのアンカーだけが表示されず、ただのテキストになってしまいます。 二番目以降のレコードはテーブルの内容がアンカー付きで表示されるのですが、 先頭レコードにアンカーをつけるには、どこがまちがっているのか ご指導お願いいたします。 mysql_set_charset("utf-8"); //$sql = "SELECT * FROM hospytal;"; //$result = mysql_query($sql, $con) or die(mysql_error()); if($_POST['radio_btn']==="1"){ $sql = "SELECT * FROM hospytal order by manzokudo desc;"; // 満足度の降順 $result = mysql_query($sql, $con) or die(mysql_error()); }else{ $sql = "SELECT * FROM hospytal order by kuchikomi desc;"; // 口コミ数の降順 $result = mysql_query($sql, $con) or die(mysql_error()); } $rowco = mysql_num_rows($result); // テーブルの行数 for($i=0; $i<$rowco; $i++){ $row = mysql_fetch_row($result); // 取得された行に対応する配列を返し、内部のデータポインタを前に進める echo '<a href="'.$i.'.php?sid='.$row[0].'">'; echo '<table width="500" height="120" border="1">'; echo '<tr>'; echo '<td width="500" height="30">'.$row[1].'</td>'; echo '</tr><tr>'; echo '<td width="500" height="30">'.$row[4].'&nbsp;&nbsp;&nbsp;'.$row[5].'件</td>'; echo '</tr><tr>'; echo '<td width="500" height="30">'.$row[7].'</td>'; echo '</tr><tr>'; echo '<td width="500" height="30">'.$row[9].'</td>'; echo '</tr>'; echo '</table>'; echo '</a>'; } mysql_close($con); // データベースとの接続を解除する

    • ベストアンサー
    • PHP
  • ボタンのonclick時における関数コールの仕方

    下記のPHPスクリプトにおいて、updateMemo()関数の中で、テストで、 echo 'in update'; として、関数内に入ったら、文字列表示をするようにしているのですが、 更新ボタンを押しても、updateMemo()関数の中に入ってきません。(in update が表示されません) 関数のコールの仕方が、onclick=の部分でまちがっているのでしょうか? 教えていただきたいです。 <?php ////////////////////////// // メモ内容の閲覧、更新 // ////////////////////////// $sid = (int)$_GET['sid']; var_dump($sid); $con = mysql_connect("*****", "*****", "*****"); // リモートのMySQLデータベースサーバーに接続する mysql_select_db("*****-ideamemo"); // データベースサーバーに存在する(myPHPAdminで作成済みの)データベースを選択する $sql = "SET NAMES utf8;"; mysql_query($sql); $sql = "SELECT * FROM ideamemo_table WHERE sid=$sid;"; $result = mysql_query($sql, $con) or die(mysql_error()); $row = mysql_fetch_row($result); mysql_close($con); //$row[0] = (int)$row[0]; // string⇒int にキャスト echo '<form name="form1" method="POST" action="deleteUpdate.php">'; echo '内容<br>'; echo '<textarea name="textarea" cols="100" rows="30">'.$row[3].'</textarea>'; echo '<br>'; echo '<input type="button" value="更新" onclick="<?php updateMemo('.$sid.');?>">'; //echo '<input type="button" value="更新" onclick="updateMemo();">'; echo '<input type="button" value="削除" onclick="deleteMemo('.$sid.');">'; echo '<input type="button" value="トップページへ" onclick="location.href=\'main.php\'">'; echo '</form>'; var_dump($row[2]); function updateMemo($sid){ //function updateMemo(){ echo 'in update'; // var_dump($sid); // exit; date_default_timezone_set("Japan"); $update = date(Y年m月d日(D)H時i分s秒); $textarea = $_POST['textarea']; var_dump($textarea); var_dump($update); $con = mysql_connect("*****", "*****", "*****"); // リモートのMySQLデータベースサーバーに接続する mysql_select_db("LAA0471050-ideamemo"); // データベースサーバーに存在する(myPHPAdminで作成済みの)データベースを選択する $sql = "SET NAMES utf8;"; mysql_query($sql); $sql = "UPDATE ideamemo_table SET contents = '$textarea', update_date = '$update' WHERE sid=$sid;"; $result = mysql_query($sql, $con); mysql_close($con); // header("Location: main.php"); } function deleteMemo(int $sid){ echo 'in delete'; $con = mysql_connect("*****", "*****", "*****"); // リモートのMySQLデータベースサーバーに接続する mysql_select_db("LAA0471050-ideamemo"); // データベースサーバーに存在する(myPHPAdminで作成済みの)データベースを選択する $sql = "SET NAMES utf8;"; mysql_query($sql); $sql = "DELETE FROM ideamemo_table WHERE sid=$sid;"; $result = mysql_query($sql, $con); mysql_close($con); // header("Location: main.php"); } ?>

    • ベストアンサー
    • PHP
  • 検索機能

    mysqlで検索フォームを作成しています 入力してデータに該当したら検索結果が出るのですが 該当者がいないときはテーブルの表のみ出力してしまう 該当者なしと入力フォーム側に表示したいです また ''''''を入力するとSQLになるのですが mysql_real_escapeを使えば出なくなります どうしたらいいですか <html> <body> <?php //データベースに接続 if (!$con = mysql_connect("localhost", "root", "admin")) { echo "接続エラー" ; exit ; } //データベースを選択 if (!mysql_select_db("db_test", $con)) { echo "データベース選択エラー" ; exit ; } //フォームで送られてきた条件を元にSELECT文を作成 $sql = "select * from tbl_test where (氏名 LIKE '%{$_GET['name']}%') or (住所 LIKE '%{$_GET['name']}%')"; //SELECT文を実行 if (!$res = mysql_query($sql)) { echo "SQLエラー<BR>" ; exit ; }else{ } //検索結果表示 echo "<table border=1>" ; echo "<tr> <th>番号</th> <th>氏名</th> <th>住所</th> <th>操作</th> </tr>" ; while($row = mysql_fetch_array($res)) { $ID = htmlspecialchars($row['番号']); $NAME = htmlspecialchars($row['氏名']); $ADDR = htmlspecialchars($row['住所']); echo "<tr> <td>$ID</td> <td>$NAME</td> <td>$ADDR</td> <td><a href='edit.php?番号=$ID'>修正</a> <a href='delete.php?番号=$ID'>削除</a></td></tr>"; if ($_GET) { // データがGETされていたら $event = isset($_GET['event']) ? $_GET['event'] : ''; // 取得 } } echo "</table>" ; //結果セットの開放 mysql_free_result ($res) ; //データベースから切断 mysql_close($con) ; ?> </body> </html>

    • ベストアンサー
    • MySQL
  • select文

    こんばんは。PHPでデータベースからレコードとフィールドを表として取り出そうとしてますが、うまく行きません。 MySQLへの接続はうまくいってると思うので、while文が間違ってるのでしょうか?PHPのバージョンはPHP Version 4.4.2です。 よろしくお願いしますm(__)m <?php require_once("dbini.php"); $con = mysql_connect($server, $user, $pass); $select = mysql_select_db($dbname, $con); $sql = "select * from book"; $rst = mysql_query($sql, $con); $body = "<table border='0' cellpadding='5' cellspacing='5' width='500'><tr><td>\n"; while($col = mysql_fetch_array($rst)) { $body .= "<b><font size='+2'>".$col["title"]."</font></b>" $body .= "</td></tr>"; $body .= "<tr><td colspan='2'>".$col["article"]."</td></tr></table>"; } mysql_free_result($rst); $con = mysql_close($con); ?> <html> <body> <?= $body ?> </body> </html>

    • ベストアンサー
    • PHP
  • PEARのPagerの設定の仕方

    初心者です。 ホームページでDBを利用しているのですが、データ量が多くなるのでページ送り機能をつけたいのでどうすればいいか探していたところ、PEARのPagerを使えばできるとわかりました。 しかしどうもうまくいきません。 Pagerのフォルダもきちんとアップロードしてやってみたのですがうまくいきません。 やりたいのは登録数300件のデータベースの検索結果で、10件ごとにページ送りします。ページ送りは検索結果の最下部におきたいです。 以下のソースのどこに加えればいいか教えていただけないでしょうか。 何度も試してみたんですが、ページ送りしてくれないのです。 よろしくお願いいたします。 <?php extract($_POST); 検索項目のフォーム×3 if($sig=="kb"){ mysql_connect('ほにゃらら','データベース名','パスワード'); mysql_select_db('データベース名'); 検索区分 //クエリの作成 $sql = "select * from データベースの項目 where "; if($wxxx<>""){ 省略 } //本検索 $result = mysql_query($sql); $rows = mysql_num_rows($result); if($rows == 0){ print "検索結果なし"; exit; } else { echo "<b>", $rows, "</b>件HITしました<br />\n"; while($row = mysql_fetch_array($result)){ print("<table>"); print("<tr><td scope='row' rowspan='3'>".$row[""]."</font></td><td>タイトル</td>"); print("<td>".$row["title"]."</td></tr>"); print("<tr><td>項目A<td><td>".$row["koumokua"]."</td></tr>"); print("<tr><td>項目B</td><td>".$row["koumokub"]."</td></tr>"); print("</table>");} } } ?>

    • 締切済み
    • PHP
  • PHPとMySQLの文字化けの対応法は?

    OSはWinXPで、MySQL+PHPのアプリを作成しているところです。 <html> <head><title>配列データの取得</title></head> <body> <table border="1"> <tr><td>題名</td><td>著者</td><td>出版社</td></tr> <?php $host = "localhost"; if (!$conn = mysql_connect($host, "user", "pass")){ die("MySQL接続エラー.<br />"); } mysql_select_db("kisop", $conn); $sql = "SELECT * FROM book_table LIMIT 10"; $res = mysql_query($sql,$conn); while($row = mysql_fetch_array($res)) { print("<tr>"); print("<td>".$row["btitle"]."</td>"); print("<td>".$row["bauth"]."</td>"); print("<td>".$row["bpub"]."</td>"); print("</tr>\n"); } mysql_free_result($res); ?> </table> </body> </html> と、こんな演習をしているのですが、ブラウザに表示させると文字化けしました。 HTML文はEUC、MySQLのデータは、シフトJISで入っていたようです。 そのため、「題名」「著者」などの見出しと、取り出したデータを同時に文字化けさせずに、表示できない 状態です(泣)。 MySQLからデータを取り出すときに、mb_convert_encodingで文字コードを変換してやれば 化けないでしょうが、出力しようとするデータのすべてを変換しなければなりません。 プログラマーさんたちは、文字化けの現象について、どう対応されているのでしょうか? いちいち、mb_convert_encodingで、変換しているものなのでしょうか? 定石のようなものを知りたいところです。 たとえば、HTML文は文字コード○○を使うものだ、設定ファイルを書き換えておく、などなど。 よろしくおねがいします。

    • ベストアンサー
    • PHP
  • php 投票システム

    データベースと連動した投票システムを考えております。 phpとMySQLを使用したもので、対応するボタンを押すと1票投じられるというものです。 この仕組み自体は実現できたのですが、 ブラウザの更新ボタンを押すと、『情報を再送信する必要があります』と表示され、『はい』を押すと、自動的に1票投じられてしまいます。 スクリプトは以下のようになるのですが、上記のような不具合を修正するためにはどうすればよいのでしょうか。 アドバイス、具体的なソース、また、他の部分における修正すべき箇所など、ご指摘いただきたいと思います。 よろしくお願いいたします。 <?php echo "<table border=0>"; echo "<tr><td colspan=4 align=left><img src=logo-touhyou.gif></td></tr>"; echo "<tr><td><form method=post action="; echo $_SERVER["PHP_SELF"]; echo "><input type=hidden value=1 name=posi><input type=image src=logo-posi-s.gif border=0></form></td>"; echo "<td><form method=post action="; echo $_SERVER["PHP_SELF"]; echo "><input type=hidden value=1 name=deep><input type=image src=logo-deep-s.gif border=0></form></td></tr></table>"; $posi=$_POST["posi"]; $deep=$_POST["deep"]; if ($posi==1){ $server="mysql..jp"; $dbname="LA"; $user="LA"; $pass=""; $conn = mysql_connect($server,$user,$pass); $conndb = mysql_select_db($dbname); $sql="SELECT posi FROM test WHERE id =1 LIMIT 1"; $res=mysql_query($sql); while($row = mysql_fetch_assoc($res)) { $row_con=mb_convert_encoding($row["posi"], "shift_jis", "auto"); echo $row_con; echo "<br>"; $number1=1; $after=$row_con+$number1; echo $after; echo "<br>"; mysql_query("LOCK TABLES test WRITE"); $sql_1="UPDATE test SET posi='$after3' WHERE id =1 LIMIT 1"; $ins=mysql_query($sql); mysql_query("UNLOCK TABLES"); if ($ins_1){ echo "ポジティブ投票完了"; } $sql_2="SELECT posi FROM test WHERE id =1 LIMIT 1"; $res_2=mysql_query($sql_2); while($row_2 = mysql_fetch_assoc($res_2)) { $row_con_2=mb_convert_encoding($row_2["posi"], "shift_jis", "auto"); echo $row_con_2; } } mysql_close($conn); } if ($deep==1){ $server="mysql..jp"; $dbname="LA"; $user="LA"; $pass=""; $conn = mysql_connect($server,$user,$pass); $conndb = mysql_select_db($dbname); $sql2="SELECT deep FROM test WHERE id =2 LIMIT 1"; $res2=mysql_query($sql2); while($row2 = mysql_fetch_assoc($res2)) { $row_con2=mb_convert_encoding($row2["deep"], "shift_jis", "auto"); echo $row_con2; echo "<br>"; $number1=1; $after2=$row_con2+$number1; echo $after2; echo "<br>"; mysql_query("LOCK TABLES test WRITE"); $sql2_2="UPDATE test SET deep='$after2' WHERE id =2 LIMIT 1"; $ins2=mysql_query($sql2_2); mysql_query("UNLOCK TABLES"); if ($ins2){ echo "ディープ投票完了"; } $sql2_2="SELECT deep FROM test WHERE id =4 LIMIT 1"; $res2_2=mysql_query($sql2_2); while($row2_2 = mysql_fetch_assoc($res2_2)) { $row_con2_2=mb_convert_encoding($row2_2["deep"], "shift_jis", "auto"); echo $row_con2_2; } } mysql_close($conn); } ?>

    • ベストアンサー
    • PHP
  • PHP+MySQL で検索結果を横並びに表示させたい

    PHPとMySQLを独学で勉強し始めたところなのですが 下記の様に書いてみたところ 結果(画像)の表示が縦並びになってしまいます。 どうにか横並びに表示できないでしょうか? <html> <head><title>タイトル</title></head> <body> <table> <?php $host = "localhost"; if (!$conn = mysql_connect($host, "ユーザー", "パス")){ die("MySQL接続エラー.<br />"); } mysql_select_db("データベース名", $conn); $sql = "SELECT * FROM 01_table WHERE on ='1'"; $res = mysql_query($sql,$conn); while($row = mysql_fetch_array($res)) { print("<tr>"); print("<td>".$row["img"]); print("</td>"); print("</tr>"); } mysql_free_result($res); ?> </table> </body> </html> ※01_tableのonには「0」か「1」を入れてあり  imgには 「<a href="リンク先アド"><img src="画像のアド"></a>」  を入れてあります。 基礎が無く、勘だけで作ってますので根本的に間違ってるかもしれないのですが よろしくお願いします。

    • ベストアンサー
    • MySQL

専門家に質問してみよう