Вопрос № 113550: Добрый день! Ситуация следующая: Необходимо для указанной даты определить последний день предыдущего месяца. Можно ли это сделать стандартными функциями РНР или нужно самому велосипед изобретать. Пока получается следующее:
$stamp =strtotime(...Вопрос № 113603: Можно ли при помощи PHP скачивать файл с любого сайта на хост и патом отсылать на e-mail без участия пользователя, то есть чтобы все операции (скачивание и отправку) выполнял хостинг?...Вопрос № 113708: Не получается произвести расширенную установку Smarty.
На странице выводятся следующие строки:
Warning: main(test/setup.php) [function.main]: failed to open stream: No such file or directory in z:home est1.ruwwwindex.php on line 67<...
Вопрос № 113.550
Добрый день! Ситуация следующая: Необходимо для указанной даты определить последний день предыдущего месяца. Можно ли это сделать стандартными функциями РНР или нужно самому велосипед изобретать. Пока получается следующее:
$stamp =strtotime("1 month ago"); echo date($_POST['data'], $stamp); - если, к примеру, $_POST['data'] = 2007-05-23 выводит 2007-05-23, т.е. ничего не меняет. Почему не знаю...
если же
$stamp =strtotime("1 month ago"); echo date("Y-m-d", $stamp); - выводит всё как надо, т.е. месяц назад от текущей даты
Вобщем вопрос дополняется еще и этим: Можно ли в date() передать каким нибудь образом значение из $_POST['data']
Формат функции: date( "шаблон" [, время в Timestamp ]), по-этому, когда вы указываете date($_POST['data'], $stamp); функция и выводит по шаблону - "2007-05-23".
В случае date("Y-m-d", $stamp); Вы функции указываете шаблон - "Год-месяц-день" и функция подставляет под шаблон значения.
По поводу передачи значения $_POST['data'] в date(), не вижу в этом смысла, так как $_POST['data'] уже приведена к шаблону. Если же Вы хотите перевести $_POST['data'] в формат Timestamp, то я для этого можно использовать свою функцию преобразования(написана здесь и в приложении):
function my_strtotime( $data )
{
//создаем массив месяцев на английском, так как strtotime понимает только английский
Вызов $data_stamp = my_strtotime($_POST['data']);
а затем можете преобразовывать в дату: $data = date("Y-m-d", $data_stamp)
Удачи
Приложение:
Ответ отправил: Anti_SP (статус: 1-ый класс)
Ответ отправлен: 12.12.2007, 10:13 Оценка за ответ: 5 Комментарий оценки: Большое спасибо. Буду разбираться. Со второй частью вопроса вроде более менее понятно, а вот первая часть (насчет получения последнего дня месяца, предыдущего месяцу выбранной даты) пока не очень. Думаю, что скорее всего прийдется делать что нибудь подобное приведенной Вами функции.
От введенной даты необходимо отнять количество пройденных дней месяца в этой дате. $_POST["data"]="13.09.2007";
$z=(int)date("d",strtotime($_POST["data"]));
echo date("d-m-Y", strtotime($_POST["data"])-$z*24*3600);
Можно ли при помощи PHP скачивать файл с любого сайта на хост и патом отсылать на e-mail без участия пользователя, то есть чтобы все операции (скачивание и отправку) выполнял хостинг?
Отвечает: Миленин Александр
Здравствуйте, Виталий Филипович Георгиевич!
Можно.
1) Самый оптимальный вариант добавить исполнение скрипта в крон.
2) Можно создать бесконечный цикл, который будет через определённые промежутки времени выполнять функцию.
Полезные ссылки:
http://ru.wikipedia.org/wiki/Cron - Крон Википедия
http://www.codenet.ru/webmast/php/cron.php - Использование CRON и команды crontab
Ответ отправил: Миленин Александр (статус: 8-ой класс)
Ответ отправлен: 12.12.2007, 15:17 Оценка за ответ: 5 Комментарий оценки: Спасибо за ответ и за ссылки. Всё что надо я нашёл.
Вопрос № 113.708
Не получается произвести расширенную установку Smarty.
На странице выводятся следующие строки:
Warning: main(test/setup.php) [function.main]: failed to open stream: No such file or directory in z:home est1.ruwwwindex.php on line 67
Fatal error: main() [function.require]: Failed opening required 'test/setup.php' (include_path='.;/usr/local/php/test') in z:home est1.ruwwwindex.php on line 67
С процедурой, описанной в Базовой установке проблем не было.
В чем дело? Помогите!
Приложение:
Отправлен: 12.12.2007, 23:32
Вопрос задал: Schel4ok (статус: Посетитель)
Всего ответов: 1 Мини-форум вопроса >>> (сообщений: 0)
Отвечает: Товарищ Бородин
Здравствуйте, Schel4ok!
Насколько я знаю, свойствам template_dir и проч. присваиваются значения относительного от исполняемого скрипта пути. Такого способа использования Smarty, который описали Вы, я еще не встречал. Рассуждаем логически: на что ругается PHP? На несуществующий файл. Почему такой файл с точки зрения PHP не существует, хотя Вы точно знаете, что он есть? Потому что Вы прописали неправильный путь. Вот и все. Тут вопрос простой, почему так происходит. Сложнее разобраться, почему путь-то неправильный. Если Вы записали в
Include_Path путь "/usr/local/php/test", то полный путь к setup.php должен выглядеть, как "/usr/local/php/test/setup.php". Судя по-Вашей записи "require('test/setup.php')" путь к файлу - "/usr/local/php/test/test/setup.php. Либо я чего-то не понял в Вашем вопросе.
--------- Ничто не сближает людей так, как совместное преступление.
Ответ отправил: Товарищ Бородин (статус: Студент)
Ответ отправлен: 13.12.2007, 10:06 Оценка за ответ: 4 Комментарий оценки: попробовал - ничего не изменилось
Warning: main(test/setup.php) [function.main]: failed to open stream: No such file or directory in z:home est1.ruwwwindex.php on line 67
Fatal error: main() [function.require]: Failed opening required 'test/setup.php' (include_path='/usr/local/php/test/setup.php') in z:home est1.ruwwwindex.php on line 67