前提・実現したいこと
データベースのclientsテーブルに登録してある店舗名(shop_name)を
selectタグから選択できるようにし、inputで店舗IDを送信する仕組みを作りたいです。
このブログを参考に下記のようなコードを書きました。
該当のソースコード
php
1try { 2 $pdo = new PDO(DNS, USER_NAME, PASSWORD, get_pdo_options()); 3} catch (PDOException $e) { 4 die($e->getMessage()); 5} 6 7$sql = 'select * from clients'; 8 9if ($data = $pdo->query($sql)) { 10foreach($data as $data_val){ 11 $data .= "<option value='". $data_val['id']; 12 $data .= "'>". $data_val['shop_name']. "</option>"; 13} 14} 15
html一部
1・ 2・ 3・ 4<div> 5 <lable><b>担当店舗</b><span>必須</span></lable> 6 <select name="clients"> 7 <?php echo $data; ?> 8 </select> 9</div> 10・ 11・ 12・ 13
発生している問題・エラーメッセージ
: Uncaught Error: Object of class PDOStatement could not be converted to string in /***/***/***.php:21 Stack trace: #0 {main} thrown in /***/***/***.php:21 on line 21
該当するのはforeach内の
$data .= "<option value='". $data_val['id'];
の行です。
データベースへの接続部分は他ページと同様にしていますので、
問題なく接続できているかと思います。
試したこと
sql文を
”select id, shop_name from clients”
に変えてみたり、
pdoを$new_mysqliにしたり、
他のページに載っている方法を試してみたり、と
色々やってみたのですが、
どれも成功できず皆様にお力沿えいただきたいです。
最後まで読んでいただきありがとうございます。
足りない情報等ありましたら教えていただけますと幸いです。
何卒よろしくお願いいたします。
回答1件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
2021/06/24 14:12
2021/06/24 14:21
2021/06/29 05:38