SQL查询使用PHP显示x和y之间的所有数字
使用SQL查询使用PHP显示x和y之间的所有数字,php,sql,Php,Sql,使用html表单让我们在100中转换$core,在1000中转换$mhz emag和koyos是表行 因此,如果设置了$core,$parameters['emag']=“$core”为emag=100否则为null 和和中的是默认设置为显示的,所以问题是我收集了$parameters[]和foreach()中变量的所有数据。 通过我的代码,我得到的正是$core的内容。代码如下: if (!empty($core)) { $parameters['emag'] = "$core"; } if
html表单
让我们在100
中转换$core
,在1000
中转换$mhz
emag
和koyos
是表行因此,如果设置了
$core
,$parameters['emag']=“$core”代码>为emag=100
否则为null
和
和中的
是默认设置为显示的,所以问题是我收集了$parameters[]
和foreach()中变量的所有数据。
通过我的代码,我得到的正是$core
的内容。代码如下:
if (!empty($core)) {
$parameters['emag'] = "$core";
}
if (!empty($mhz)) {
$parameters['koyos'] = $mhz;
}
$sql = "SELECT * FROM $tbl_name WHERE 1=1 ";
if (!empty($parameters)) {
foreach ($parameters as $k => $v) {
$sql .= " AND " . $k . "='" . $v . "'";
}
}
$sql .= " ORDER BY emag, performanta_cpu_core DESC, performanta_cpu DESC LIMIT $start, $limit";
结果是只有emag=100
的行,但我需要所有的数字都等于或小于100
而不仅仅是100
试试这个:
foreach ($parameters as $k => $v) {
if ($k == 'emag') {
$sql .= " AND " . $k . "<='" . $v . "'";
continue;
}
$sql .= " AND " . $k . "='" . $v . "'";
}
foreach($k=>v的参数){
如果($k=='emag'){
$sql.=”和“$k.”根据您提供的数据,您的查询条件是:
其中1=1,emag='100'和koyos='1000'
因此,很明显,将只显示emag
=100
的行。如果要显示100
之前的所有行,请将=
更改为$v){
如果($k=='emag')
{
$sql.=“和”$k。“
foreach ($parameters as $k => $v) {
if ($k == 'emag')
{
$sql .= " AND " . $k . "<='" . $v . "'";
}
else
{
$sql .= " AND " . $k . "='" . $v . "'";
}
}