gpt4 book ai didi

javascript - 如何管理mysql where子句中 "+"的数据

转载 作者:行者123 更新时间:2023-11-29 12:16:40 24 4
gpt4 key购买 nike

我在成员表中有一个血型数据 [A-,A+,B+,B-,AB+, AB-,O+,O-]我有一个搜索功能,允许我选择以上血型并搜索具有所选血型的成员。但我的查询没有为我获取血型以“+”结尾的成员。对于血型为“-”的成员,相同的查询工作正常。

然后我将查询结果传递给一个 javascript url,它会获取最终的查询结果。所以我觉得 javascript 变量在得到 + 时就结束了。那么如何管理呢?

这是我的查询:

$bldgroup       = mysql_real_escape_string($_POST["bldgroup"]);
$sqlsearch = mysql_query("SELECT * from member
WHERE blood_group='$bldgroup'
ORDER BY memid ASC");

<script>

var url = "../include/query.php?flag=search&&query="+sqlsearch;

</script>
<div><label>Blood Group</label></div>
<div>
<select id="bldgroup" name="bldgroup" >
<option value="">Select</option>
<option value="A+">A+</option>
<option value="A-">A-</option>
<option value="B+">B+</option>
<option value="B-">B-</option>
<option value="AB+">AB+</option>
<option value="AB-">AB-</option>
<option value="O+">O+</option>
<option value="O-">O-</option>
</select>
</div>
</div>


//This the content inside ./include/query.php file
if(isset($_REQUEST["flag"]))
{
$list = $_REQUEST["flag"];
if($list == "search")
{
$query = $_REQUEST["query"];
$sql = $query;
$sql.= mysql_query" ORDER BY t1.MemberID DESC";
}
}

最佳答案

该代码对我有用..我创建了一个表成员,其中包含一 strip 有 Blood_group A+ 的记录和一 strip 有 Blood_group A- 的记录。选择 A+ 并为我发送表单结果会产生正确的记录。

当然我不知道你的表定义,所以你的MySQL查询可能有问题。

尝试使用

$sql = "SELECT * from member where       blood_group='$bldgroup' order by memid asc";
$search_result = mysql_query($sql) or die ($sql."<BR>".mysql_error());

另请注意您已收到的评论。您的代码使用了通常不安全的已弃用函数,您至少应该使用 mysqli功能。

我的 PHP 代码:

<?php
mysql_connect("localhost", "root", "root");
mysql_select_db("test");

$bldgroup = mysql_real_escape_string($_POST["bldgroup"]);
$sqlsearch = mysql_query("SELECT * from member where blood_group='$bldgroup' order by memid asc");

while ($row = mysql_fetch_row($sqlsearch)) {
var_dump($row);
}

?>
<form method="POST">
<div><label>Blood Group</label></div>
<div>
<select id="bldgroup" name="bldgroup" >
<option value="">Select</option>
<option value="A+">A+</option>
<option value="A-">A-</option>
<option value="B+">B+</option>
<option value="B-">B-</option>
<option value="AB+">AB+</option>
<option value="AB-">AB-</option>
<option value="O+">O+</option>
<option value="O-">O-</option>
</select>
</div>
</div>
<input type="submit">
</form>

我的表定义:

CREATE TABLE `member` (
`id` int(11) NOT NULL AUTO_INCREMENT,
`blood_group` varchar(20) NOT NULL,
`memid` int(11) NOT NULL,
PRIMARY KEY (`id`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8 AUTO_INCREMENT=3 ;

INSERT INTO `member` (`id`, `blood_group`, `memid`) VALUES
(1, 'A+', 123),
(2, 'A-', 231);

关于javascript - 如何管理mysql where子句中 "+"的数据,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29699834/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com