我想通过我的url
传递多个值,如下所示。
我已经创建了php
编码文件,但是我无法得到正确的结果。
<?php
require('adminpanel/includes/application_top.php');
if ($_SERVER['REQUEST_METHOD'] == 'GET') {
$id = explode(",", $_GET["uid"]);
$sth = mysql_query(" SELECT drug_medicines.fld_id,
drug_medicines.fld_image, drug_medicines.ld_product_name,
drug_medicines.fld_best_price,drug_cart.ld_userid,
drug_cart.fld_qunty, drug_cart.fld_totalprice
FROM drug_medicines
INNER JOIN drug_cart
ON drug_medicines.fld_id=drug_cart.fld_productid
WHERE fld_userid='" . $id . "' ||'" . $id . "'");
$rows = array();
while ($r = mysql_fetch_assoc($sth)) {
$rows[] = $r;
}
print json_encode($rows);
}
?>
答案 0 :(得分:3)
格式应该是这样的。
WHERE fld_userid='".$id[0]."' OR fld_userid= '".$id[1]."'");
对于超过2的值,请使用
WHERE fld_userid IN (" . implode(',', $id) . ")"
答案 1 :(得分:2)
根据您的URL
,您将来可能会有更多的值,因此您应该使用IN
的{{1}}函数
mysql
答案 2 :(得分:1)
您应该使用connection.start({ transport: 'longPolling' });
以获得更大的灵活性。
IN
将输出:
"... WHERE fld_userid IN (" . implode(',', $id) . ")"
答案 3 :(得分:1)
在mysql查询中使用IN
。
<?php
require('adminpanel/includes/application_top.php');
if ($_SERVER['REQUEST_METHOD'] == 'GET') {
$id = explode(",", $_GET["uid"]);
$sth = mysql_query("
SELECT
drug_medicines.fld_id,
drug_medicines.fld_image, drug_medicines.ld_product_name,
drug_medicines.fld_best_price,drug_cart.ld_userid,
drug_cart.fld_qunty, drug_cart.fld_totalprice
FROM
drug_medicines
INNER JOIN
drug_cart
ON
drug_medicines.fld_id=drug_cart.fld_productid
WHERE
fld_userid IN (" . $_GET["uid"] . ")");
$rows = array();
while ($r = mysql_fetch_assoc($sth)) {
$rows[] = $r;
}
print json_encode($rows);
}
?>