PHP.SU

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

Страниц (141): В начало « ... 11 12 13 14 [15] 16 17 18 19 ... » В конец

> Найдено сообщений: 2112
Stierus Отправлено: 09 Февраля, 2013 - 20:09:23 • Тема: Подготовка для написание своей CMS системы • Форум: CMS и фреймворки

Ответов: 86
Просмотров: 17799
digi, ты поймешь, что php - не ява и с ним нельзя работать, учась по книжкам для явы и другим взрослым языкам.Поймешь, что для этого языка не работают все эти паттерны проектирования. Ты откажешься от множества слоев абстракций, а классы будешь использовать по минимуму
Stierus Отправлено: 09 Февраля, 2013 - 19:47:02 • Тема: Подготовка для написание своей CMS системы • Форум: CMS и фреймворки

Ответов: 86
Просмотров: 17799
Цитата:
"посоветовать чего пацанам"? ) изучайте Symfony2, Doctrine2, git, composer, можно еще в интересную штучку копнуть, называется PHPCR, хотя мне она как-то так себе... я же намерен всёже на свой архитектуре допилить движок на симфони, если хотите - присоединйтесь ;)


Через пол года вы будете советовать другие вещи (обычно, этот этап длится пол года - год, из личных замечаний)
Stierus Отправлено: 09 Февраля, 2013 - 12:59:24 • Тема: помогите намисать класс • Форум: Работа с СУБД

Ответов: 8
Просмотров: 1717
Цитата:
вот начал писать класс для работы с mysql в небольших проектах.
PDO чем не устраивает?
Stierus Отправлено: 08 Февраля, 2013 - 15:15:48 • Тема: Первый раз решил установить MySQL • Форум: Вопросы новичков

Ответов: 17
Просмотров: 720
Когда я сталкиваюсь с незнакомым - я открываю мануалы ... иногда есть видео и краткие вводные ... в любом случае, у нас на это разные взгляды, можешь не благодарить Улыбка
Stierus Отправлено: 08 Февраля, 2013 - 12:26:54 • Тема: Сложная рекурсия. • Форум: Напишите за меня, пожалуйста

Ответов: 7
Просмотров: 97
PHP:
скопировать код в буфер обмена
  1. $cat_info = array(
  2.     3 => array("sub_id" => 2),
  3.     2 => array("sub_id" => 1),
  4.     1 => array("sub_id" => 0),
  5.     7 => array("sub_id" => 6),
  6.     6 => array("sub_id" => 5),
  7.     5 => array("sub_id" => 4),
  8.     4 => array("sub_id" => 0)
  9. );
  10.  
  11. function id_recurs()
  12. {
  13.     $numArgs = func_num_args();
  14.  
  15.     global $cat_info;
  16.  
  17.     if($numArgs ==0){
  18.         return '';
  19.     }
  20.     if($numArgs == 1){
  21.         $id = func_get_arg(0);
  22.  
  23.         if (!array_key_exists($id, $cat_info)){
  24.             return '';
  25.         }
  26.  
  27.         $childId = array_key_exists('sub_id', $cat_info[$id])?$cat_info[$id]['sub_id']:0;
  28.  
  29.         if($childId >0){
  30.             return $id.','.id_recurs($childId);
  31.         }
  32.         else{
  33.             return $id;
  34.         }
  35.     }
  36.  
  37.     $result = '';
  38.  
  39.     for($i = 0; $i<$numArgs; $i++){
  40.         $id = func_get_arg($i);
  41.         $result .= id_recurs($id);
  42.         if($numArgs != ($i+1)){
  43.             $result .= '|';
  44.         }
  45.     }
  46.     return $result;
  47. }
  48.  
  49.  
  50.  
  51.  
  52. echo id_recurs(2, 3, 7, 5, 6, 2, 0);

(Добавление)
Получается хвостовая рекурсия, но не думаю, что это сильно критично для вас
Stierus Отправлено: 08 Февраля, 2013 - 11:29:01 • Тема: Чтение последней строки из текстового файла • Форум: Вопросы новичков

Ответов: 7
Просмотров: 1156
Скрипт, который описан выше, копирует ВЕСЬ файл в массив (представляем, что происходит при работе с большими файлами), потом берет лишь последний элемент огромного массива.

Как это делают обычно:

Если файлы не сильно большие - не заморачиваться, а в цикле получаем содержимое файла построчно (http://www.php.net/manual/en/function.fgets.php) все непоследние строки пропускаем, последнюю оставляем. Чем это лучше вышеописанного варианта? - тем, что нет огромного массива с содержанием всего файла, а есть лишь переменная, содержащая лишь одну строчку из файла


Если файл сильно большой - вам поможет функция http://www.php.net/manual/en/function.fseek.php ... в комментариях много полезного, например http://www.php.net/manual/en/fun...fseek.php#106336
Что делает этот код? Смотрит размер файла, перемещает указатель в самый конец и в цикле посимвольно идет к началу, пока не натыкается на перевод строки. То, что между концом файла и первым переводом строки - это и есть последняя строка, но в обратном порядке.
(Добавление)
Что бы обратную строку перевести к нормальному виду - используйте http://www.php.net/manual/en/function.strrev.php
Stierus Отправлено: 08 Февраля, 2013 - 09:50:02 • Тема: Первый раз решил установить MySQL • Форум: Вопросы новичков

Ответов: 17
Просмотров: 720
Жмешь new connection: вводишь настройки твоего сервера (localhost и тд) - соединение готово. Дважды жмякаем на ярлык и ты внутри - выбирай конкретную бд, создавай таблицы, делай запросы ... я правда не понимаю, в чем у тебя затруднения?
Stierus Отправлено: 07 Февраля, 2013 - 20:21:12 • Тема: Передача нескольких значений • Форум: Объектно-ориентированное программирование

Ответов: 8
Просмотров: 1803
PHP:
скопировать код в буфер обмена
  1. class A {
  2.  
  3.     private function get_value() {
  4.         //
  5.         while($row = $it -> fetch()) {
  6.               //Получаем значение из бд. Например:
  7.               //$row -> id;
  8.               //$row -> login;
  9.               //и так далее
  10.               $this->show($row);
  11.         //
  12.     }
  13.  
  14.     public function show($row) {
  15.         //Здесь нужно вывести значения которые получили из закрытого метода
  16.     }
  17.  
  18. }
Stierus Отправлено: 07 Февраля, 2013 - 12:15:49 • Тема: Первый раз решил установить MySQL • Форум: Вопросы новичков

Ответов: 17
Просмотров: 720
Workbench - обычная программа (как видеопроигрыватель или читалка), устанавливай е куда хочешь. Когда запустишь - настрой соединение с локальным mysql и все
Stierus Отправлено: 07 Февраля, 2013 - 10:45:30 • Тема: Ошибка #1242 - Subquery returns more than 1 row • Форум: SQL и Архитектура БД

Ответов: 20
Просмотров: 285
CODE (SQL):
скопировать код в буфер обмена
  1. SELECT
  2.         c.department,
  3.         b.aux_build,
  4.         b.tnum,
  5.         d.surname,
  6.         d.name,
  7.         d.secondname,
  8.         d.birthday,
  9.         d.sex,
  10.         b.tld_1,
  11.         b.tld_2,
  12.         b.priznak,
  13.         sum( a.hp10_gamma + a.hp10_n ) AS dose_summa
  14. FROM tld_num b
  15. INNER JOIN pers_idk d  ON d.tnum = b.tnum
  16. INNER JOIN perehod c ON c.tnum = d.tnum
  17. INNER JOIN dose_rados a ON a.dosim_num = b.tld_1 OR a.dosim_num = b.tld_2
  18.  
  19. WHERE b.tnum <>'0'
  20. AND b.priznak NOT LIKE 'фон'
  21. AND a.date_change BETWEEN '$year' AND '$end_date'
  22. AND sum( a.hp10_gamma + a.hp10_n ) >=10


Твой запрос, нормально оформленный, без структуры таблиц, не могу протестить
Stierus Отправлено: 07 Февраля, 2013 - 09:17:55 • Тема: Ошибка #1242 - Subquery returns more than 1 row • Форум: SQL и Архитектура БД

Ответов: 20
Просмотров: 285
ты написал ошибку - я написал как от нее избавиться, какие проблемы с логикой запроса - другой вопрос, на него я смогу отвечать только когда узнаю, что ты от запоса хочешь
Stierus Отправлено: 07 Февраля, 2013 - 08:30:56 • Тема: Ошибка #1242 - Subquery returns more than 1 row • Форум: SQL и Архитектура БД

Ответов: 20
Просмотров: 285

замени на
CODE (SQL):
скопировать код в буфер обмена
  1. WHERE b.tnum IN ( SELECT
Stierus Отправлено: 06 Февраля, 2013 - 23:10:39 • Тема: Срочно !!! Время отображения ... • Форум: Напишите за меня, пожалуйста

Ответов: 18
Просмотров: 178
для защиты от параллельного запуска - можешь лочить файл на чтение и запись во время старта скрипта и снимать по окончании.
Stierus Отправлено: 06 Февраля, 2013 - 23:05:27 • Тема: Срочно !!! Время отображения ... • Форум: Напишите за меня, пожалуйста

Ответов: 18
Просмотров: 178
делаешь файл, в котором хранишь разрешенное время запуска (unix timestamp)


алгоритм работы скрипта:

1. берем таймштамп из файла
2 смотрим текущий таймштамп (time())
3 если текущее время больше времени из файла И меньше (времяиз файла + 17*60) - выполняемся, иначе выходим



выполняемся:
выводим строку "тест"
в файл записываем новое время (создаем объект DateTime от сегодня, сбрасываем часы, минуты и секунды в 0, прибавляем 1 день + rand(0, (24*60*60)) секунд)
Stierus Отправлено: 06 Февраля, 2013 - 22:54:30 • Тема: Срочно !!! Время отображения ... • Форум: Напишите за меня, пожалуйста

Ответов: 18
Просмотров: 178
задача:

написать скрипт, который выводит слово "тест"
может быть запущен ровно 1 раз в сутки
может быть запущен в 17-ти минутный интервал времени, начиная от рандомного

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


Все правильно понимаю?

Страниц (141): В начало « ... 11 12 13 14 [15] 16 17 18 19 ... » В конец
Powered by PHP  Powered By MySQL  Powered by Nginx  Valid CSS  RSS

 
Powered by ExBB FM 1.0 RC1. InvisionExBB