php code in smarty
Met hulp uit een andere topic heb ik het volgende:
Code (php)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
<?php
//tijdzone
date_default_timezone_set('Europe/Amsterdam');
define('timeopen', 10);
define('timeclosed', 18);
define('weekendopen', 10);
define('weekendclosed', 16);
$weekdag = (int) date('w');
switch ($weekdag) {
case 0: //zondag
case 1: //maandag
$openclose = '<div class="time-close">Momenteel zijn wij gesloten</div>';
break;
case 2: //dinsdag
if ( (date('H') >= timeopen) and (date('H') < timeclosed) ){
$openclose = '<div class="time-open">Vandaag open tot 18:00</div>';
}else{
$openclose = '<div class="time-close">Momenteel zijn wij gesloten</div>';}
break;
case 3: //woensdag
if ( (date('H') >= timeopen) and (date('H') < timeclosed) ){
$openclose = '<div class="time-open">Vandaag open tot 18:00</div>';
}else{
$openclose = '<div class="time-close">Momenteel zijn wij gesloten</div>';}
break;
case 4: //donderdag
if ( (date('H') >= timeopen) and (date('H') < timeclosed) ){
$openclose = '<div class="time-open">Vandaag open tot 18:00</div>';
}else{
$openclose = '<div class="time-close">Momenteel zijn wij gesloten</div>';}
break;
case 5: //vrijdag
if ( (date('H') >= timeopen) and (date('H') < timeclosed) ){
$openclose = '<div class="time-open">Vandaag open tot 18:00</div>';
}else{
$openclose = '<div class="time-close">Momenteel zijn wij gesloten</div>';}
break;
case 6: //zaterdag
if ( (date('H') >= weekendopen) and (date('H') < weekendclosed) ){
$openclose = '<div class="time-open">Vandaag open tot 18:00</div>';
}else{
$openclose = '<div class="time-close">Momenteel zijn wij gesloten</div>';}
break;
}
?>
//tijdzone
date_default_timezone_set('Europe/Amsterdam');
define('timeopen', 10);
define('timeclosed', 18);
define('weekendopen', 10);
define('weekendclosed', 16);
$weekdag = (int) date('w');
switch ($weekdag) {
case 0: //zondag
case 1: //maandag
$openclose = '<div class="time-close">Momenteel zijn wij gesloten</div>';
break;
case 2: //dinsdag
if ( (date('H') >= timeopen) and (date('H') < timeclosed) ){
$openclose = '<div class="time-open">Vandaag open tot 18:00</div>';
}else{
$openclose = '<div class="time-close">Momenteel zijn wij gesloten</div>';}
break;
case 3: //woensdag
if ( (date('H') >= timeopen) and (date('H') < timeclosed) ){
$openclose = '<div class="time-open">Vandaag open tot 18:00</div>';
}else{
$openclose = '<div class="time-close">Momenteel zijn wij gesloten</div>';}
break;
case 4: //donderdag
if ( (date('H') >= timeopen) and (date('H') < timeclosed) ){
$openclose = '<div class="time-open">Vandaag open tot 18:00</div>';
}else{
$openclose = '<div class="time-close">Momenteel zijn wij gesloten</div>';}
break;
case 5: //vrijdag
if ( (date('H') >= timeopen) and (date('H') < timeclosed) ){
$openclose = '<div class="time-open">Vandaag open tot 18:00</div>';
}else{
$openclose = '<div class="time-close">Momenteel zijn wij gesloten</div>';}
break;
case 6: //zaterdag
if ( (date('H') >= weekendopen) and (date('H') < weekendclosed) ){
$openclose = '<div class="time-open">Vandaag open tot 18:00</div>';
}else{
$openclose = '<div class="time-close">Momenteel zijn wij gesloten</div>';}
break;
}
?>
en de output plaatsen waar je hem wilt hebben
Op de lokale test server werkt het perfect totdat ik hem in de site ging verwerken.
Nu blijkt dat er gebruik word gemaakt van smarty en dat veranderd de zaak weer.
Helaas heb ik van smarty 0 verstand. Wie kan mij helpen dat in de php smarty taal te zetten?
Groetjes Jop
Als je het makkelijker wilt kan je ib je PHPcode ook assigns gebruiken, die je in Smarty kan gebruiken.
Alvast bedankt voor het reageren op mijn vraag.
Dus als ik het goed begrijp kan ik in de root index.php een assign maken met mijn bovenstaande code.
Die ik dan overal in de template kan aanroepen?
Mocht ik er niet uitkomen zouden jullie mij dan kunnen helpen met jullie kennis?
Groetjes Jop
Toevoeging op 24/02/2015 12:35:17:
Weet niet of dit kan?
Code (php)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
<?php
//tijdzone
date_default_timezone_set('Europe/Amsterdam');
define('timeopen', 10);
define('timeclosed', 18);
define('weekendopen', 10);
define('weekendclosed', 16);
$weekdag = (int) date('w');
switch ($weekdag) {
case 0: //zondag
case 1: //maandag
$smarty->assign('$openclose', '<div class="time-close">Momenteel zijn wij gesloten</div>');
break;
case 2: //dinsdag
if ( (date('H') >= timeopen) and (date('H') < timeclosed) ){
$smarty->assign('$openclose', '<div class="time-open">Vandaag open tot 18:00</div>');
}else{
$smarty->assign('$openclose', '<div class="time-close">Momenteel zijn wij gesloten</div>');}
break;
?>
//tijdzone
date_default_timezone_set('Europe/Amsterdam');
define('timeopen', 10);
define('timeclosed', 18);
define('weekendopen', 10);
define('weekendclosed', 16);
$weekdag = (int) date('w');
switch ($weekdag) {
case 0: //zondag
case 1: //maandag
$smarty->assign('$openclose', '<div class="time-close">Momenteel zijn wij gesloten</div>');
break;
case 2: //dinsdag
if ( (date('H') >= timeopen) and (date('H') < timeclosed) ){
$smarty->assign('$openclose', '<div class="time-open">Vandaag open tot 18:00</div>');
}else{
$smarty->assign('$openclose', '<div class="time-close">Momenteel zijn wij gesloten</div>');}
break;
?>
En die dan aanroepen in de template als
Gewijzigd op 24/02/2015 12:36:12 door Jop B
Je hebt overal al $openclose in gebruik voor de verschillende meldingen die worden getoond.
Dan kan je die assign na je switch() { ...... } plaatsen.
Waarna je in {$openclose} de juiste HTML hebt staan.
Gewijzigd op 24/02/2015 12:54:14 door - Ariën -
Bedankt voor het meedenken! Heb het net in de site verwerkt en werkt perfect;)
Groetjes Jop