PHP.SU

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

Страниц (31): [1] 2 3 4 5 6 7 8 9 ... » В конец

> Найдено сообщений: 455
jonston Отправлено: 28 Апреля, 2020 - 13:58:29 • Тема: Разбиение проектов на группы с учетом валюты • Форум: Работа с СУБД

Ответов: 2
Просмотров: 1552
Мелкий пишет:
Если предположить что основное условие у вас записано верно...

CODE (SQL):
скопировать код в буфер обмена
  1. SELECT sum(IF(currency = 'RUB', budget / 2.8, budget) <= 1000),
  2. sum(IF(currency = 'RUB', budget / 2.8, budget) > 1000)
  3. FROM projects


А если групп может быть больше и могут быть еще дополнительные запросы типа > 500 но < 1000?И как оно считает если бюджет IS NULL?
jonston Отправлено: 28 Апреля, 2020 - 04:08:45 • Тема: Разбиение проектов на группы с учетом валюты • Форум: Работа с СУБД

Ответов: 2
Просмотров: 1552
Доброго времени суток.Есть такая задача.Есть таблица проектов с колонками id, name, currency, budget.Колонки budget и currency это цена заказа и валюта.Необходимо выбрать группы до 1000 и свыше 1000 гривен (UAH) с учетом валюты.Валюта либо RUB либо UAH.У меня получился вот такой запрос, но подозреваю, что можно оптимизировать.
CODE (SQL):
скопировать код в буфер обмена
  1.  
  2. SELECT
  3.           (SELECT COUNT(*) FROM projects WHERE IF(currency = 'RUB', budget / 2.8, budget) <= 1000) AS g1,
  4.           (SELECT COUNT(*) FROM projects WHERE IF(currency = 'RUB', budget / 2.8, budget) > 1000) AS g2,
  5.           FROM projects
  6.  

Есть идеи?
jonston Отправлено: 17 Августа, 2018 - 18:27:12 • Тема: настройка .htaccess • Форум: Вопросы новичков

Ответов: 8
Просмотров: 387
miketomlin пишет:
А что у разрабов по этому поводу написано? Если повлечет, то фрэймворк – полное оно.

И еще раз. Вы должны делать настройки, исходя из решаемой задачи, а не возникшей проблемы. На форуме такие вопросы задавать – себя не уважать, потому что кроме вас на них все равно никто не ответит.


Я не родился с идеальными знаниями настроек сервера апаче.Я получаю опыт.
jonston Отправлено: 17 Августа, 2018 - 16:15:10 • Тема: настройка .htaccess • Форум: Вопросы новичков

Ответов: 8
Просмотров: 387
miketomlin пишет:
Вот и решайте. И от зацикливания на трэйлинг слешах еще это добавьте:
CODE (text):
скопировать код в буфер обмена
  1.  
  2. <IfModule mod_dir.c>
  3. DirectorySlash Off
  4. </IfModule>
  5.  

Если конечно апач не будет «активно сопротивляться».
(Добавление)
Либо продолжайте чистку:
CODE (text):
скопировать код в буфер обмена
  1.  
  2.     RewriteCond %{REQUEST_URI} (.+)/$
  3.     RewriteRule ^ %1 [L,R=301]
  4.  


Благодарю великодушно!Закомментировал строку dв последнем правиле все заработало!Но есть вопрос.Ведь не зря же разработчики туда это написали?не повлечет за собой ли это каких либо негативных последствий?Например угроза безопасности либо неправильная работа фреймворка?
jonston Отправлено: 17 Августа, 2018 - 15:48:32 • Тема: настройка .htaccess • Форум: Вопросы новичков

Ответов: 8
Просмотров: 387
miketomlin пишет:
А кто вас заставлял везде использовать это:
CODE (text):
скопировать код в буфер обмена
  1. RewriteCond %{REQUEST_FILENAME} !-d


Вот апач и «распоясался», раз его впрямую к этому принуждают Ну ты попал


Это дефолтный .htaccess.Меня никто ничего не заставляет.Мне необходимо решить проблему.
jonston Отправлено: 17 Августа, 2018 - 15:22:11 • Тема: настройка .htaccess • Форум: Вопросы новичков

Ответов: 8
Просмотров: 387
miketomlin пишет:
Показанный файл – это заглушка для дураков. Вы лучше покажите .htaccess для паблика и, может быть, для admin, если есть. У меня никогда не возникало такой проблемы, чтобы обращение к папке не уходило во фронт.

И о каком index.php идет речь, public/admin/index.php или public/index.php?


Благодарю за ответ.Речь идет об public/index.php.
.htaccess в public
CODE (htmlphp):
скопировать код в буфер обмена
  1.  
  2. <IfModule mod_rewrite.c>
  3.     <IfModule mod_negotiation.c>
  4.         Options -MultiViews -Indexes
  5.     </IfModule>
  6.  
  7.     RewriteEngine On
  8.  
  9.     # Handle Authorization Header
  10.     RewriteCond %{HTTP:Authorization} .
  11.     RewriteRule .* - [E=HTTP_AUTHORIZATION:%{HTTP:Authorization}]
  12.  
  13.     # Redirect Trailing Slashes If Not A Folder...
  14.     RewriteCond %{REQUEST_FILENAME} !-d
  15.     RewriteCond %{REQUEST_URI} (.+)/$
  16.     RewriteRule ^ %1 [L,R=301]
  17.  
  18.     # Handle Front Controller...
  19.     RewriteCond %{REQUEST_FILENAME} !-d
  20.     RewriteCond %{REQUEST_FILENAME} !-f
  21.     RewriteRule ^ index.php [L]
  22. </IfModule>
  23.  

(Добавление)
miketomlin пишет:
Показанный файл – это заглушка для дураков. Вы лучше покажите .htaccess для паблика и, может быть, для admin, если есть. У меня никогда не возникало такой проблемы, чтобы обращение к папке не уходило во фронт.

И о каком index.php идет речь, public/admin/index.php или public/index.php?


В том и дело, что я обращаюсь к контроллеру admin а апач перехватывает запрос и думает что я запрашиваю содержимое public/admin
jonston Отправлено: 17 Августа, 2018 - 14:36:30 • Тема: настройка .htaccess • Форум: Вопросы новичков

Ответов: 8
Просмотров: 387
Приветствую!Фреймворк ларавел.Все запросы отсылаются к папке public.Вот содержимое файла .htaccess
CODE (htmlphp):
скопировать код в буфер обмена
  1.  
  2. <IfModule mod_rewrite.c>
  3.     RewriteEngine On
  4.  
  5.     RewriteRule ^(.*)$ public/$1 [L]
  6. </IfModule>
  7.  


В папке паблик лежит дирректория admin.Так вот проблема в том, что при обращении к роуту admin он обращается к папке public/admin.Что нужно прописать, что бы при обращении к папке запрашивался index.php а не содержимое папки?заранее благодарю!
jonston Отправлено: 21 Мая, 2018 - 20:40:47 • Тема: Кодировка pdf файла • Форум: Вопросы новичков

Ответов: 1
Просмотров: 165
Здравствуйте.Читаю pdf файлс помощью библиотеки https://www[dot]pdfparser[dot]org но получается вот такая хрень ãàíü íàö³îíàëüíî¿ áåçïåêè Óêðà¿íè, ïðàâ òà ñâîáîä ëþäèíè ³ ãðîìàäÿíèíà, âëàñíîñò³, äîâê³ëëÿ, ãðî-
ìàäñüêîãî ïîðÿäêó, ³íøèõ îá’ºêò³â êðèì³íàëüíî-ïðàâîâî¿ îõîðîíè
Как вывести в нормальной кодировке?

Вот это не работает:
PHP:
скопировать код в буфер обмена
  1.  
  2. $text = 'мадського порядку, інших об’єктів кримінально-правової охорони.';
  3. $convertedText = mb_convert_encoding($text, 'utf-8', mb_detect_encoding($text));
  4.  
jonston Отправлено: 31 Января, 2018 - 08:16:03 • Тема: Помогите разобраться • Форум: Вопросы новичков

Ответов: 3
Просмотров: 249
loleg пишет:
Почему работает такой код:
CODE (htmlphp):
скопировать код в буфер обмена
  1. class My {
  2.     public static $prop = 'prop value';
  3. }
  4. $obj = new My;
  5. var_dump($obj); //object(My)#1 (0) {}
  6. $obj1 = new $obj;
  7. var_dump($obj1); // object(My)#2 (0) {}
  8. print $obj::$prop; // prop value
  9.  


Потому, что это статическое свойство.Оно доступно только в статическом контексте, то есть в контексте самого класса, а не экземпляра класса.
jonston Отправлено: 31 Января, 2018 - 08:11:06 • Тема: Упростить код • Форум: Вопросы новичков

Ответов: 4
Просмотров: 265
singmen пишет:
а можно увидеть как оно будет выглядеть?


PHP:
скопировать код в буфер обмена
  1.  
  2. function fetchSum($name, $user){
  3.     return (mysql_fetch_assoc(mysql_query("SELECT SUM(summ) as summ FROM money WHERE cat = '$name' AND user = '$user'")))['summ'];
  4. }
  5.  
  6. $user = $MyPass['login'];
  7. $sum1 = fetchSum('ub', $user);
  8. $sum2 = fetchSum('dox', $user);
  9. $sum3 = fetchSum('nak', $user);
  10.  
  11. echo "<h2 class=\"h2\">Всего доход за весь период ".$sum2." из них потрачено ".$sum1." и отложено ".$sum3.", остаток ".$sum4."</h2>";
  12.  


Делаешь обертку для получения суммы и передаешь туда переменные.Функции mysql которые используются в коде устарели.Используй PDO.
jonston Отправлено: 11 Января, 2018 - 19:31:57 • Тема: Равномерная пропорция. • Форум: Вопросы новичков

Ответов: 13
Просмотров: 538
Строитель пишет:
jonston пишет:
1. Берем рандом от 0 до 1.Получается скажем 0.7
А если получаем 0.8 ? Или 0.9 ? Последний мой пример из предыдущего поста тоже не подходит?


Спасибо за подсказку.Я уже нашел решение.
jonston Отправлено: 11 Января, 2018 - 17:36:42 • Тема: Равномерная пропорция. • Форум: Вопросы новичков

Ответов: 13
Просмотров: 538
Строитель пишет:
А как тогда все эти части "вместить" в единицу? К примеру, 1 / 4 = 0.25; Если одна из случайно сгенерированных четырех четвертей получит значение 0.98, то для второй четверти подойдёт 0.01 или 0.02. А вот для четвёртой (последней) четверти значения закончились, т.к. диапазон 1 исчерпан.


Вот опишу не правильный алгоритм.Вернее он правильный но не совсем.
1. Берем рандом от 0 до 1.Получается скажем 0.7.Остаток 0.3.
2. От остатка берем еще рандом от 0 до 0.3.Получается скажем 0.1.
3. Повторяем операцию до нужного количества частей.

При таком алгоритме у предыдущей части шанс быть больше последующей больше.
То есть насколько я понимаю, нужно после всех операций перемешать массив, что бы не разброс был равномерным.Ну это я так думаю.
jonston Отправлено: 11 Января, 2018 - 12:37:28 • Тема: Равномерная пропорция. • Форум: Вопросы новичков

Ответов: 13
Просмотров: 538
Sail пишет:
jonston, напомните, пожалуйста, что есть "равномерная" пропорция?
Помню про геометрическую, арифметическую, гармоническую... а вот равномерная?
Из первого сообщения понятно, что "случайная" - это просто N случайных величин, сумма которых === 1, чего не сказать о "равномерной" (и примера для ясности нет...)
Закатив глазки

Подразумеваю то, что для каждой части есть равный шанс получить тот или иной процент.
jonston Отправлено: 10 Января, 2018 - 19:51:13 • Тема: Равномерная пропорция. • Форум: Вопросы новичков

Ответов: 13
Просмотров: 538
Ваш алгоритм не правильно работает.
jonston Отправлено: 10 Января, 2018 - 19:22:54 • Тема: Равномерная пропорция. • Форум: Вопросы новичков

Ответов: 13
Просмотров: 538
Строитель пишет:
jonston, вероятно так?

Наверное я не правильно выразился.В вашем примере вы не даете возможность части быть выше 1/3.
Вот мой вариант.Выношу на суд критики.
PHP:
скопировать код в буфер обмена
  1.  
  2. $segments = [];
  3. $length = 5;
  4. $start = 1000;
  5. $rest = $start;
  6.  
  7. for($i = 0; $i < $length; $i++){
  8.     $rand = ($i < $length - 1) ?  mt_rand(0, $rest) : $rest;
  9.     $rest -= $rand;
  10.     $segments[$i] = $rand/$start;
  11. }
  12. shuffle($segments);
  13. print_r(array_sum($segments));
  14.  

Страниц (31): [1] 2 3 4 5 6 7 8 9 ... » В конец
Powered by PHP  Powered By MySQL  Powered by Nginx  Valid CSS  RSS

 
Powered by ExBB FM 1.0 RC1. InvisionExBB