初心者でphpとmysqlを使ったコードで苦戦しています。どなたか教えて頂けないでしょうか?

POSTで受けたkensaku_mapは住所です。
city_01,city_02,city_03は住所ですが一つの住所が都道府県、市等が分かれてデータベースに入っています。
kensaku_mapと同じ住所のデータを表示したいのですが、上手くいきません。
環境はlolipop,mysql,owrdpressです。
よろしくお願いします。

<?php
$kensaku_map=htmlspecialchars($_POST['kensaku_map']);
$conn = mysql_connect("??????????","?????????","?????");
mysql_select_db(?????????,$conn);
$sql="SELECT company_name,company_mail,city_01,city_02,city_03,comment,home_page FROM db WHERE city_01||city_02||city_03='$kensaku'";
$res=mysql_query($sql);
while($row=mysql_fetch_array($res))
{print($row["city_01"].$row["city_02"].$row[city_03]);}
mysql_free_result($res);
mysql_close($conn);
?>

回答の条件
  • 1人5回まで
  • 登録:
  • 終了:2011/08/13 23:07:03

ベストアンサー

id:jirepo No.1

回答回数30ベストアンサー獲得回数6

where句にある $kensaku は $kensaku_map の間違いでは?

それと||はMySQLでは文字列結合ではなくorと同じです。

||ではなく、concat(city_01,city_02,city_03)

まず select concat(city_01,city_02,city_03) FROM db で、意図する文字結合結果が正しく返ってくるか確認されると良いと思います。

city_01,city_02,city_03の何れかにNULLがあると正しい結果が返ってこない事もあり注意が必要です。

id:mi-kun6520

concat(city_01,city_02,city_03)にしてみると、できました。

ありがとうございます。

たいへん助かりました。

2011/08/13 23:07:57

コメントはまだありません

この質問への反応(ブックマークコメント)

「あの人に答えてほしい」「この質問はあの人が答えられそう」というときに、回答リクエストを送ってみてましょう。

これ以上回答リクエストを送信することはできません。制限について

回答リクエストを送信したユーザーはいません