[英]MySQL multi statement in 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根據他告訴我的頁面向我發送了一個錯誤,代碼按我的意願發送
但是當我嘗試放在頁面上時它不起作用......
任何人都可以幫助我,我認為問題是多查詢
MySQL 可以處理多個插入語句。 Barmar 提出了一個很好的觀點,即某些連接管理器不處理該構造。
假設 SQL 未更改發送,則 $data 的分配中似乎缺少逗號。
$ data = $ _GET ['data']. "(-1, -1)";
應該是...
$data = $ _GET['data'] . ", (-1, -1)";
當且僅當值 $_GET['data'] 不為空,例如 data="(ID, DISTANCE),(ID, DISTANCE)"。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.