2012-11-09 17 views
0

我正在使用p4a應用程序框架,我需要通過先前已經創建的字段將行插入到數據庫中,當用戶按下提交時,數據庫應該更新,因此其他新行應該能夠生成等等。使用P4A,我怎麼行插入MySQL數據庫?

我在努力尋找如何將輸入數據到數據庫中,我可以很容易地做到這一點,通過把值轉換成SQL語句,但這是完全陌生的我,

的代碼是:

public function submit() 

{ 

    $location = $this->location->getNewValue();   
     $date = $this->date->getNewValue(); 
     $merono = $this->merono->getNewValue(); 

    $sql = $db->query("INSERT INTO 'meetingrooms'(location, date, merono) 
     VALUES 
     ($location, $date, $merono)"); 


    p4a_db::singleton()->newRow($sql, array($location)); 

$this->load(); 

地點,日期和merono在我在此之前已經創建的域都設置功能和我之前也做了一個登錄頁面,同樣它應該工作,所以我知道的第一部分應該得到的變量。正如我以前曾存取分貝我知道它是連接,所以它必須與MySQL的語句來完成。

感謝,
史蒂夫。

回答

1

我終於弄明白(儘管這個問題是隻活躍了幾分鐘XD )

的SQL語句是錯誤的開始(感謝吳宇森的幫助(Y))現在的聲明所說:

query("INSERT INTO meetingrooms(location, date, merono) 
     VALUES 
     ('$location', '$date', '$merono')"); 

這個成功的聲明允許variabl ES放入$位置$日期和$ merono被插入到表中加上額外除了聲明

開始去爲:

p4a_db::singleton()-> 

這個調用P4A數據庫擴展,在這種彈出類我已經是無法訪問的,

等完整的功能現在去: -

public function submit() 

{ 

    $location = $this->AreaName->getNewValue(); 
    $date = $this->date->getNewValue(); 
    $merono = $this->merono->getNewValue(); 

    p4a_db::singleton()->query("INSERT INTO meetingrooms(location, date, merono) 
     VALUES 
     ('$location', '$date', '$merono')"); 

感謝您的幫助,

Steve。

2

您的查詢,我發現你是封閉的單引號的表名,如果你想逃避的表名或列名使用backtick代替,

INSERT INTO `meetingrooms`(location, date, merono) 
     VALUES ($location, $date, $merono) 

但因爲你的tablename是不是保留字或者包含任何無效字符,則可以清除反引號。

如果插入其上沒有數字表中的值,用單引號把它包起來,

INSERT INTO meetingrooms (location, date, merono) 
     VALUES ('$location', '$date', '$merono') 
+0

沒有快樂,我會盡快給你當我擺弄多一點與我以前做的代碼,我想可能是數據的我試圖插入到表變量中的綁定,我真的不確定:\。 –

+0

解決了它,謝謝你的幫助=] –

+0

很高興聽到:D –