0

我想在具有可变位置的数据库中搜索。变量在这里创建:

&numbers  //= user input
&naar    // = user input

$number = range($numbers+1, $naar -1); //define the range between the inputs
foreach ($number as $key=>$val){
$number[$key] = $letter.$val;}         //define the array
$string = implode (' ',$number);       // make a string from the array

这工作正常。输出是一个字符串,包含最少 0 个输出和最多 7 个输出。例如:A2 A3 A4 A5

我希望数据库搜索是否在生成的位置之一。我已经得到了这个:

  $query="select chess_id from stelling where positie=\"".$number."\"";
  $result = mysql_query($query, $connection);
  $spring = 0;
    if(mysql_num_rows($result)>0)                
        {
        $spring = mysql_result($result, 0);
        }
    echo "$spring";

使用此代码,只会检查最后生成的 $string 输出。如何让数据库检查所有生成的字符串代码?例如:

$string = `A2 A3 A4 A5`
$query="select chess_id from stelling where positie=\"".$number."\"";

只会检查A5

表中的示例行:

重量,A1 wp,A2 wl,A3 wq,A4

4

1 回答 1

2

好吧,我不确定你的问题到底是什么,但你为什么不使用 IN 语句?

$string = '(`' . implode('`, `',$number) . '`)';   
$query="select chess_id from stelling where positie IN {$string}";
于 2013-07-02T08:25:17.763 回答