gpt4 book ai didi

php - 将特定字母替换为范围数字并使用 php 在数据库中搜索

转载 作者:行者123 更新时间:2023-11-30 23:01:35 25 4
gpt4 key购买 nike

请帮忙。

<form name="main" method="POST">                    
<input name="search" type="text">
<input name="submit" type="submit" value="Go">
</form>

每当用户输入 X 或 Y 或 Z 时,此值将读取为范围 0-9

我需要使用 php 和 mysql 捕获数据库中的值

当用户在搜索输入文本中输入值时。 "XX1YYZ"

我需要读取等于范围“0,1,2,3,4,5,6,7,8,9”的字母“X”

我需要读取等于范围“0,1,2,3,4,5,6,7,8,9”的字母“Y”

我需要读取等于范围“0,1,2,3,4,5,6,7,8,9”的字母“Z”

其中“X”不等于“Y”和“Z”

其中“Y”不等于“X”和“Z”

其中“Z”不等于“X”和“Y”

数据库中的示例数据

1233557

1255661

1288119

7711458

666788

3344556

例如我在文本输入中输入“12XXYYZ”

输出应该是“1233557”和“1255661”和“1288119”

因为它等于数据库值

它有点复杂吗?请帮忙

这是我到目前为止的结果,但每个结果的数量不应该相等,应该搜索数据库值

if(isset($_POST['submit']))
{
$searchtext = $_POST['search'];
foreach (range(0, 9) as $n) {

$trans = array("X" => $n, "x" => $n, "Y" => $n, "y" => $n, "Z" => $n, "z" => $n);
if (strtr($searchtext, $trans)){

echo '<br>' . strtr($searchtext, $trans);
}
}
}

最佳答案

这可能是一个解决方案:

首先从数据库中获取基本选择的数字,通过将 XYZ 替换为 ???

select * from [table] where [field] like '12_____';

这应该会限制您的选择。

下一步是在 PHP 中,下面是伪代码:

foreach ($row)
$i = 0;
foreach ($char in $filter) {
$i++;
if ($char == 'Z')
if ($Z == empty)
$Z = $field[$i]
else
if ($field[$i] != $Z)
break;
// repeat for Y
// repeat for x
}
if (x == y or y == z or x == z)
continue;
addtoresult($row);
}

关于php - 将特定字母替换为范围数字并使用 php 在数据库中搜索,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23737494/

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