PHP.SU

Программирование на PHP, MySQL и другие веб-технологии
PHP.SU Портал     На главную страницу форума Главная     Помощь Помощь     Поиск Поиск     Поиск Яндекс Поиск Яндекс     Вакансии  Пользователи Пользователи

Страниц (7): « 1 2 3 [4] 5 6 7 »

> Найдено сообщений: 94
Рачей Отправлено: 22 Июня, 2016 - 14:41:46 • Тема: Поле из базы в массив? • Форум: Вопросы новичков

Ответов: 2
Просмотров: 162
Как мне выборку из поля, где цифры через запятую, превратить в массив?

$data = array($row['data']); выводит
Array
(
[0] => 2,3,4,6,7,8
)

А мне надо
Array
(
[0] => 2
[1] => 3
[2] => 4
[3] => 6
[4] => 7
[5] => 8
)

Есть быстрый способ что бы не городить огород на php?
(Добавление)
explode(',', $row['data']); правильное решение?
Рачей Отправлено: 07 Июня, 2016 - 19:38:28 • Тема: Посчитать сколько одинаковых значений поля... COUNT или ...? • Форум: Работа с СУБД

Ответов: 0
Просмотров: 856
Привет всем. Ломаю голову как мне заставить MySQL отработать что бы не городить огород в php.

CODE (SQL):
скопировать код в буфер обмена
  1.  
  2. SELECT
  3. t1.id,
  4. t1.user_id,
  5. nickname,
  6. imageurl,
  7. t1.title,
  8. competition_id,
  9. /*
  10. (
  11.         SELECT COUNT(id)
  12.         FROM cms_competition_work t6
  13.         WHERE  vote=(
  14.                 SELECT MAX(vote)
  15.                 FROM cms_competition_work t7
  16.                 WHERE t6.competition_id=t7.competition_id
  17.         )
  18. ) winner
  19. */
  20. FROM cms_competition_work t1
  21. JOIN cms_users t3 ON t3.id = t1.user_id
  22. JOIN cms_user_profiles t4 ON t4.user_id = t1.user_id
  23. JOIN cms_competition t5 ON t5.id = t1.competition_id
  24. WHERE vote=(
  25.         SELECT MAX(vote)
  26.         FROM cms_competition_work t2
  27.         WHERE t1.competition_id=t2.competition_id
  28. )
  29. LIMIT 6
  30.  


Есть задача, вывести на морду сайта 6 победителей конкурсов. Все с одной стороны просто есть приз в каждом конкурсе есть победитель. Победитель получил приз. Все что кроме закомментированого, работает как надо. Но вот оказалось что в конкурсе может победить 2 или даже 3 человека, и надо поделить баллы на это количество человек. Кусок кода в коменте мне выдает общее количество призеров.. А как бы мне получить количество победителей в каждом competition_id?
Помогите пожалуста. Есть вариант в цикле попробовать разобрать совпадение ключей массива, но что-то я там пробовал вообще ни каких мыслей как это сделать... array_count_values мне не помог. Или я просто не умею им пользоваться.
(Добавление)
Подписаться забыл.
Рачей Отправлено: 01 Июня, 2016 - 00:20:58 • Тема: Переменные в smarty как правильно? • Форум: Вопросы новичков

Ответов: 6
Просмотров: 280
вот понимаете какое дело, если бы я мог из контроллера это отправить, я бы и не спросил такую глупость. я могу конечно добавить в таблицу дополнительное поле с меткой была загружена картинка или нет, но мы же не ищем легких путей... просто из контоллера отправляется массив и в смарти в цикле обрабатывается..
Рачей Отправлено: 31 Мая, 2016 - 22:46:24 • Тема: Переменные в smarty как правильно? • Форум: Вопросы новичков

Ответов: 6
Просмотров: 280
Да видел я. Ничего там путнего не нашел или не понимаю что ищу. Я уж пробовал и из этого загнать первую часть пути к файлу в переменную и расширение файла туда же, а потом собрать из трех.. Пипец, что только я е пробовал и где только не искал. Иначе бы не спросил. Иногда бывает потратишь тучу времени а ответ перед глазами лежал. И бывает так что кто-то уже такое делал..
Рачей Отправлено: 31 Мая, 2016 - 22:06:43 • Тема: Переменные в smarty как правильно? • Форум: Вопросы новичков

Ответов: 6
Просмотров: 280
Так и нафига тут пишете свой говнокод? Или думаете ваш говнянее? Хренатасдва!
Я просто не знаю как работать со смарти поэтому и спрашиваю. В самом смарти черт ногу сломит. Там написано переменные через + и с обратными кавычками. Но эта фигня не работает..
Вот и хочется узнать, может это вообще работать или нет. Кстати ссылки ваши получаются говноссылками, потому что вопрос не в file_exists и не в file а в том как переменную сунуть сюда '/images/photos/small/f_' + $k.id + '.jpg'
(Добавление)
Немного подправил первоначальный вопрос
Рачей Отправлено: 31 Мая, 2016 - 20:59:25 • Тема: Переменные в smarty как правильно? • Форум: Вопросы новичков

Ответов: 6
Просмотров: 280
Привет всем, хотел попробовать такую структуру:

PHP:
скопировать код в буфер обмена
  1.  
  2.         {if file  == '/images/photos/small/f_' + $k.id + '.jpg'}
  3.                 <img src="/images/photos/small/f_{$k.id}.jpg" width="96">
  4.         {else}
  5.                 <img src="/images/photos/small/no_image.png" width="96">
  6.         {/if}
  7.  


Но как-то вот это не работает:
CODE (htmlphp):
скопировать код в буфер обмена
  1. {if file  == '/images/photos/small/f_' + $k.id + '.jpg'}

Как в смарти такое можно сделать? Вопрос в том, как сунуть переменную $k.id в строку...
Рачей Отправлено: 06 Мая, 2016 - 14:57:51 • Тема: Поиск в массиве array_search • Форум: Вопросы новичков

Ответов: 2
Просмотров: 174
PHP:
скопировать код в буфер обмена
  1. if ((array_search($v['iso3letter'], $sdata) !== FALSE) {


Спасибо!Улыбка ТОлько скобочку не там немного, но это уже мелочи.
Рачей Отправлено: 06 Мая, 2016 - 12:29:00 • Тема: Поиск в массиве array_search • Форум: Вопросы новичков

Ответов: 2
Просмотров: 174
Задача: Вывести страны с чекбоксами на странице добавления населенного пункта.
В базу к этому населенному пункту пишу -> base64_encode(serialize($iso3letter));
При выводе разбираю -> $sdata = unserialize(base64_decode($city));
Получается массив стран связаных с нас пунктом.
CODE (htmlphp):
скопировать код в буфер обмена
  1.  
  2. (
  3.     [0] => aus
  4.     [1] => dza
  5.     [2] => bgr
  6. )


Массив стран доступных для связи выглядит так:
CODE (htmlphp):
скопировать код в буфер обмена
  1. (
  2.     [0] => Array
  3.         (
  4.             [nameru] => Абхазия
  5.             [iso3letter] => abh
  6.         )
  7.  
  8.     [1] => Array
  9.         (
  10.             [nameru] => Австралия
  11.             [iso3letter] => aus
  12.         )
  13.  
  14.     [2] => Array
  15.         (
  16.             [nameru] => Алжир
  17.             [iso3letter] => dza
  18.         )
  19.  
  20.     [3] => Array
  21.         (
  22.             [nameru] => Болгария
  23.             [iso3letter] => bgr
  24.         )
  25.  
  26.     [4] => Array
  27.         (
  28.             [nameru] => Российская Федерация
  29.             [iso3letter] => rus
  30.         )
  31.  
  32. )


Пытаюсь поиском в цикле найти совпадения что бы потом вывести чекбоксы уже отмеченые с выбраными странами.. Но на выходе получаю только 2 чекбокса....
PHP:
скопировать код в буфер обмена
  1.  
  2. print_r($data);
  3. print_r($sdata);
  4.  
  5.  
  6. foreach ($data as $k => $v) {
  7.         if (array_search($v['iso3letter'], $sdata)) {
  8.                 $result[]['iso3letter'] .= $v['iso3letter'].' + ';
  9.         } else {
  10.                 $result[]['iso3letter'] .= $v['iso3letter'].' ';
  11.         }
  12.    
  13. }
  14.  
  15. print_r($result);
  16.  



Вот вывод:
CODE (htmlphp):
скопировать код в буфер обмена
  1.  
  2. (
  3.     [0] => Array
  4.         (
  5.             [iso3letter] => abh
  6.         )
  7.  
  8.     [1] => Array
  9.         (
  10.             [iso3letter] => aus
  11.         )
  12.  
  13.     [2] => Array
  14.         (
  15.             [iso3letter] => dza +
  16.         )
  17.  
  18.     [3] => Array
  19.         (
  20.             [iso3letter] => bgr +
  21.         )
  22.  
  23.     [4] => Array
  24.         (
  25.             [iso3letter] => rus
  26.         )
  27.  
  28. )
  29.  


Подскажите что не правильно. А может быть есть какое другое правильное и простое решение?
Рачей Отправлено: 06 Мая, 2016 - 11:49:33 • Тема: JavaScript---п-е-р-е-м-е-н-н-а-я>>>PHP • Форум: Вопросы новичков

Ответов: 12
Просмотров: 355
Вы понимаете, тут вопрос такой. Скрипт обрабатывается клиентом, а php сервером...
Поэтому рекомендую использовать ajax
Тут можете передать из своего скрипта что угодно и куда угодно. И сразу же не отходя от кассы получить ответ.
Рачей Отправлено: 06 Мая, 2016 - 11:44:32 • Тема: Загрузка рекламной страницы перед главной • Форум: Вопросы новичков

Ответов: 3
Просмотров: 220
Такое впечатление что вы продавец в этом магазинеУлыбка
А определись с какого устройства и в зависимости от этого показать кому что?
Рачей Отправлено: 01 Февраля, 2016 - 23:01:49 • Тема: подсчет рефералов • Форум: Вопросы новичков

Ответов: 10
Просмотров: 545
T1grOK пишет:
При решении данной задачи очень кстати использовать вложенные множества.


Так предложите вариант.
Рачей Отправлено: 31 Января, 2016 - 15:08:04 • Тема: подсчет рефералов • Форум: Вопросы новичков

Ответов: 10
Просмотров: 545
Prizma пишет:
пару лет назад - мне тоже помогали тут, считай возвращаю должок))


Я намек понялУлыбка) Надеюсь дорасту до уровняУлыбка)
Рачей Отправлено: 31 Января, 2016 - 00:00:32 • Тема: подсчет рефералов • Форум: Вопросы новичков

Ответов: 10
Просмотров: 545
Да вот это хорошее решение. Спасибо. Думаю не только мне пригодится. Кстати гугл не охотно показывает что-либо по этой теме.

Когда же мне можно будет нажать кнопку спасибо?Улыбка Пофлудить чтоль пойти по форуму?Улыбка))
Рачей Отправлено: 30 Января, 2016 - 11:09:21 • Тема: подсчет рефералов • Форум: Вопросы новичков

Ответов: 10
Просмотров: 545
Да примерно так, спасибо. Жаль кнопку спасибо нажать не могу, говорит сообщений мало. Сколько же их надо набрать и смысл в этом наборе...

Мне не совсем понятно зачем тут (($p = getParent($userId)) > 0)
больше нуля? Оно может быть равно или меньше?

и тут
$k = [0.2,0.05, 0.0125 ...]; // коэффициент
если тут он руками задан руками...
Рачей Отправлено: 29 Января, 2016 - 23:10:27 • Тема: подсчет рефералов • Форум: Вопросы новичков

Ответов: 10
Просмотров: 545
Спасибо, я так и предполагал что надо при действии крайнего пробежаться по цепочке вверх до первого и всем накинуть.. Осталось придумать кто сколько имеет в зависимости от уровня.. и тут еще момент что чем глубже уровень, тем меньше процент наверное... Точнее сколько нижний будет отдавать на верх что бы это все на всех поделить в процентном соотношении..
В принципе ваша идея мне понятна, но мне кажется, поправьте если ошибаюсь, тут с коэфицентами надо поработать.. У вас они задаются железно.. А надо наверное их создавать под каждого юзера в зависимости от вложенности.. То есть есть уровень вложенности и на него надо поделить сумму отдачи процента пользователя выстроив в какой-то прогрессии.
Не, гоню? Или как?
(Добавление)
Теперь бы еще придумать откуда брать бонусы на партнеров вверх.. Закладывать в цену рекламодателя? тут надо крепко будет подумать. Вообщем теория мне ясна... Еще пару часов назад я даже представления не имел как это сделать.. А сейчас уже даже знаю как я это реализую.

СпасибоУлыбка

Страниц (7): « 1 2 3 [4] 5 6 7 »
Powered by PHP  Powered By MySQL  Powered by Nginx  Valid CSS  RSS

 
Powered by ExBB FM 1.0 RC1. InvisionExBB