Доброе утро! Помогите надо срочно, а мозг после двух ночей кода, просто сдох! вообщем код раскажет лучше меня, спасибо братья! PHP: $cam_list = 1,2,6,11,14,15,16,45,67,70; // это я на этом остановился! просто там по коду они парсятья json кодяться и тп, PHP: public function searchOnMap($search, $cameraTitle, $cam_list) $sql = "SELECT {$this->lang}_address, camera_sid FROM ctexts WHERE camera_sid = ? AND camera_sid IN ($cam_list)"; вообщем не работает... дебажу....... вставляю жестко работает, через параметр не работает...... дебажу....... $cam_list = "'1','2','3','4'"; не работает $cam_list = "'1','2','3','4'"; работает как сделать помогайте
Код (Text): $cam_list = 1,2,6,11,14,15,16,45,67,70; такого в Пыхе не бывает должно быть PHP: $cam_list ="1,2,6,11,14,15,16,45,67,70"; - это строка ну и смотреть тип в бд camera_sid - если число, то оставляем так, если строка.... (мало ли) то все числа в одинарные кавычки ибо 1 != '1'
Блин (говорю мозг аут) дададада ВСЕ ВЕРНО ЭТО ' 1,2,43,4' одна большая строка в ячейке массива она не работает , а если сделать жестко числами работает, а если набор строк-чисел чероез запятую тоже работает , через цикл переберать массив, а не зя как то попроще ...
так погоди, ты в IN передаёшь строку из чисел. А там должен быть массив. Сделай из строки массив и передавай его в IN
ЛЮДи спасайте шото вообще колапс! (ВСЕ ЯСНО НО НЕ ЧЕГО НЕ РАБОТАЕТ) Вообщем PHP: $sql= "SELECT {$this->lang}_address, camera_sid FROM ctexts WHERE camera_sid = ? AND camera_sid IN (1,2,6,11,14,15,16,45,67,70)"; ЭТО РАБОТАЕТ ..... но как видите я жестко вставил в IN () теперь пытаюсь передать PHP: $str= ''; foreach ($cam_list as $k => $v) { $str .= "'".(int)$v ."'". ","; } $str = substr($str, 0, -1); $sql= "SELECT {$this->lang}_address, camera_sid FROM ctexts WHERE camera_sid = ? AND camera_sid IN ($str)"; не работает что то вообще не получаеться вот массив каторый пришел PHP: array(13) { [0]=> string(1) "1" [1]=> string(1) "2" [2]=> string(1) "3" [3]=> string(1) "4" [4]=> string(1) "5" [5]=> string(1) "6" [6]=> string(1) "7" [7]=> string(2) "22" [8]=> string(2) "44" [9]=> string(2) "45" [10]=> string(2) "67" [11]=> string(2) "67" [12]=> string(2) "87" } вот str каторую распарсил PHP: string(57) "'1','2','3','4','5','6','7','22','44','45','67','67','87'" СПАСАЙТЕ СРОЧНО ((((
не получаеться вывести тебе селект по быстрому из модели( но по факту зачем он тебе!!!!) PHP: $str= ''; foreach ($cam_list as $k => $v) { $str.= "'".(int)$v ."'". ","; } $str= substr($str, 0, -1); //$sql = "SELECT {$this->lang}_address, camera_sid FROM ctexts WHERE camera_sid = ? AND camera_sid IN (1,2,6,11,14,15,16,45,67,70)"; $sql = "SELECT {$this->lang}_address, camera_sid FROM ctexts WHERE camera_sid = ? AND camera_sid IN ($str)";
я тут логи смотрел, в бубны бил! походу такой SELECT ru_address, camera_sid FROM ctexts WHERE camera_sid = 1 AND camera_sid IN () МНЕ КАЖЕТЬСЯ ЭТО ИЗЗА bind params так как они одинаковые camera_sid!