Warning: Invalid argument supplied for foreach()
Bu hatayı alıyorum ayrıca hocam kod şöyle gözüküyor sanırım tırnaklarla alakalı bir problem.
'SELECT*FROM tablo WHERE deger1 IN(' . implode(',', $deger1dearanacakdizi) . ') OR deger2 IN(' . implode(',', $deger2dearanacakdizi) . ')';
Yani son tırnaktan sonrakileri görmüyor sanırım.
Hocam 2 farklı verisyon daha ekliyorum olmadı döngüye sokup parça parça çektirmek gibi de bir yöntem uygulanabilir. Net kod yapısı olmadı için net bişi söylemek zor
//Test 1
$deger1dearanacakdizi = array('p23','p12');
$deger2dearanacakdizi = array('a43');
$ara1 = implode(',', $deger1dearanacakdizi);
$ara2 = implode(',', $deger2dearanacakdizi);
$sorgu = "SELECT * FROM tablo WHERE deger1 IN($ara1) OR deger2 IN($ara2)";
// Test 2
if(count($deger1dearanacakdizi) > 1 ){
$kisim1 = "deger1 IN(" . implode(',', $deger1dearanacakdizi) . ")";
}else{
$kisim1 = "deger1='" . $deger1dearanacakdizi[0] . "'";
}
if(count($deger2dearanacakdizi) > 1 ){
$kisim2 = "deger2 IN(" . implode(',', $deger2dearanacakdizi) . ")";
}else{
$kisim2 = "deger2='" . $deger2dearanacakdizi[0] . "'";
}
$sorgu = "SELECT * FROM tablo WHERE " . $kisim2 . ' OR ' . $kisim2;