2013-07-02 36 views
0

我不是在說英語,所以我支持谷歌的翻譯,感謝非常好。mysql的多語句在PHP

會發生什麼,我正在使用谷歌地圖API,我有一些商店的數據庫,數據庫是這些方向,用JavaScript獲得商店和用戶的位置之間的距離,話題我想靠近排序,我所做的就是它計算全部拿走,然後重定向以下格式的第一頁"pagina.php?data=(ID, DISTANCE),(ID, DISTANCE), ..... "

然後獲取參數

<?php $data = $ _GET['data'] ?> // and example of "data" -> "(1,1582),(2,3568)," end with comma 

而且我嘗試使用此命令「」在phpMYAdmin中運行「」

CREATE TEMPORARY TABLE distancias_temporales (id int(50) NOT NULL, distancia DECIMAL(12,2) NOT NULL DEFAULT 0.00); 

INSERT INTO distancias_temporales (id, distancia) VALUES (1, 14.25), (2, 13.34); 

SELECT * FROM talleres,distancias_temporales WHERE distancias_temporales.id = talleres.ID ORDER BY distancia ASC; 

當然做動態變化值:

$ data = "(-1, -1)"; 
if (isset ($ _GET ['data'])) { 
$ data = $ _GET ['data']. "(-1, -1)"; 
} 

,並在第二行:

"INSERT INTO d (id, distancia) VALUES ".$data.";"; 

但MySQL的把我的根據是什麼,他告訴我的頁面錯誤 ,代碼發送,因爲我想

但它不工作時,當我試圖把頁面上...

任何人都可以幫助我,這個問題我認爲會是多重查詢

+0

你用什麼mysql擴展來提交查詢? mysql和PDO不支持多重查詢,只有mysqli可以。 – Barmar

+0

請發佈mysql發送的錯誤消息。另外,賦值$ _GET ['data']。「( - 1,-1)」後$ data的值是多少? – Mophilly

+0

P.S.在PHP中不要在'$'之後放置空格。這是允許的,但沒有人這樣寫,所以很難閱讀。 '$'是變量名稱的一部分。 – Barmar

回答

0

MySQL可以處理多個插入語句。 Barmar提出了一個很好的觀點,即一些連接管理者不處理該構造。

假設SQL發送不變,它會出現一個逗號在$數據的分配丟失。

$ data = $ _GET ['data']. "(-1, -1)"; 

應該是...

$data = $ _GET['data'] . ", (-1, -1)"; 

當且僅當值$ _GET [ '數據']是不是空的,例如data =「(ID,DISTANCE),(ID,DISTANCE)」。

+0

我錯過了,這可以,數據結束是「,」 – Blaztix