2013-03-16 2 views
0

У меня есть googled, но я не нашел этот тип кода. Я хочу, чтобы php-код читал значение, равное количеству дней, когда будет одобрен доступ к странице.Открыть и закрыть страницу между определенными днями

Например, если сегодня первое открытие страницы, а значение дней со следующего открытия будет 20, значит, с сегодняшнего дня мы добавим 20 дней, а затем страница снова будет открыта.

Я лучше пример, у нас есть вербовка, набор будет открыт на 2 дня, а затем, после того, как эти два дня будут закрыты в течение 20, а затем снова откроются (снова и снова). Но я хочу определить эти две переменные, время открытия набора и время между набором.

Другая простая функция заключается в том, что если я определяю ручной набор, он откроется, и когда я закрою его, набор начнется с 20 дней со дня закрытия.

+0

И в чем ваш вопрос? Вы еще что-нибудь пробовали? – peterm

+0

[Пожалуйста, не используйте подписи в своих сообщениях] (http://stackoverflow.com/faq#signatures) – peterm

+0

Привет, peterm, я новичок в php, и у меня нет идей, как это сделать .. – Fred

ответ

1

Я не знаю никакой ссылки, но код ur может быть чем-то вроде этого. Проверьте ссылки, функции не требуют пояснений.

$lastRecDay = "2013-01-11"; // this will be coming from ur db 


// create a date object 
$date = new DateTime($lastRecDay); 
//add 20 days to it 
$date->add(new DateInterval('P10D')); // ur date is 20 from last day 

//its 20 days+ since the posting 
if($date->format('U') <= strtotime('now')) 
{ 
// your code re-open goes here 
} 
+0

Спасибо cjg. Я буду любить, если это сработает. – Fred

+0

Он работает отлично, я буду править весь код, который я хочу использовать, а затем, если это подходит, я опубликую здесь. Спасибо!!!! – Fred

0

В php вы можете использовать date_add, чтобы добавить дату. А в mysql также есть date_add. Думаю, это должно решить вашу проблему.

+0

Спасибо cjg! Но каждый может дать мне ссылку или любую идеологию, как я могу это сделать: прочитайте последний день открытого набора, добавьте 20 дней (это переменная дней между наймом), а если последний день плюс 20 дней «сегодня», он снова откроет набор, но моя проблема в том, как я могу добавить дни? У него будут проблемы из-за месяцев ... я думаю ... Извините за мой английский и спасибо, ребята;) – Fred

+0

Спасибо cjg. Я попробую это. – Fred

1

Ok, так что это звучит как вам необходимо контролировать следующие переменные

Open date 
Display days 
Interval days 
End date 

Тогда вы будете это делать, как этот

create a page 
enter the first open date 
enter the days to be displayed 
enter the days between closing and re-opening (interval) 
enter the end date 

затем вычислить, если он будет отображаться

if (today < enddate) { 
    if (today >= opendate) and (today <= opendate + displaydays) 
    show 
    else if (today > opendate + displaydays) 
    opendate = today + interval 
} 

Квесты теперь как вы храните свои данные? Я думаю, это проще всего в дБ, но вы, вероятно, можете сделать это и внутри файла.

Будет расширяться по инструкциям, когда я знаю ваш тип хранилища.

+0

Привет, христианин! Спасибо за ваш ответ. Это будет в db :) – Fred

+0

Этот вопрос закрыт сейчас Фред, извините: s Но используйте логику в своем ответе, чтобы построить ваш PHP-код. – Christian

Смежные вопросы