iT邦幫忙

0

firebase realtime database sql 結合php網頁

  • 分享至 

  • xImage

想請問一下,我要是想要輸入電話號碼得知那個人的訊息,請問sql語法該怎麼寫
https://ithelp.ithome.com.tw/upload/images/20220830/20145353kulN7fepUi.png

realtime database資料如下:
https://ithelp.ithome.com.tw/upload/images/20220830/20145353aQhYtcRaIa.png
可以讀出全部資料庫資料,但要讀出單一個的,大概知道語法要有
https://ithelp.ithome.com.tw/upload/images/20220830/20145353wjDgeS3OEY.png
可以幫我修改一下或告知哪裡出錯嗎

圖片
  直播研討會
圖片
{{ item.channelVendor }} {{ item.webinarstarted }} |
{{ formatDate(item.duration) }}
直播中

1 個回答

0
海綿寶寶
iT邦大神 1 級 ‧ 2022-08-30 09:45:20

有點耐心,花個30分鐘,一次學會CRUD
Yes
沒耐心的話
就從22分開始看(也許會看不懂)

另外
先前的問題如果解決了的話
請選個最有幫助解答以結案

看更多先前的回應...收起先前的回應...

這影片我已經看過了,但他只有教讀出全部資料,沒有教讀出單一個的

從 21:00 開始,就是 EDIT 的功能
就是「讀出單一個」的教學

耐心,要有耐心

不好意思研究了幾天,下面程式碼是照影片寫的,還是一樣有問題
可以幫我看一下那裏錯誤嗎,麻煩了
https://ithelp.ithome.com.tw/upload/images/20220905/20145353eeIYv3uV4B.png
https://ithelp.ithome.com.tw/upload/images/20220905/201453535AoVt44X37.png
資料庫名稱也對
https://ithelp.ithome.com.tw/upload/images/20220905/20145353UBLQiTH8if.png
但又出現
Notice: Undefined index: 連絡電話 in C:\xampp\htdocs\前端(訂位+菜單)\booking+menu\personal info.php on line 36

Undefined index: 連絡電話

這通常是指「資料庫裡沒有這個欄位」或「沒有這個變數」
你可以看看 line 36 寫的是什麼來判斷

既然要照影片做
幫我一個忙
寫程式不要使用中文當變數名稱(例:$連絡電話)
資料庫名稱/欄位名稱也不要用中文

第36行是 $連絡電話 = $_POST['連絡電話'];
是抓不到這個變數嗎?我是不是少了哪個步驟?
但資料庫確定有資料也有這個欄位阿
/images/emoticon/emoticon67.gif

改成

<input type=text name="TEL">

$TEL = $_POST['TEL'];
echo $TEL;

試看看

比較根本的解決方法
完全100%照抄教學影片的程式碼
能做出一模一樣的效果
再來慢慢改成你要的欄位

影片下方有附上完整的程式碼,我也有打開確定可以用,但22分鐘後讀出單一個資料是長這樣:
https://ithelp.ithome.com.tw/upload/images/20220906/20145353silQGkAoat.png
https://ithelp.ithome.com.tw/upload/images/20220906/20145353x2OW7H5JJX.png

我改成這樣後,電話號碼有成功跑出來,但資料庫日期明明不是1,卻跑出1來,其他欄位不是有問題就是沒資料,真的是麻煩您了
https://ithelp.ithome.com.tw/upload/images/20220906/20145353nZMYgrBeKy.png
https://ithelp.ithome.com.tw/upload/images/20220906/20145353iz7xNuSD6t.png

你寫的是
$連絡電話 = $_POST['連絡電話']
所以執行這列之後
$連絡電話 的值就是 0967876865 ,一個文字字串(不是陣列)

然後你 LINE 16 寫的是(17,19 也是同理)

$連絡電話["人數"]

人數不是合法的 index 值,所以出錯(註)

註:字串正確的寫法如下

$txt = "ABCDE";
echo $txt[3];   //結果會輸出 D (取部份字元的意思)

所以我要想要列出資料庫裡對應的資料,不行用這方法?那應該怎麼做呢?/images/emoticon/emoticon02.gif

「資料庫裡對應的資料」

就是你寫的這兩列

$retrieve = $db->retrieve("booking/$連絡電話");
$data = json_decode($retrieve, 1);

之後的 $data 值
在影片 20:11 處有程式碼可參考

我要發表回答

立即登入回答