2013-04-22 68 views
-1

當我註冊用戶w。 facebook我把我從fb收到的所有東西輸入到我的用戶表中,但是有時候會有空白的列,比如'bio',當你不確定哪些值會被髮送到我的php api的post請求時,插入的最佳方式是什麼。MYSQL插入w。未知數量值

p.s im使用codeigniter爲我的休息API,如果這使事情變得更容易。

+2

您可以在'insert'列表中指定字段,或者將佔位符('null'值)放入'values'列表中 – Barranka 2013-04-22 21:39:04

+0

發佈您的表格架構。 – Kermit 2013-04-22 21:39:59

+0

無法預先指定它們bc我永遠不知道哪一個將是空白的,但我現在要做空值的方式。只需提問,看看這是否是一個可以接受的手段 – ChuckKelly 2013-04-22 22:05:32

回答

0

設置所有無關緊要的值然後傳遞所有可能的值。

基本上沒有一個表結構這很難回答這個問題,但你會做的是建立一切空獲取數據,如在此之前是什麼:

$data = array(
    'fbId'=>null, 
    'email'=>null, 
    'someOtherData'=>null, 
    'yetMoreData'=>null 
); 
$data = $this->whateverYouAreDoingToGetFBData; 
$this->db->insert('users',$data); 

顯然,你不希望所有字段爲null,但如果您在獲取Facebook數據之前設置了數組,則只覆蓋由FB提供的值,那麼您沒有問題。

老實說,這是一個非常可怕的想法,決定哪些數據,你想要和去那裏,我敢肯定你並不需要絕對的FB將提供的一切,也不會有人會註冊,如果它看到你'要求一切。想想你應該彈出哪個應用程序,如果應用程序想知道你的整個FB歷史,你會說是嗎?