Kako napraviti kalendar u PHP -u: 7 koraka (sa slikama)

Sadržaj:

Kako napraviti kalendar u PHP -u: 7 koraka (sa slikama)
Kako napraviti kalendar u PHP -u: 7 koraka (sa slikama)

Video: Kako napraviti kalendar u PHP -u: 7 koraka (sa slikama)

Video: Kako napraviti kalendar u PHP -u: 7 koraka (sa slikama)
Video: Kako zaraditi gledajući Reklame ($6 za 30 Sekundi) 2024, Marš
Anonim

Ovaj članak će vas naučiti kako napraviti kalendar u PHP -u. Ovdje navedite neke besplatne skripte php kalendara. Ili možete direktno na web stranicu PHPKode.com za više besplatnih PHP vodiča.

Koraci

Napravite kalendar u PHP -u Korak 1
Napravite kalendar u PHP -u Korak 1

Korak 1. Prikupite potrebne informacije koje su važne za prikaz stvarnog mjeseca i označite stvarni dan

Osim ovoga, želite prikazati i stvarni mjesec i godinu. Da biste to učinili, potrebna su vam 3 posebna unosa za dan: stvarni dan, prvi dan stvarnog mjeseca, zadnji dan stvarnog mjeseca

Kreirajte kalendar u PHP -u 2. korak
Kreirajte kalendar u PHP -u 2. korak

Korak 2. Odredite koji je dan bio prvi dan, koliko je dug mjesec i, naravno, koji je stvarni dan, sa gore navedenim podacima

Korak 3. Koristite ugrađenu funkciju PHP:

getdate ()

. Bez parametara, ova funkcija vraća podatke o stvarnom danu u nizu na sljedeći način:

01

Array

02

(

03

[sekunde] => 40

04

[minute] => 58

05

[sati] => 21

06

[mday] => 17

07

[wday] => 2

08

[pon] => 6

09

[godina] => 2003

10

[yday] => 167

11

[radni dan] => utorak

12

[mjesec] => jun

13

[0] => 1055901520

14

)

Da bismo dobili zadnji dan u mjesecu sa datumom dobijanja, moramo pokušati dobiti 0. dan sljedećeg mjeseca. Dakle, kod za dobivanje informacija izgleda ovako:

1

<? php

2

$ danas

=

getdate

();

3

$ firstDay

=

getdate

(

mktime

(0, 0, 0,

$ danas

[

'mon'

], 1,

$ danas

[

'godina'

]));

4

$ lastDay

=

getdate

(

mktime

(0, 0, 0,

$ danas

[

'mon'

]+1, 0,

$ danas

[

'godina'

]));

5

?>

Korak 3.

Za prikaz kalendara potrebna nam je tablica sa 7 stupaca za dane u sedmici. Broj redova ovisno o broju dana i prvom danu u mjesecu. Međutim, potrebna nam je linija zaglavlja s podacima o mjesecu i godini, podnaslov s nazivom dana.

1

<? php

2

// Kreirajte tablicu s potrebnim podacima zaglavlja

3

echo

''

;

;

$ danas

[

'mjesec'

].

" - "

$ danas

[

'godina'

].

4

echo

'

'

'

;

5

echo

'

'

;

6

echo

'

Mo Tu Mi Th

'

;

7

echo

'

Fr Sa Ned

8

?>

Kreirajte kalendar u PHP -u Korak 3
Kreirajte kalendar u PHP -u Korak 3
  • Sada kada imate zaglavlje tablice, popunite prvi red. To nije tako jednostavno jer ne možete samo napisati 1 u prvu ćeliju, 2 u drugu i tako dalje. Radi samo ako je prvi dan u mjesecu bio ponedjeljak, ali što ako ne? Da bismo to odlučili, potrebna nam je stavka dana iz niza firstDay. S ovim podacima možemo popuniti ćelije prostorom ako je potrebno. Kod za to je sljedeći:

    01

    <? php

    '

    ;

    02

    echo

    '

    03

    for

    (

    $ i

    =1;

    $ i

    <

    $ firstDay

    [

    'wday'

    ];

    $ i

    ++){

    '

    ;

    04

    echo

    '

    05

    }

    06

    $ actday

    = 0;

    07

    for

    (

    $ i

    =

    $ firstDay

    [

    'wday'

    ];

    $ i

    <=7;

    $ i

    ++){

    08

    $ actday

    ++;

    ;

    09

    echo

    $ actday

    10

    }

    '

    ;

    11

    echo

    '

    12

    ?>

    Kreirajte kalendar u PHP -u Korak 4
    Kreirajte kalendar u PHP -u Korak 4
  • Kao sljedeći korak moramo ispuniti sljedeće redove. Malo je lakše, samo moramo znati koliko imamo punu sedmicu i popuniti neke redove tablice na sljedeći način:

    01

    <? php

    02

    $ fullWeeks

    =

    kat

    ((

    $ lastDay

    [

    'mday'

    ]-

    $ actday

    )/7);

    03

    04

    for

    (

    $ i

    =0;

    $ i

    <

    $ fullWeeks

    ;

    $ i

    ++){

    '

    ;

    05

    echo

    '

    06

    for

    (

    $ j

    =0;

    $ j

    <7;

    $ j

    ++){

    07

    $ actday

    ++;

    ;

    08

    echo

    $ actday

    09

    }

    '

    ;

    10

    echo

    '

    11

    }

    12

    13

    ?>

    Napravite kalendar u PHP -u Korak 5
    Napravite kalendar u PHP -u Korak 5
  • Kao poluzavršni korak moramo dodati ostatak mjeseca u zadnji red. U ovom slučaju je prilično lako:

    01

    <? php

    02

    ako

    (

    $ actday

    <

    $ lastDay

    [

    'mday'

    ]){

    '

    ;

    03

    echo

    '

    04

    for

    (

    $ i

    =0;

    $ i

    <7;

    $ i

    ++){

    05

    $ actday

    ++;

    06

    ako

    (

    $ actday

    <=

    $ lastDay

    [

    'mday'

    ]){

    ;

    07

    echo

    $ actday

    08

    }

    09

    else

    {

    '

    ;

    10

    echo

    '

    11

    }

    12

    }

    '

    ;

    13

    echo

    '

    14

    }

    15

    ?>

    Korak 7.

    Kako bismo kalendar učinili ljepšim, predstavit ćemo CSS dizajn. CSS datoteka je vrlo jednostavna:

    01

    sto {

    02

    širina

    :

    210px

    ;

    03

    granica

    :

    0px

    solid

    #888

    ;

    04

    rušenje granice

    :

    kolaps

    ;

    05

    }

    06

    td {

    07

    širina

    :

    30px

    ;

    08

    border-collpase: collpase;

    09

    granica

    :

    1px

    solid

    #888

    ;

    10

    poravnati tekst

    :

    desno

    ;

    11

    padding-right

    :

    5px

    ;

    12

    }

    13

    .days {

    14

    boja pozadine

    :

    #F1F3F5

    ;

    15

    }

    16

    th {

    17

    border-collpase: collpase;

    18

    granica

    :

    1px

    solid

    #888

    ;

    19

    boja pozadine

    :

    #E9ECEF

    ;

    20

    }

    21

    .actday {

    22

    boja pozadine

    :

    #c22

    ;

    23

    font-weight

    :

    podebljano

    ;

    24

    }

    Kreirajte kalendar u PHP -u Korak 6
    Kreirajte kalendar u PHP -u Korak 6
  • Kompletan kôd koji koristi CSS je sljedeći:

    01

    <! DOCTYPE html JAVNO

    "-// W3C // DTD XHTML 1.0 Transitional // EN"

    "DTD/xhtml1-transitional.dtd"

    02

    03

    04

    #

    "style/style.css"

    rel =

    "stilska tablica"

    type =

    "text/css"

    05

    06

    07

    <? php

    08

    funkciju

    showCalendar () {

    09

    // Dobijte ključne informacije o danu.

    10

    // Trebamo prvi i zadnji dan u mjesecu i stvarni dan

    11

    $ danas

    =

    getdate

    ();

    12

    $ firstDay

    =

    getdate

    (

    mktime

    (0, 0, 0,

    $ danas

    [

    'mon'

    ], 1,

    $ danas

    [

    'godina'

    ]));

    13

    $ lastDay

    =

    getdate

    (

    mktime

    (0, 0, 0,

    $ danas

    [

    'mon'

    ]+1, 0,

    $ danas

    [

    'godina'

    ]));

    14

    15

    // Kreirajte tablicu s potrebnim podacima zaglavlja

    16

    echo

    ''

    ;

    ;

    $ danas

    [

    'mjesec'

    ].

    " - "

    $ danas

    [

    'godina'

    ].

    17

    echo

    '

    '

    '

    ;

    18

    echo

    '

    '

    ;

    19

    echo

    '

    Mo Tu Mi Th

    '

    ;

    20

    echo

    '

    Fr Sa Ned

    21

    22

    // Prikaz prvog reda kalendara s ispravnim pozicioniranjem

    '

    ;

    23

    echo

    '

    24

    for

    (

    $ i

    =1;

    $ i

    <

    $ firstDay

    [

    'wday'

    ];

    $ i

    ++){

    '

    ;

    25

    echo

    '

    26

    }

    27

    $ actday

    = 0;

    28

    for

    (

    $ i

    =

    $ firstDay

    [

    'wday'

    ];

    $ i

    <=7;

    $ i

    ++){

    29

    $ actday

    ++;

    30

    ako

    (

    $ actday

    ==

    $ danas

    [

    'mday'

    ]) {

    31

    $ class

    =

    'class = "actday"'

    ;

    32

    }

    else

    {

    33

    $ class

    =

    ;

    34

    }

    ;

    35

    echo

    $ actday

    36

    }

    '

    ;

    37

    echo

    '

    38

    39

    // Dobijte koliko je potpunih sedmica u stvarnom mjesecu

    40

    $ fullWeeks

    =

    kat

    ((

    $ lastDay

    [

    'mday'

    ]-

    $ actday

    )/7);

    41

    for

    (

    $ i

    =0;

    $ i

    <

    $ fullWeeks

    ;

    $ i

    ++){

    '

    ;

    42

    echo

    '

    43

    for

    (

    $ j

    =0;

    $ j

    <7;

    $ j

    ++){

    44

    $ actday

    ++;

    45

    ako

    (

    $ actday

    ==

    $ danas

    [

    'mday'

    ]) {

    46

    $ class

    =

    'class = "actday"'

    ;

    47

    }

    else

    {

    48

    $ class

    =

    ;

    49

    }

    ;

    50

    echo

    $ actday

    51

    }

    '

    ;

    52

    echo

    '

    53

    }

    54

    55

    // Sada prikazuje ostatak mjeseca

    56

    ako

    (

    $ actday

    <

    $ lastDay

    [

    'mday'

    ]){

    '

    ;

    57

    echo

    '

    58

    for

    (

    $ i

    =0;

    $ i

    <7;

    $ i

    ++){

    59

    $ actday

    ++;

    60

    ako

    (

    $ actday

    ==

    $ danas

    [

    'mday'

    ]) {

    61

    $ class

    =

    'class = "actday"'

    ;

    62

    }

    else

    {

    63

    $ class

    =

    ;

    64

    }

    65

    66

    ako

    (

    $ actday

    <=

    $ lastDay

    [

    'mday'

    ]){

    ;

    67

    echo

    $ actday

    68

    }

    69

    else

    {

    '

    ;

    70

    echo

    '

    71

    }

    72

    }

    '

    ;

    73

    echo

    '

    74

    }

    75

    echo

    '

    '

    ;

    76

    }

    77

    showCalendar ();

    78

    ?>

    79

    80

  • Preporučuje se: