поиск внутри массива

Зодчий

Новичок
Добрый день!
Имеется массив

PHP:
$result = mysql_query("SELECT `a`, `b`, `c`  FROM db WHERE a like '$a%' ORDER BY `a` ASC") or die(mysql_error());
$myrow = mysql_fetch_array($result);
Далее цикл создания переменной $d по достижению $i.
нужно чтобы в цикле был также поиск совпадения в массиве $d по столбцу 'a'. И если есть совпадение, то доп. проверка, что значения столбца b и с не равно нулю и вставка в бд.
Примерно я это написал, но получается очень коряво и не совсем корректно работает.
Подскажите как это привильно сделать.
 

Зодчий

Новичок
пиши все проверки сразу в запрос
Как вариант можно, но тогда появиться дублирование кода из-за зависимости от других получаемых данных.
Я по-этому этот запрос и выдернул в самое начало кода, чтобы получить массив, а затем провести ряд изменений в бд.
 

Фанат

oncle terrible
Команда форума
Если ты собираешься производить изменения в бд на основе записей в бд - ты изначально что-то делаешь не так.
Если не знаешь, как что-то сделать без дублирования - делай с дублированием.
Если ты не знаешь, как решать ту или иную задачу - задай вопрос о том, как решать именно её. А не о граблях ты наступил, пытаясь изобрести велосипед.
Если ты слишком абстрагировал свой вопрос, сделав из него "а меня есть абцэ, как мне получить дэ?", то не удивляйся, tсли тебе ответят "подели Х на У а потом добавь хвостик от деления"
 

Зодчий

Новичок
По пунктам.
Изменения в бд будут добавляться не на основе записей бд, а путем выборки их из бд(в одной из таблиц), изменения и записи в другую таблицу.
Сделать можно как угодно. Но не всегда это верно. Форум и существует ради помощи друг другу.
Я и задал конкретный вопрос. Если Вы не знаете как это сделать, кроме как сразу запросом, то можно не вступать в дальнейшую полемику. За совет Вам спасибо, но мне желательно другой вариант решения. Я об этом и написал в ответе.
Я абстрагировал вопрос ради упрощения его восприятия. Считаю так проще его понять. Я поставил конкретные переменные. Если Вы хотите видеть варианты их значений, то так и напишите.
 

Фанат

oncle terrible
Команда форума
Ты задал не конкретный вопрос, а какую-то ерунду.
Форум существует для помощи, но это не значит, что здесь будут возиться с каждым заносчивым нубом, который свой ископаемый говнокод считает верхом инженерной мысли, а невнятное бормотание - адекватно заданным вопросом.
Все, что я хочу увидеть - это осмысленный вопрос. Попробуй абстрагироваться от того факта, что ты весь из себя такой умный и гениальный, а те, кто не понимают твоих вопросов - дауны.

Или пиши конкретную задачу, которую ты пытаешься решить этими своими велосипедами, или ищи помощи на другом форуме.
 

Фанат

oncle terrible
Команда форума
Ну, или если ты предпочитаешь ответы в своем собственном стиле, то
но тогда появиТСЯ дублирование кода из-за зависимости от других получаемых данных.
эти другие получаемые данные тоже добавляй в запрос
 

Зодчий

Новичок
Фанат, давайте не будем переходить на личности. Это во-первых. Во-вторых, не тыкайте мне. В-третьих, не Вам обсуждать кто есть нуб, а что есть говнокод.

Redjik,
PHP:
$result = mysql_query("SELECT `a`, `b`, `c`  FROM db WHERE a like '$a%' ORDER BY `a` ASC") or die(mysql_error());
$myrow = mysql_fetch_array($result);
$d = $_POST['d'];
$i = "1";
 while ($i<=$d)
 {
   /* здесь я хочу проверку наличия $i в полученном массиве и при совпадении доп.проверку b>0 и с>0 */
	     $i++;
 }
 

Вурдалак

Продвинутый новичок
Зодчий, в первом сообщении ты утверждаешь, что $d — это массив. Зачем ты нам врал?
 

Зодчий

Новичок
Вурдалак, неее. Понял свою ошибку.Вот здесь да?
нужно чтобы в цикле был также поиск совпадения в массиве $d по столбцу 'a'
. Блин, извините. Действительно, если не знать задачи, то можно прочитать что d массив.
Имел ввиду как то так
нужно чтобы в цикле был также поиск совпадения в массиве по переменной $d по столбцу 'a'
 
Сверху