コードのこの部分があり、タイトルにエラーが表示されます。
$k
各テーブルに 1 から 5 までのカウントがあります。
$myarray
少なくとも 3 つから 4 つの名前で構成されます。
エラーは次の行で発生し$qu .=
ます...
これまでに試したこと:変数名$i
を行$v{$i}
に変更します$qu .=
。
それで、クエリを繰り返す可能性はありますか? 配列の数と同じ数の s が句に含まれるようにするにはAND
?WHERE
while ($k<=5) {
$queryname = "SELECT Name FROM description";
$qname = mysql_query($queryname,$link);
while ($reihe = mysql_fetch_object($qname)) {
{
$unse = unserialize($reihe->Name);
{
foreach ($unse as $j=>$h)
foreach ($h as $m) {
$myarray = preg_split('/ |\s| /',$m);
{
echo "<br>";
$array_empty = $myarray;
$empty_elements = array("");
$myarray = array_diff($array_empty,$empty_elements);
var_dump($myarray);
for ($i=1; $i<=count($myarray); $i++) {
$v{$i} = $myarray[$i];
echo $v{$i};
$esc{$i} = strtolower(mysql_escape_string($v{$i}));
echo "<br>" . $esc{$i} . "<br>";
$qu = "SELECT * FROM `table ID=$k` WHERE";
$qu{$i} .= "AND `table ID=$k`.`name` LIKE '%$esc{$i}%'";
}
}
}
{
$test_a = mysql_query($qu,$link) or die (mysql_error());
echo "<br>";
var_dump($test_a);
for ($x=0; $x<mysql_num_rows($test_a); $x++) {
$row = mysql_result($test_a,$x,'data1');
$namee = mysql_result($test_a,$x,'data2');
echo 'data1' . $row . '<br>';
echo 'data2' . $namee . '<br>';
}
}
}
}
}
$k++;
}