PHP.SU

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

Страниц (3): [1] 2 3 »

> Найдено сообщений: 31
Anagar Отправлено: 31 Марта, 2016 - 22:11:59 • Тема: Планировщик. OpenServer. • Форум: Программирование на PHP

Ответов: 2
Просмотров: 1254
Помогите пожалуйста сообразить как правильно писать выполнение задания cron.
Как пишу я:
Время: /1 * * * * (каждую минуту)
Выполнить: %progdir%\modules\php\%phpdriver%\php-win.exe -c %progdir%\userdata\temp\config\php.ini -q -f %sitedir%\redneck\crone.php

Если что open server у меня располагается по адресу: C:\OpenServer
Скрипт который нужно выполнить лежит в: C:\OpenServer\domains\redneck
Содержимое скрипта:
<?php
session_start();
include("db_reg.php");
$e_login = $_SESSION['l_hp'];
$e_password = $_SESSION['p_hp'];
$STH = $DBH->query("SELECT * FROM resours WHERE login='$e_login' AND password='$e_password'");
$STH->setFetchMode(PDO::FETCH_ASSOC);
$rez = $STH->fetch();
$bar = $rez['bar'] + 1;
$STH = $DBH->prepare("UPDATE resours SET bar='".$bar."' WHERE login='$e_login' AND password='$e_password'");
$STH->execute();
?>

Логи:
31 Mar 18:43:20 Start nnCron
31 Mar 18:43:20 Load cron.tab

Сам по себе, с браузера, скрипт работает. Но в кроне нет. Что я делаю не так, подскажите пожалуйста!?
Anagar Отправлено: 07 Марта, 2016 - 12:04:02 • Тема: Дамп Mysql • Форум: Программирование на PHP

Ответов: 5
Просмотров: 748
Viper пишет:
Anagar пишет:
Че?
не чё, а каким образом дамп заливаете? Логи сервера смотреть не судьба?

Anagar пишет:
Весь дамп прислать не могу
а я и не просил.



Логи:
108 Query CREATE TABLE IF NOT EXISTS `ps_address` (
`id_address` int(10) unsigned NOT NULL,
`id_country` int(10) unsigned NOT NULL,
`id_state` int(10) unsigned DEFAULT NULL,
`id_customer` int(10) unsigned NOT NULL DEFAULT '0',
`id_manufacturer` int(10) unsigned NOT NULL DEFAULT '0',
`id_supplier` int(10) unsigned NOT NULL DEFAULT '0',
`id_warehouse` int(10) unsigned NOT NULL DEFAULT '0',
`alias` varchar(32) NOT NULL,
`company` varchar(64) DEFAULT NULL,
`lastname` varchar(32) NOT NULL,
`firstname` varchar(32) NOT NULL,
`address1` varchar(128) NOT NULL,
`address2` varchar(128) DEFAULT NULL,
`postcode` varchar(12) DEFAULT NULL,
`city` varchar(64) NOT NULL,
`other` text,
`phone` varchar(32) DEFAULT NULL,
`phone_mobile` varchar(32) DEFAULT NULL,
`vat_number` varchar(32) DEFAULT NULL,
`dni` varchar(16) DEFAULT NULL,
`date_add` datetime NOT NULL,
`date_upd` datetime NOT NULL,
`active` tinyint(1) unsigned NOT NULL DEFAULT '1',
`deleted` tinyint(1) unsigned NOT NULL DEFAULT '0'
) ENGINE=InnoDB DEFAULT CHARSET=utf8

Заливаю через импорт. В ручную через sql не получается - браузер обваливается от 250 мб вставки кода.
Anagar Отправлено: 06 Марта, 2016 - 20:57:26 • Тема: Кому нужна РАБОТА?!! • Форум: FreeLance

Ответов: 1
Просмотров: 646
В общем один человек нанял на работу перепилить дизайн. У меня появилось неоткладное дело. Цена примерно 3500-5000 грн. Но вы ее и сами можете обсудить с заказчиком. Кому слить? Ничего трудно, просто по своему вкусу полностью переделать дизайн на современный. Хочу еще предупредить что там база на 36 Гб в zip.)) Пишите в skype Anagar333.
Anagar Отправлено: 06 Марта, 2016 - 20:04:21 • Тема: Дамп Mysql • Форум: Программирование на PHP

Ответов: 5
Просмотров: 748
Viper пишет:
Приведите сам запрос на LOAD + логи? + mysqlimport пробовали?


Че?
(Добавление)
Viper пишет:
Приведите сам запрос на LOAD + логи? + mysqlimport пробовали?


Весь дамп прислать не могу, там он 250 мг.)) Архив 30. Его и гружу. Главное если этоу часть кода через sql запрос кидать, то все ок, создаются, а дампом нет...
Anagar Отправлено: 06 Марта, 2016 - 17:11:29 • Тема: Дамп Mysql • Форум: Программирование на PHP

Ответов: 5
Просмотров: 748
Загружаю zip дамп в локальную базу Mysql.

# TC`ps_address`utf8_general_ci ; CREATE TABLE `ps_address` ( `id_address` int(10) unsigned NOT NULL AUTO_INCREMENT, `id_country` int(10) unsigned NOT NULL, `id_state` int(10) unsigned DEFAULT NULL, `id_customer` int(10) unsigned NOT NULL DEFAULT '0', `id_manufacturer` int(10) unsigned NOT NULL DEFAULT '0', `id_supplier` int(10) unsigned NOT NULL DEFAULT '0', `id_warehouse` int(10) unsigned NOT NULL DEFAULT '0', `alias` varchar(32) NOT NULL, `company` varchar(64) DEFAULT NULL, `lastname` varchar(32) NOT NULL, `firstname` varchar(32) NOT NULL, `address1` varchar(128) NOT NULL, `address2` varchar(128) DEFAULT NULL, `postcode` varchar(12) DEFAULT NULL, `city` varchar(64) NOT NULL, `other` text, `phone` varchar(32) DEFAULT NULL, `phone_mobile` varchar(32) DEFAULT NULL, `vat_number` varchar(32) DEFAULT NULL, `dni` varchar(16) DEFAULT NULL, `date_add` datetime NOT NULL, `date_upd` datetime NOT NULL, `active` tinyint(1) unsigned NOT NULL DEFAULT [...]

Ответ MySQL: Документация



Не пойму на что он жалуется... Че не так то. Главное первые две таблицы грузятся, а потом эта хернь.
Anagar Отправлено: 26 Февраля, 2016 - 01:02:21 • Тема: Cron и прогрессия рандома • Форум: Программирование на PHP

Ответов: 4
Просмотров: 662
DelphinPRO пишет:
1. Скрипты для крона должны лежать в директории, недоступной из интернета.

CODE (text):
скопировать код в буфер обмена
  1. domain.com
  2.   public_html -> тут ваш сайт, причем только index.php и статика
  3.   application -> тут весь код движка сайта


Вот и размещайте скрипты для крона где угодно, только не в public_html

Если вы не можете так сделать, создайте отдельную директорию для крон-скриптов и закройте ей доступ в .htaccess (deny from all)

2. Можно почитать мануал http://open-server[dot]ru/docs/#planirovshhik или поискать на его форуме. Вопрос там не раз обсуждался.
В конце-концов можете использовать хоть виндовый планировщик.


Ок, про крон файлы я понял. А вот на счет движка вне публик не совсем. Как мне может навредить размещение движка в публике? Он же пользователю отправлен не будет.)) И спс за ответ.)
Anagar Отправлено: 24 Февраля, 2016 - 17:37:44 • Тема: Cron и прогрессия рандома • Форум: Программирование на PHP

Ответов: 4
Просмотров: 662
Ап((
Anagar Отправлено: 22 Февраля, 2016 - 21:46:42 • Тема: Cron и прогрессия рандома • Форум: Программирование на PHP

Ответов: 4
Просмотров: 662
Вообщем есть 3 вопроса:

1. Я еще нуб в cron запросах. Вот допустим если я создам страницу с некими командами для крона, типа "обратись в базу и измени то то и то то" и укажу в настройках крона путь к этому файлу. Если к этой странице обратится обыкновенный пользователь то он тоже совершит изменения в бд? Если да, то как сделать проверку на то cron это или хрен знает кто?!

2. Как сделать cron на хостинге я в курсе, но как его сделать в локальном сервере "Open Server" нет. Как его сделать?

3. Я все пробовал сделать бесконечную прогрессию роста вероятности или ее падение, не получалось.
Вот что пробовал:
$v1 = 10; // число с формы.
$v2 = 5; // число с формы.
$v3 = $v1 / $v2; // разница между числами.
if (mt_rand(1, (($v3 * 50) * 2)) >= 50){
v4 = ""Вероятность себя оправдала!;
}
$ver = 100 - (100 / ($v3 * 2));
echo "вероятность = " . $ver;
echo $v4;

Суть задачи в том что бы при увеличении разницы (v3) увеличивалась вероятность выполнения условия, даже если разница будет 10000 или 100000000, и т.д., что бы она была в таком случае максимально приближенная к 100%. и соответственно при уменьшении приближена к 0%, но никогда не была ровна 0% или 100%. С бесконечным увеличением вроде бы как все ок в этом скрипте, но с уменьшением проблема, так как при разнице (v3) меньше чем 0.5 вероятность выполнения if приравнивается ровно к нулю. Есть какие то идеи у кого то? Буду очень благодарен.
Anagar Отправлено: 22 Февраля, 2016 - 20:45:51 • Тема: if-switch • Форум: Программирование на PHP

Ответов: 11
Просмотров: 1334
Мелкий пишет:
Латынь фигня.
Что будете делать с такой строкой:
$info = "It строка..";
Что с ней станет после нарезки по байтам, а не символам?


в моем случае я перебираю строку по букве циклом, и в зависимости от того какая буква делаю дело.)) Так что проблем не возникнет.)
(Добавление)
esterio пишет:
Anagar
В правильности использования функций. mb_* функции созданы как раз для работы с многобайтными строками. А если завтра будет не кирилица, а скажем латынь у которей например 4 байта. Что будете тогда делать?

Ух уж этот ПХП, что не напиши все работает


Я прислушался к вашему совету, по отталкиванию от кода клавиши с буквой, мне как раз так удобнее всего. Так что не то не то уже не нужно. Но я понял, перебирать буквы лучше mb.
(Добавление)
DelphinPRO пишет:
Anagar пишет:
Все, проблему решил, с русскими помогло это:

$info = "строка..";
str_split($info, 2);


Говнокодъ.

Прислушайтесь к советам.
(Добавление)
накидал тут примерчик поаккуратнее

PHP:
скопировать код в буфер обмена
  1.  
  2. $symbols = preg_split('//u', 'abcdefghijklmnopqrstuvwxyz', -1, PREG_SPLIT_NO_EMPTY);
  3. $symbolsCyr = preg_split('//u', 'абвгдеёжзийклмнопрстуфхцчшщъыьэюя', -1, PREG_SPLIT_NO_EMPTY);
  4.  
  5. $symbols = array_reverse($symbols);
  6. $symbolsCyr = array_reverse($symbolsCyr);
  7.  
  8. // $info = строка с формы.     
  9. $total = 0;
  10. if(mb_strlen($info) > 0) {
  11.         $rgInfo = preg_split('//u', $info, -1, PREG_SPLIT_NO_EMPTY);
  12.         $counter = 0;
  13.         while($char = $grInfo[$counter]) {
  14.                 if (array_key_exists($char, $symbols)) {
  15.                         $total += ($symbols[$char] + 1);
  16.                 }
  17.                 if (array_key_exists($char, $symbolsCyr)) {
  18.                         $total += ($symbolsCyr[$char] + 1);
  19.                 }
  20.                 $counter++;
  21.         }
  22. }
  23.  
  24. echo $total;

(Добавление)
Чуть сократил
PHP:
скопировать код в буфер обмена
  1. $alphabet1 = 'abcdefghijklmnopqrstuvwxyz';
  2. $alphabet2 = 'абвгдеёжзийклмнопрстуфхцчшщъыьэюя';
  3. $allSymbols = array_merge(
  4.         array_reverse(preg_split('//u', $alphabet1, -1, PREG_SPLIT_NO_EMPTY)),
  5.         array_reverse(preg_split('//u', $alphabet2, -1, PREG_SPLIT_NO_EMPTY))
  6. );
  7.  
  8. // $info = строка с формы.     
  9. if(mb_strlen($info) > 0) {
  10.         $rgInfo = preg_split('//u', $info, -1, PREG_SPLIT_NO_EMPTY);
  11.         $counter = 0;
  12.         while($char = $rgInfo[$counter++]) {
  13.                 if (array_key_exists($char, $allSymbols)) {
  14.                         $total += ($allSymbols[$char] + 1);
  15.                 }
  16.         }
  17. }
  18.  
  19. echo $total;


спс за труды, может так и лучше, воспользуюсь..)
Anagar Отправлено: 18 Февраля, 2016 - 16:30:28 • Тема: if-switch • Форум: Программирование на PHP

Ответов: 11
Просмотров: 1334
esterio пишет:
йопересете. вот еще раз mb_split вместо вот этого
Anagar пишет:
str_split($info, 2);


А зачем? Если "это" мне помогло! В чем разница выполнения?
Anagar Отправлено: 18 Февраля, 2016 - 15:25:46 • Тема: if-switch • Форум: Программирование на PHP

Ответов: 11
Просмотров: 1334
Viper

Все, проблему решил, с русскими помогло это:

$info = "строка..";
str_split($info, 2);

Спс за наводку.
Anagar Отправлено: 18 Февраля, 2016 - 14:18:29 • Тема: if-switch • Форум: Программирование на PHP

Ответов: 11
Просмотров: 1334
Viper пишет:
Ёбин-бобин...

Anagar пишет:
не хотят работать с русскими буквами полученными с массива таким образом как в моем случае?
кодировка какая?

Да переделайте же в массив соответствий и через if с in_array проверяйте и делайте операции.


Кодировка UTF-8 - без BOM. В како массив переделать то?
(Добавление)
IllusionMH пишет:
Anagar, а сколько байт занимает расская буква "а"? Подмигивание Вы читаете по одному байту, а нужно использовать что-то типа mb_split или как в примере здесь. (и набор if/switch кейсов) лучше заменить на массив (либо вообще на разницу между кодами символов а и текущего)


Если не трудно, маленький примерчик приведите пж.) А то я пробвал, чет не очень получается.)
Anagar Отправлено: 17 Февраля, 2016 - 20:56:08 • Тема: if-switch • Форум: Программирование на PHP

Ответов: 11
Просмотров: 1334
// $info = строка с формы.
if(strlen($info) > 0) {
while($info2 = $info[$info3]) {
if ($info2 == "а"){$total += 1;}
elseif ($info2 == "б"){$total += 2;}
elseif ($info2 == "в"){$total += 3;}
elseif ($info2 == "г"){$total += 4;}
elseif ($info2 == "д"){$total += 5;}
elseif ($info2 == "е"){$total += 6;}
elseif ($info2 == "ё"){$total += 7;}
elseif ($info2 == "ж"){$total += 8;}
elseif ($info2 == "з"){$total += 9;}
elseif ($info2 == "и"){$total += 10;}
elseif ($info2 == "й"){$total += 11;}
elseif ($info2 == "к"){$total += 12;}
elseif ($info2 == "л"){$total += 13;}
elseif ($info2 == "м"){$total += 14;}
elseif ($info2 == "н"){$total += 15;}
elseif ($info2 == "о"){$total += 16;}
elseif ($info2 == "п"){$total += 17;}
elseif ($info2 == "р"){$total += 18;}
elseif ($info2 == "с"){$total += 19;}
elseif ($info2 == "т"){$total += 20;}
elseif ($info2 == "у"){$total += 21;}
elseif ($info2 == "ф"){$total += 22;}
elseif ($info2 == "х"){$total += 23;}
elseif ($info2 == "ц"){$total += 24;}
elseif ($info2 == "ч"){$total += 25;}
elseif ($info2 == "ш"){$total += 26;}
elseif ($info2 == "щ"){$total += 27;}
elseif ($info2 == "ъ"){$total += 28;}
elseif ($info2 == "ы"){$total += 29;}
elseif ($info2 == "ь"){$total += 30;}
elseif ($info2 == "э"){$total += 31;}
elseif ($info2 == "ю"){$total += 32;}
elseif ($info2 == "я"){$total += 33;}
switch ($info2){
case a: $total += 1; break;
case b: $total += 2; break;
case c: $total += 3; break;
case d: $total += 4; break;
case e: $total += 5; break;
case f: $total += 6; break;
case g: $total += 7; break;
case h: $total += 8; break;
case i: $total += 9; break;
case j: $total += 10; break;
case k: $total += 11; break;
case l: $total += 12; break;
case m: $total += 13; break;
case n: $total += 14; break;
case o: $total += 15; break;
case p: $total += 16; break;
case q: $total += 17; break;
case r: $total += 18; break;
case s: $total += 19; break;
case t: $total += 20; break;
case u: $total += 21; break;
case v: $total += 22; break;
case w: $total += 23; break;
case x: $total += 24; break;
case y: $total += 25; break;
case z: $total += 26; break;
}
$info3++;
}
}
echo $total;

Проблема заключается в том, что вариант со switch работает как должно, $total увеличивается, а вариант с if-elseif нет. Я пробовал его тоже под switch переделать, но все равно не работает. как я понял далее проблема в том что условие в if имеет дело с русскими буквами. Почему не if не switch не хотят работать с русскими буквами полученными с массива таким образом как в моем случае?
Anagar Отправлено: 21 Января, 2016 - 09:43:12 • Тема: Без прерывный пых • Форум: Напишите за меня, пожалуйста

Ответов: 3
Просмотров: 62
dcc0 пишет:
Это очень просто. Используется планировщик, обычно cron.
Ему указывается время выполнения, например, раз в 5 минут, а также путь к скрипту php, скрипт уже делает расчёты и обновляет базу данных.


Спс, поищу о кроне..
Anagar Отправлено: 20 Января, 2016 - 03:20:22 • Тема: Без прерывный пых • Форум: Напишите за меня, пожалуйста

Ответов: 3
Просмотров: 62
Я вот всегда думал как можно реализовать самообновляющуюся базу.. Это возможно сделать средствами пыха? Что бы вы меня лучше понимали: Допустим у меня есть страница рейтинга и каждые 5 мин информация на ней должна обновляться, а точнее в базе, ибо инфу о рейте страница берет из заранее заготовленного результата в бд на ближайшие 5 мин. Но как сделать такой скрипт который каждые 5мин будет без обращения каких либо посредников вносить изменения в бд за графиком? Полагаю пых на это не способен..?! Если нет то как вообще такое реализуют?

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

 
Powered by ExBB FM 1.0 RC1. InvisionExBB