Warning: array_multisort() [function.array-multisort]: Array sizes are inconsistent in /path/cms/front_content.php(923) : eval()'d code on line 1235
Und zwar beim Aufruf des u.a. Terminmoduls, das ich hier aus dem Forum habe:
Code: Alles auswählen
<?php
/***********************************************
* CONTENIDO MODUL - OUTPUT
* Terminübersicht
* Modulname : Terminmodul mit allen Terminen
* Author : agon
* Copyright : Contenido - four for business
* Created : 22-08-2002
* Modified : Rezeptionist
* xhtml valide : apicalart
************************************************/
cInclude('classes', 'contenido/class.client.php');
$gefunden=0; // um zu überprüfen, ob überhaupt Termine vorliegen
$date = date("Y-m-d");
$sql = "SELECT ARTLANG.idart, CONTENT.value, CONTENT.typeid, ARTLANG.idartlang
FROM ".$cfg["tab"]["cat_art"]." AS CATART, ".$cfg["tab"]["art_lang"]." AS ARTLANG, ".$cfg["tab"]["cat"]." AS CAT, ".$cfg["tab"]["content"]." AS CONTENT
WHERE ARTLANG.idart = CATART.idart AND CATART.idcat = CAT.idcat AND ARTLANG.idartlang = CONTENT.idartlang
AND ARTLANG.idlang = '".$lang."' AND CAT.idcat = '78' AND CAT.idclient = '".$client."'
AND ARTLANG.online = '1' AND CATART.is_start='0'
ORDER BY ARTLANG.idart, CONTENT.typeid ASC"; // Alle Artikel der Kategorie einlesen, die nicht Startartikel (= Terminübersicht) sind
$db->query($sql);
$j=0; $anz=0;
if ($db->num_rows() != 0)
{
$termin = array(array()); // Array erzeugen, in dem die Termine abgelegt werden;
while ($j < $db->num_rows()) // alle Datensätze durchlaufen
{
$db->next_record();
if ($db->f("idart") > $termin["idart"][$anz])
{
$anz++;
}
switch ($db->f("typeid")) {
case 0: // Anfangstermin
$termin["datum1"][$anz] = $db->f("value");
$termin["jahr1"][$anz] = substr($db->f("value"),0,4);
$termin["monat1"][$anz] = substr($db->f("value"),5,2);
$termin["tag1"][$anz] = substr($db->f("value"),8,2);
$termin["idart"][$anz] = $db->f("idart");
break;
case 1: // Anfangsuhrzeit
$termin["zeit1"][$anz] = $db->f("value");
$termin["datum1"][$anz] = $termin["datum1"][$anz]." ".$termin["zeit1"][$anz];
break;
case 2: // Endtermin
$termin["datum2"][$anz] = $db->f("value");
$termin["jahr2"][$anz] = substr($db->f("value"),0,0);
$termin["monat2"][$anz] = substr($db->f("value"),0,0);
$termin["tag2"][$anz] = substr($db->f("value"),8,2);
break;
case 3: // Enduhrzeit
$termin["zeit2"][$anz] = $db->f("value");
$termin["datum2"][$anz] = $termin["datum2"][$anz]." ".$termin["zeit2"][$anz];
break;
case 4: // Ort
$termin["ort"][$anz] = $db->f("value");
break;
case 6: // Titel
$termin["titel"][$anz] = $db->f("value");
break;
}
$j++;
}
array_multisort ( $termin["datum1"], SORT_ASC, SORT_STRING, $termin["datum2"], SORT_ASC, SORT_STRING,
$termin["jahr1"], $termin["monat1"], $termin["tag1"], $termin["zeit1"],
$termin["jahr2"], $termin["monat2"], $termin["tag2"], $termin["zeit2"],
$termin["idart"], $termin["ort"], $termin["titel"] ); // nach Datum sortieren
for ($i=0; $i<=$anz; $i++)
{
if ( $termin["datum1"][$i] >= $date || $termin[$i]["datum1"] >= $date ) // nur Termine, die noch aktuell sind, aufnehmen
{
if ( $termin["monat1"][$i] !== $termin["monat1"][$i-1] || $gefunden == 0 ) // überprüfen, ob Monatsnahme einzufügen ist
{
/*
echo ' <div class="monat">';
switch ($termin["monat1"][$i]) {
case 1: echo "Januar"; break;
case 2: echo "Februar"; break;
case 3: echo "März"; break;
case 4: echo "April"; break;
case 5: echo "Mai"; break;
case 6: echo "Juni"; break;
case 7: echo "Juli"; break;
case 8: echo "August"; break;
case 9: echo "September"; break;
case 10: echo "Oktober"; break;
case 11: echo "November"; break;
case 12: echo "Dezember"; break; }
echo ' '.$termin["jahr1"][$i];
echo '</div>';
*/
}
$gefunden=1;
/*
echo ' <div class="datum"><p>'.substr($termin["datum1"][$i],8,2).'.'.substr($termin["datum1"][$i],5,2).'.'.substr($termin["datum1"][$i],0,4); // Anfangsdatum ausgeben
if ( strlen($termin["tag2"][$i]) < 2 && strlen($termin["zeit1"][$i]) >1 ) // falls kein Enddatum (Eintagestermin), aber Anfangszeit, diese ausgeben
{
echo ' '.$termin["zeit1"][$i].' Uhr';
} elseif ( strlen($termin["tag2"][$i]) > 1 ) // falls Enddatum (Mehrtagestermin), dieses ausgeben
{
echo ' – '.substr($termin["datum2"][$i],8,2).'.'.substr($termin["datum2"][$i],5,2).'.'.substr($termin["datum2"][$i],0,4);
if ( $termin["monat2"][$i] != $termin["monat1"][$i]) // falls Enddatum nicht im gleichem Monat
{
echo $termin["monat2"][$i].'';
if ( $termin["jahr2"][$i] != $termin["jahr1"][$i]) // falls Enddatum nicht im gleichen Jahr
{
echo substr($termin["jahr2"][$i],0,0).'';
}
}
echo '';
} else
{
echo '';
}
*/
$navmod_link ="front_content.php?client=".$client."?=".$lang."&idcat=78&idart=".$termin["idart"][$i]."";
echo '
<TR>
<TD> </TD>
<TD valign=top><A
href="'.$sess->url("$navmod_link").'" target="_self"><IMG
height=11 alt=""
src="img/pic_pfeil.gif" width=11
border=0></A></TD>
<TD valign=top width=9> </TD>
<TD width=147><A class=nav_1
href="'.$sess->url("$navmod_link").'" target="_self">'.substr($termin["datum1"][$i],8,2).'.'.substr($termin["datum1"][$i],5,2).'.'.substr($termin["datum1"][$i],0,4).'<br>'.urldecode($termin["titel"][$i]).'</A></TD>
<TD> </TD></TR>
<TR>
<TD colSpan=5><IMG height=8 alt=""
src="img/trans.gif" width=1
border=0></TD></TR>';
/*
echo ' in
'.urldecode($termin["ort"][$i]).'</p></div>
<p>'.urldecode($termin["titel"][$i]).'<br /><img src="img/pic_pfeil.gif" alt="Öffnet die Termindetails zu '.urldecode($termin["titel"][$i]).'" title="Infos zu '.urldecode($termin["titel"][$i]).'" /> <a class="nav_1" href="'.$sess->url("$navmod_link").'">weitere Informationen</a></p><br>';
*/
}
}
}
if ( $gefunden == 0 ) // falls kein aktueller Termin vorliegt
{
echo '
<TR>
<TD> </TD>
<TD valign=top><IMG
height=11 alt=""
src="img/pic_pfeil.gif" width=11
border=0></TD>
<TD valign=top width=9> </TD>
<TD width=147><a class=nav_1>Es liegen aktuell keine Termine vor!</a></TD>
<TD> </TD></TR>
<TR>
<TD colSpan=5><IMG height=8 alt=""
src="img/trans.gif" width=1
border=0></TD></TR>';
//echo ' <div><p>Es liegen aktuell keine Termine oder Veranstaltungen vor!</p></div>';
}
?>
Ich habe das Forum bereits durchsucht, aber keine der in den entsprechenden Freds angegebenen Lösungsvorschläge führt bei mir zur Lösung des Problems.
Könnte mir daher ggf nochmals jemand Hilfe leisten? Würde mich sehr freuen. Wenn weitere Infos benötigt werden, lasst es mich bitte wissen.
1000 Dank...!