unix - कैलेंडर को यूनिक्स समय के साथ php में भरें




calendar (4)

मैं एक टेबल कैलेंडर बना रहा हूँ, जो साप्ताहिक आधार पर काम करता है कैलेंडर ऐसा दिखता है

मैंने अपने शीर्ष लेख तिथियां सेट करने के लिए यहां कोड का उपयोग किया था। मुझे ऐसा कोड दिखता है:

$dt = new DateTime;
$dt->setISODate($dt->format('o'), $dt->format('W'));
$year = $dt->format('o');
$week = $dt->format('W');
$current_time = time(); 

$return .= '<table class="reservation_time_table">
                <tr><th>'.esc_html__('Hours', 'time_reservation').'</th>';
do {
    $return .= '<th>' . $dt->format('l') . '<br>' . $dt->format('d M Y') . '</th>';
    $dt->modify('+1 day');
} while ($week == $dt->format('W'));
$return .= '</tr>';
for ($hour=8; $hour < 23 ; $hour++) {
    $return .= '<tr>';
        $return .= '<th>'.$hour.':00</th>';
        for ($i=0; $i <7 ; $i++) {
            $return .= '<td data-reservation_time=""></td>';
        }
    $return .= '</tr>';
}

$return .= '</table>';

अब, मुझे अपने data-reservation_time समय को Unix प्रारूप में तारीख (जो कि $current_time वैरिएबल है) में $current_time है, उस सेल के। उदाहरण के लिए, शुक्रवार 20 में 8:00 के लिए सेल में उस सेल में 1448006400 होना चाहिए। मैं इसे बाद में डेटाबेस में स्टोर करने के लिए उपयोग करूंगा

लेकिन मैं यह कैसे कर सकता हूँ? मैं इस बिंदु पर फंस गया हूँ किसी भी मदद की सराहना की है

संपादित करें

जवाब मिला यह नीचे है :)


Answers

कुछ इस तरह:

$return .= '<td data-reservation_time="' . strtotime($dt->format("Y-m-d") . " " . $hour . ":00:00") . '"></td>';

टाइमस्टैम्प प्राप्त करने के लिए, अपने $dt ऑब्जेक्ट से दिन और लूप से समय प्राप्त करें।


ठीक है, तो जवाब मैंने सोचा था की तुलना में आसान था। अच्छी तरह से मैं अभी भी 100% यकीन नहीं है कि पहले भाग बिल्कुल सही है, लेकिन यह (मेरे तर्क से) होना चाहिए

सबसे पहले, इस हफ्ते की तारीखों की एक सरणी बनाएं ( इस उत्तर का कष्ट)

$today = time();

if (date('D', $today) === 'Mon') {
    $timestamp = strtotime('this Monday');
} else{
    $timestamp = strtotime('last Monday');
}
$days = array();
$dates = array();
for ($i = 0; $i < 7; $i++) {
    $days[] = strftime('%A <br /> %d %b %Y', $timestamp);
    $dates[] = strftime('%d %b %Y', $timestamp);
    $timestamp = strtotime('+1 day', $timestamp);
}

पहले if else लूप की जांच करना था कि आज सोमवार है, तो आप अगली रविवार (एक ही सप्ताह में) की ओर सरणी भरें। यदि यह मंगलवार है, तो टाइमस्टैम्प संदर्भ पिछले सोमवार है

और फिर सिर्फ एक foreach

$return .= '<table class="reservation_time_table">
                <tr><th>'.esc_html__('Hours', 'time_reservation').'</th>';
    foreach ($days as $day => $day_value) {
        $return .= '<th>'.$day_value.'</th>';
    }
    $return .= '</tr>';
    for ($hour=8; $hour < 23 ; $hour++) {
    $return .= '<tr>';
        $return .= '<th>'.$hour.':00</th>';
    foreach ($dates as $date => $date_value) {
        $full_hour = $hour. ':00';
        $return .= '<td data-time="'.strtotime($date_value. ' ' .$full_hour).'"></td>';
    }
    $return .= '</tr>';
    }
$return .= '</table>';

और समय के साथ मेरी तिथियां data-time , jquery grabbing के लिए परिपक्व: डी


आप strtotime का उपयोग कर unixtimstamp प्राप्त कर सकते हैं:

<?php
$date = date("d M Y");
$time = "15:00";
$unixTime = strtotime($date . " " . $time);
?>

एसक्यूएल इंजेक्शन और अन्य एसक्यूएल हैक्स को रोकने के कई तरीके हैं। आप इसे आसानी से इंटरनेट पर ढूंढ सकते हैं (Google खोज)। बेशक पीडीओ अच्छे समाधानों में से एक है। लेकिन मैं आपको एसक्यूएल इंजेक्शन से कुछ अच्छे लिंक रोकथाम का सुझाव देना चाहता हूं।

एसक्यूएल इंजेक्शन और कैसे रोकें

एसक्यूएल इंजेक्शन के लिए PHP मैनुअल

PHP में एसक्यूएल इंजेक्शन और रोकथाम का माइक्रोसॉफ्ट स्पष्टीकरण

और कुछ अन्य जैसे MySQL और PHP के साथ SQL इंजेक्शन को रोकना

अब, आपको SQL क्वेरी इंजेक्शन से अपनी क्वेरी को रोकने की आवश्यकता क्यों है?

मैं आपको बताना चाहता हूं: हम नीचे दिए गए संक्षिप्त उदाहरण के साथ एसक्यूएल इंजेक्शन को रोकने के लिए क्यों प्रयास करते हैं:

लॉगिन प्रमाणीकरण मैच के लिए क्वेरी:

$query="select * from users where email='".$_POST['email']."' and password='".$_POST['password']."' ";

अब, अगर कोई (हैकर) डालता है

$_POST['email']= [email protected]' OR '1=1

और पासवर्ड कुछ भी ....

क्वेरी को केवल सिस्टम में पार्स किया जाएगा:

$query="select * from users where email='[email protected]' OR '1=1';

दूसरा हिस्सा त्याग दिया जाएगा। तो, क्या होगा? एक गैर-अधिकृत उपयोगकर्ता (हैकर) बिना पासवर्ड के व्यवस्थापक के रूप में लॉग इन करने में सक्षम होगा। अब, वह कुछ भी कर सकता है जो व्यवस्थापक / ईमेल व्यक्ति कर सकता है। देखें, एसक्यूएल इंजेक्शन को रोका नहीं गया है, यह बहुत खतरनाक है।





php unix calendar