PHP.SU

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

Страниц (31): В начало « ... 8 9 10 11 [12] 13 14 15 16 ... » В конец

> Найдено сообщений: 454
dubasua Отправлено: 05 Февраля, 2013 - 13:15:23 • Тема: Помогите рассудить • Форум: Вопросы новичков

Ответов: 5
Просмотров: 156
armancho7777777, спасибо за поддержку.
dubasua Отправлено: 05 Февраля, 2013 - 13:08:48 • Тема: Помогите рассудить • Форум: Вопросы новичков

Ответов: 5
Просмотров: 156
Вот так наверное правильнее всего будет, но все же я написал триггер который автоматом снимает с публикации все вложенные записи, отталкиваюсь от работы ОС на компе, если скрыть или закрыть доступ к директории, вложенные файлы становятся не доступными.
dubasua Отправлено: 05 Февраля, 2013 - 12:47:48 • Тема: Помогите рассудить • Форум: Вопросы новичков

Ответов: 5
Просмотров: 156
Доброго времени суток.
У меня есть спор с неким разработчиком, помогите пожалуйста рассудить.
К примеру есть CMS, как и любой другой CMS у нее есть функция публикации и снятия с публикации (не удаления) категорий. Вопрос в том что при выполнении этой функции должно произойти с прилегающими к ней материалами? Один из нас говорит что де активировать только одну категорию, а все остальные записи пусть будут видны, то есть убрать с публикации только одну страницу, а второй говорит, что снимать с публикации нужно и все записи которые в нее вложены, то есть если снять с публикации корневую категорию, то на сайте не останется ни одной видимой записи.
Как правильно поступать в такой ситуации???
dubasua Отправлено: 12 Января, 2013 - 12:30:32 • Тема: Слить два массива • Форум: Вопросы новичков

Ответов: 7
Просмотров: 260
Вот что у меня получилось
PHP:
скопировать код в буфер обмена
  1.  
  2. private function mergeArrs($arr1,$arr2) {
  3.                
  4.         if (is_array(&$arr1)){
  5.                        
  6.                 foreach($arr1 as $key=>$val){
  7.                                
  8.                         if (is_array($val) AND isset($arr2[$key]) AND is_array($arr2[$key])){
  9.                                 $this->mergeArrs($val,$arr2[$key]);
  10.                                 continue;
  11.                         }
  12.                                
  13.                         if (isset($arr2[$key]))
  14.                                 $arr1[$key] = $arr2[$key];
  15.                                                        
  16.                 }// end foreach
  17.                        
  18.         return $arr1;
  19.                        
  20. }
  21.                
  22.         }
  23.  

(Добавление)
Погаричился..... Не работатет.
(Добавление)
Подправил, вот так работает
PHP:
скопировать код в буфер обмена
  1.  
  2. private function mergeArrs(&$arr1,$arr2) {
  3.                
  4. if (is_array($arr1)){
  5.                
  6.         foreach($arr1 as $key=>&$val){
  7.                                
  8.                 if (is_array($val) AND isset($arr2[$key]) AND is_array($arr2[$key])){
  9.                         $val = $this->mergeArrs($val,$arr2[$key]);
  10.                         continue;
  11.                 }
  12.                                
  13.                 if (isset($arr2[$key]))
  14.                         $arr1[$key] = $arr2[$key];
  15.                                                        
  16.                 }// end foreach
  17.                        
  18.                 return $arr1;
  19.                        
  20.         }
  21.                
  22. }
  23.  
  24.  
  25.  
  26.  
dubasua Отправлено: 12 Января, 2013 - 12:15:18 • Тема: Слить два массива • Форум: Вопросы новичков

Ответов: 7
Просмотров: 260
dubasua пишет:
/* и еще условие, ключи 'bond' и '34' динамические,
то есть они неизвестные
*/
dubasua Отправлено: 12 Января, 2013 - 12:07:49 • Тема: Слить два массива • Форум: Вопросы новичков

Ответов: 7
Просмотров: 260
Доброго времени суток.
Нужно слить два многомерный массива так: если ключи совпадают, то нужно перезаписать из второго. Например
PHP:
скопировать код в буфер обмена
  1. $arr1['bond'][34] = 'enyVal';
  2. $arr1['bond'][35] = 'enyVal';
  3.  
  4. $arr2['bond'][34] = 'myVal';
  5.  
  6. //на выходе нужно получить
  7. $arr1['bond'][34] = 'myVal';
  8. $arr1['bond'][35] = 'enyVal';
  9.  
  10. //array_merge_recursive - не подойдет
  11.  
  12. /* и еще условие, ключи 'bond' и '34' динамические,
  13. то есть они неизвестные
  14. */


Уже пол часа голову ломаю...
dubasua Отправлено: 08 Января, 2013 - 21:58:53 • Тема: PHP>>>>>m3u • Форум: Вопросы новичков

Ответов: 16
Просмотров: 1916
Это значит что файл нужно сохранить без BOM.
dubasua Отправлено: 08 Января, 2013 - 21:45:48 • Тема: PHP>>>>>m3u • Форум: Вопросы новичков

Ответов: 16
Просмотров: 1916
Какую ошибку? (Warning cannot modify......)?
dubasua Отправлено: 08 Января, 2013 - 21:33:19 • Тема: Почему не любят Попова? • Форум: Прочее

Ответов: 10
Просмотров: 103
Ну а чьи видео-курсы вы тогда порекомендуете? Так что бы на русском языке, не знаю как остальным, но мне в видео формате более доступней чем в книгах.
dubasua Отправлено: 06 Января, 2013 - 15:13:17 • Тема: Создать один sql запрос MySql • Форум: Работа с СУБД

Ответов: 0
Просмотров: 488
Доброго времени суток. Всех с праздником!
Есть три связанных запроса к БД MySql
CODE (SQL):
скопировать код в буфер обмена
  1. SELECT pid INTO @pid FROM kh_alias WHERE id = 5;
  2. SELECT t.IN,t.out INTO @IN,@out FROM kh_tree_nd t WHERE id = @pid;
  3. SELECT p.id FROM kh_tree_nd p  WHERE p.IN <= @IN AND p.out >= @out ORDER BY p.IN;

Помогите составить один запрос, так обрабатывать не хотит
PHP:
скопировать код в буфер обмена
  1.  
  2. $sql = "SELECT pid into @pid FROM kh_alias WHERE id = 5;
  3. SELECT t.in,t.out into @in,@out FROM kh_tree_nd t WHERE id = @pid;
  4. SELECT p.id FROM kh_tree_nd p  WHERE p.in <= @in AND p.out >= @out ORDER BY p.in";
  5.  
  6. $sth = $dbh->prepare($sql);
  7. $sth->execute();
  8.  
  9.  

(Добавление)
Сделал вот так
CODE (SQL):
скопировать код в буфер обмена
  1. SELECT p.id
  2.     FROM kh_tree_nd p  
  3.        WHERE
  4.           p.IN <= (SELECT t.IN  FROM kh_tree_nd t WHERE id = (SELECT pid FROM kh_alias WHERE id = 6))
  5.         AND
  6.           p.out >=(SELECT t.out  FROM kh_tree_nd t WHERE id = (SELECT pid FROM kh_alias WHERE id = 6))
  7.   ORDER BY p.IN
dubasua Отправлено: 31 Декабря, 2012 - 16:13:28 • Тема: Почему так нельзя • Форум: Вопросы новичков

Ответов: 15
Просмотров: 409
А это идея Улыбка
С новым годом!
dubasua Отправлено: 31 Декабря, 2012 - 15:27:27 • Тема: Почему так нельзя • Форум: Вопросы новичков

Ответов: 15
Просмотров: 409
Я просто не вижу смысл создавать объект. Не знаю как объяснить, ну например в квартире много комнат а пол один, для комнат можно создавать объекты потому как их много(у них разное количество окон, дверей), ($room = new Room;)а пол у них один на всех, и свойство $room->floor всегда и у всех будет одно и тоже значение, а таких вещей как пол (то что одно для всех) еще десятка два, так зачем их таскать за объектом, или зачем из этого делать объект, ведь он только для чтения, это как константа. его нужно считать один раз и все, тесть зачем перегружать? Это конечно не терминология языка, но я вижу примерно в таком свете.
(Добавление)
armancho7777777 пишет:
Только в том случае, если Loader::getFullSpace('MySpace') возвращает объект.

Так работает.
dubasua Отправлено: 31 Декабря, 2012 - 14:43:17 • Тема: Почему так нельзя • Форум: Вопросы новичков

Ответов: 15
Просмотров: 409
Сам по себе класс статический, он не возвращает объект
PHP:
скопировать код в буфер обмена
  1. private function __construct () {}

(Добавление)
Хотя возможно стоит пересмотреть политику статических классов......
dubasua Отправлено: 31 Декабря, 2012 - 14:38:20 • Тема: Почему так нельзя • Форум: Вопросы новичков

Ответов: 15
Просмотров: 409
armancho7777777 пишет:
Loader::getFullSpace('MySpace')->mymethod();

Fatal error: Call to a member function mymethod() on a non-object in ...
dubasua Отправлено: 31 Декабря, 2012 - 14:36:01 • Тема: Почему так нельзя • Форум: Вопросы новичков

Ответов: 15
Просмотров: 409
LIME пишет:
что возвращает Loader::getFullSpace('MySpace')
?


Есть несколько директорий с класами. Напрмер Loader::getFullSpace('Front') возвращяет Controllers\Kernel\Front, и паралельно подгружает этот файл если он не подключен

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

 
Powered by ExBB FM 1.0 RC1. InvisionExBB