if ( $on_user['id_user'] == $img_on_user['id_user'] ) {
$img = '<img src="' . $img_on_user['puti'] . $img_on_user['name_img'] . $img_on_user['ext'] . '" alt="" width="70" />' . ucwords($on_user['log_user']);
} else {
$img = '<img src="/img/anm/15.gif" alt="" width="70" />' . ucwords($on_user['log_user']);
}
Это бредятина, у тебя оба массива беруться из бд,как они могут быть не равны по ключи, если ты их из бд по этому признаку выбираешь?
Valick
10.05.2013 - 11:01
Цитата |
приходит 2 массива из таблиц бд, 1 массив с данными о пользователе, 2 массив с данными о их фотографияф общее этиэ двух массивов это id пользователя |
Зачем они приходят? эта операция выполняется одним JOIN запросом.
Взялись работать с MySQL учите SQL, что бы не наворачивать тонны ненужного кода.
_____________
Стимулятор ~yoomoney - 41001303250491
Цитата |
Это бредятина, у тебя оба массива беруться из бд,как они могут быть не равны по ключи, если ты их из бд по этому признаку выбираешь? |
$on_user['id_user'] стоит авто инкремент он берется из одной таблици и записуется во вторую где должно быть равно вот этому $img_on_user['id_user']
_____________
www.skaj.ru
дело не в этом, вы мне можете подсказать по сути
_____________
www.skaj.ru
echo '<h5 align="center">Друзья на сайте ' . count($on_user) . '</h5>';
if ( $on_user['id_user'] == $img_on_user['id_user'] ) {
$img = '<img src="' . $img_on_user['puti'] . $img_on_user['name_img'] . $img_on_user['ext'] . '" alt="" width="70" />' . ucwords($on_user['log_user']);
} else {
$img = '<img src="/img/anm/15.gif" alt="" width="70" />' . ucwords($on_user['log_user']);
}
foreach($on_user as $kej => $one) {
foreach($img_on_user as $kij => $list) {
}
}
приведи запрос, который достает $on_user и $img_on_user
есть табли где записи кто кому друг, второе я получаю именно своих друзей, делаю масиив из этих пользователей, потом проверяю есть ли у них фото, если есть я проверяю есть ли у них фото с пометкой как оснавное, есть есть я собираю масив из этих оснавных фото пользователей где в таблицу с фото записывается ид пользователя к которому оно пренадлежит, это все просто, все работает, я ниже напишу входящие массивы пользователей и их фотографий.
_____________
www.skaj.ru
это массив пришедший с пользователями, которое к примеру в on-line
Array
(
[0] => Array
(
[id_user] => 2
[log_user] => user
[pass_user] => 123456
[n_user] => 0
[name_user] => иван
[mail_user] =>
[ss_user] => 0
)
[1] => Array
(
[id_user] => 102
[log_user] => vertu
[pass_user] => 123456
[n_user] => 2
[name_user] => артем
[mail_user] =>
[ss_user] => 0
)
)
а этот массив с данными о фото, того пользователя, у кого это фото есть
Array
(
[0] => Array
(
[id] => 25
[id_user] => 2
[osnova] => 1
[name_img] => skaj25
[ext] => .jpg
[width] => 600
[height] => 454
[puti] => /img/foto/
[moder] => 1
)
)
как видно, общее у них это id_user
_____________
www.skaj.ru
у меня сдесь задействовано 4 таблици из бд, 1 друзья, 2 сесии, 3 информация пользователя и 4 это фотографии, все этопы по сбору данных пройдены, остался вывод, я бы мог воводить массив где будет и данные пользователя и его фото, для меня так проще
Array
(
[0] => Array
(
[id_user] => 2
[log_user] => user
[pass_user] => 123456
[n_user] => 0
[name_user] => artem
[mail_user] =>
[ss_user] => 0
[osnova] => 1
[name_img] => skaj25
[ext] => .jpg
[width] => 600
[height] => 454
[puti] => /img/foto/
[moder] => 1
)
[1] => Array
(
[id_user] => 102
[log_user] => vertu
[pass_user] => 123456
[n_user] => 2
[name_user] => артем
[mail_user] =>
[ss_user] => 0
)
)
но я хочу подойти всесторонне к решению данной задачи
_____________
www.skaj.ru
почему я сюда к вам обратился за помощью, нужно чтоб у пользователя которого нету оснавной фото вывадилась альтернатива, это простой аватар заставка
_____________
www.skaj.ru
DarkGuy Представление данных в шаблонах как раз так и делается.
r3al То что Вы написали это есть "говно код".
skaj Сделайте один запрос (используя LEFT JOIN )(Обьедените его).
В итоге у Вас будет один foreach.
Цитата |
skaj Сделайте один запрос (исползуяю LEFT JOIN )(Обьедените его). В итоге у Вас будет один foreach. |
да, так годится, ток даже проще, но я только изучаю программирование на php, поэтому чтоб знать - нужно сталкиваться со сложностями, мне просто не понятно почему if ведет себя так в двойном foreach, не (логично), вот хотелось бы понять, хотябы не кодом а теорией, так даже лучше..
_____________
www.skaj.ru
Цитата (skaj @ 10.05.2013 - 08:22) |
Цитата | skaj Сделайте один запрос (исползуяю LEFT JOIN )(Обьедените его). В итоге у Вас будет один foreach. |
да, так годится, ток даже проще, но я только изучаю программирование на php, поэтому чтоб знать - нужно сталкиваться со сложностями, мне просто не понятно почему if ведет себя так в двойном foreach, не (логично), вот хотелось бы понять, хотябы не кодом а теорией, так даже лучше..
|
Используйте debugger,что-то типо zend debugger.Пройдитетсь по каждой строчки и увидите почему работает так а не этак.
я ниче не отрицаю, я сделал из одного говно кода другой, чуть покрасивше, при тех условиях которые дали в первом посте. потом выяснилось что входящие данные вообще не такие как я себе их представлял. (:
Цитата |
я ниче не отрицаю, я сделал из одного говно кода другой, чуть покрасивше, при тех условиях которые дали в первом посте. потом выяснилось что входящие данные вообще не такие как я себе их представлял. (: |
если сам пишешь, выше преведенное, не надо сваливать но когото
_____________
www.skaj.ru
Быстрый ответ:
Powered by dgreen
Здесь расположена полная версия этой страницы.