[phpBB Debug] PHP Warning: in file [ROOT]/ext/tas2580/seourls/event/listener.php on line 213: Undefined array key "FORUM_NAME"
REDAXO Forum • Bitte um Hilfe bei datumsgesteuertem Lauftext
Seite 1 von 1

Bitte um Hilfe bei datumsgesteuertem Lauftext

Verfasst: 2. Aug 2016, 12:58
von Kalaschnimoe
Hallo liebe Community,

ich habe gerade versucht, aus mehreren Modulen einen Lauftext zu kreieren, welcher je nach Datumseingabe online oder offline ist.
Allerdings habe ich ein Problem bei der Ausgabe (Zeile 22 und 24), dass ich nicht genau weiß, welche Funktion ich angeben muss.

Eingabe:

Code: Alles auswählen

<strong>Text</strong>: <br />
<input type="text" size="50" name="VALUE[1]" value="REX_VALUE[1]" />
<br><br>
<strong>Interner Link</strong><br /><br>
REX_LINK_BUTTON[1]

<?php
$jahr = date('Y');
$monat = date('m');
$tag = date('d');

$jahr_von_val = 'REX_VALUE[5]';
$monat_von_val = 'REX_VALUE[6]';
$tag_von_val = 'REX_VALUE[7]';

$jahr_bis_val = 'REX_VALUE[8]';
$monat_bis_val = 'REX_VALUE[9]';
$tag_bis_val = 'REX_VALUE[10]';

if ( empty($jahr_von_val)) $jahr_von_val = $jahr;
if ( empty($monat_von_val)) $monat_von_val = $monat;
if ( empty($tag_von_val)) $tag_von_val = $tag;

if ( empty($jahr_bis_val)) $jahr_bis_val = $jahr;
if ( empty($monat_bis_val)) $monat_bis_val = $monat;
if ( empty($tag_bis_val)) $tag_bis_val = $tag;

?>
Online von: JJJJ.MM.TT<br />
<select name="VALUE[5]" >
<?php
foreach (range( $jahr,$jahr+5) as $jahr_von) {
   echo '<option value="'.$jahr_von.'" ';
   
   if ( $jahr_von_val ==$jahr_von ) {
      echo 'selected="selected" ';
   }
   echo '>'.$jahr_von.'</option>';
}
?>

</select><select name="VALUE[6]" >
<?php
foreach (range(1,12) as $monat_von) {
   echo '<option value="'.$monat_von.'" ';
   
   if ( $monat_von_val==$monat_von ) {
      echo 'selected="selected" ';
   }
   echo '>'.$monat_von.'</option>';
}
?>

</select><select name="VALUE[7]" >
<?php
foreach (range(1,31) as $tag_von) {
   echo '<option value="'.$tag_von.'" ';
   
   if ( $tag_von_val==$tag_von ) {
      echo 'selected="selected" ';
   }
   echo '>'.$tag_von.'</option>';
}
?>
</select><br /><br />

Online bis: JJJJ.MM.TT<br />
<select name="VALUE[8]" >
<?php
foreach (range($jahr,$jahr+5) as $jahr_bis) {
   echo '<option value="'.$jahr_bis.'" ';
   
   if ( $jahr_bis_val==$jahr_bis ) {
      echo 'selected="selected" ';
   }
   echo '>'.$jahr_bis.'</option>';
}
?>

</select><select name="VALUE[9]" >
<?php
foreach (range(1,12) as $monat_bis) {
   echo '<option value="'.$monat_bis.'" ';
   
   if ( $monat_bis_val==$monat_bis ) {
      echo 'selected="selected" ';
   }
   echo '>'.$monat_bis.'</option>';
}
?>

</select><select name="VALUE[10]" >
<?php
foreach (range(1,31) as $tag_bis) {
   echo '<option value="'.$tag_bis.'" ';
   
   if ( $tag_bis_val==$tag_bis ) {
      echo 'selected="selected" ';
   }
   echo '>'.$tag_bis.'</option>';
}
?>
</select><br/><br/>

<?php

if ( $jahr_von_val != ''
     && $monat_von_val != ''
     && $tag_von_val != ''
     && $jahr_bis_val != ''
     && $monat_bis_val != ''
     && $tag_bis_val != '') {
  $von = mktime( 0, 0, 0, $monat_von_val, $tag_von_val, $jahr_von_val);
  $bis  = mktime( 0, 0, 0, $monat_bis_val, $tag_bis_val, $jahr_bis_val);
  $jetzt = time();

  if( $jetzt > $von && $jetzt < $bis) {
    $state = '<span style="color: #00aa00;">online</color>';
  } else {
    $state = '<span style="color: #aa0000;">offline</color>';
  }

  echo 'Artikel aufgrund der Datumseinstellungen '.$state;
} 
?>
Ausgabe:

Code: Alles auswählen

<?php

$jahr_von = 'REX_VALUE[5]';
$monat_von = 'REX_VALUE[6]';
$tag_von = 'REX_VALUE[7]';

$jahr_bis = 'REX_VALUE[8]';
$monat_bis = 'REX_VALUE[9]';
$tag_bis = 'REX_VALUE[10]';

if ( $jahr_von != ''
     && $monat_von != ''
     && $tag_von != ''
     && $jahr_bis != ''
     && $monat_bis != ''
     && $tag_bis != '') {
  $von = mktime( 0, 0, 0, $monat_von, $tag_von, $jahr_von);
  $bis  = mktime( 0, 0, 0, $monat_bis, $tag_bis, $jahr_bis);
  $jetzt = time();

  if( $jetzt > $von && $jetzt < $bis) {
   //Ausgabe
  } else {
    // keine Ausgabe
  }

  if ($REX['REDAXO']) {
    if( $jetzt > $von && $jetzt < $bis) {
      $state = '<span style="color: #00aa00;">online</color>';
    } else {
      $state = '<span style="color: #aa0000;">offline</color>';
    }

    echo 'Artikel aufgrund der Datumseinstellungen '.$state;
  }
} 
?>
Könnt ihr mir bitte weiterhelfen?

LG Kalaschnimoe

Re: Bitte um Hilfe bei datumsgesteuertem Lauftext

Verfasst: 2. Aug 2016, 19:42
von Ingo
Kalaschnimoe hat geschrieben:Habe die "marquee"-Funktion schon an einigen Stellen probiert, aber dann erhalte ich immer einen Syntax-Error...
:mrgreen: ymmd