Warning: Cannot use a scalar value as an array in /home/admin/public_html/forum/include/fm.class.php on line 757
Warning: Invalid argument supplied for foreach() in /home/admin/public_html/forum/include/fm.class.php on line 770
Warning: Invalid argument supplied for foreach() in /home/admin/public_html/forum/topic.php on line 737 Форумы портала PHP.SU :: Поиск в массиве на совпадение значений
В общем суть такова: если $fullname находит в массиве, то {делается что-то}, а если нет, то создается новый человек и заносится в другую табличку.
Пробовал через цикл while с перебором всех значений, то работает, но там слишком много у меня заморочек с условиями.
Помогите, пожалуйста! Как решить проблему?
Покинул форум
Сообщений всего: 1131
Дата рег-ции: Февр. 2014
Помог: 57 раз(а)
skelmen,
skelmen пишет:
$f = ibase_fetch_assoc($full);
поместит в $f одну запись из набора данных, полученного в результате запроса, либо вернёт FALSE, если необработанных записей не осталось (или не было вовсе).
skelmen
Отправлено: 03 Июня, 2015 - 16:58:15
Новичок
Покинул форум
Сообщений всего: 11
Дата рег-ции: Нояб. 2014
Помог: 0 раз(а)
Sail пишет:
skelmen,
skelmen пишет:
$f = ibase_fetch_assoc($full);
поместит в $f одну запись из набора данных, полученного в результате запроса, либо вернёт FALSE, если необработанных записей не осталось (или не было вовсе).
Почему одну запись? Разве не все выбранные записи (FULLNAME)?
Sail
Отправлено: 03 Июня, 2015 - 17:26:43
Участник
Покинул форум
Сообщений всего: 1131
Дата рег-ции: Февр. 2014
Помог: 57 раз(а)
skelmen пишет:
Почему одну запись? Разве не все выбранные записи (FULLNAME)?
Все возвращает ibase_query(). Вот из них ibase_fetch_assoc() достаёт одну...
Вот и крутите его в цикле, пока не вернёт FALSE
skelmen
Отправлено: 03 Июня, 2015 - 20:25:07
Новичок
Покинул форум
Сообщений всего: 11
Дата рег-ции: Нояб. 2014
Помог: 0 раз(а)
Sail пишет:
skelmen пишет:
Почему одну запись? Разве не все выбранные записи (FULLNAME)?
Все возвращает ibase_query(). Вот из них ibase_fetch_assoc() достаёт одну...
Вот и крутите его в цикле, пока не вернёт FALSE
А как поставить правильно условия, чтоб сначала оно прошлось по циклу,если нашло, то выполняется что-то..., а если не нашло, то выполняется что-то другое?
Оно работало, но выполнялись какие-то действия в условиях, которые не должны были, сейчас не могу вспомнить и найти какие именно, т.к. все вроде сейчас тестирую и все норм.
DeepVarvar
Отправлено: 04 Июня, 2015 - 11:51:45
Активный участник
Покинул форум
Сообщений всего: 10377
Дата рег-ции: Дек. 2008 Откуда: Альфа Центавра
Помог: 353 раз(а)
Из моего примера надо было проверить только вернулся ли результат из БД или нет.
А если у тебя там будет мильён записей ты так же будешь массивчиком перебирать? ССЗБ тогда.
Покинул форум
Сообщений всего: 1131
Дата рег-ции: Февр. 2014
Помог: 57 раз(а)
skelmen, посмотрев описание работы функции ibase_query() по ссылочке, подставленной в Ваш пример, можно выяснить, что она имеет три варианта возвращаемого значения.
Покинул форум
Сообщений всего: 11
Дата рег-ции: Нояб. 2014
Помог: 0 раз(а)
Sail пишет:
skelmen, посмотрев описание работы функции ibase_query() по ссылочке, подставленной в Ваш пример, можно выяснить, что она имеет три варианта возвращаемого значения.
Делаю по вашему примеру, получается так:
1. if($full === TRUE) - все ок, создается новый, и делаются действия
2. elseif($full === FALSE) - тут понятно.
3. else - тут не все ок, вместо него выполняется то же,что внутри if($full === TRUE)
ibase_free_result($full); н я никуда не вставлял.
DeepVarvar
Отправлено: 05 Июня, 2015 - 13:14:47
Активный участник
Покинул форум
Сообщений всего: 10377
Дата рег-ции: Дек. 2008 Откуда: Альфа Центавра
Все гости форума могут просматривать этот раздел. Только зарегистрированные пользователи могут создавать новые темы в этом разделе. Только зарегистрированные пользователи могут отвечать на сообщения в этом разделе.