Frågan#1 Jag har klipp & klistrat lite för att få ihop ett kalendarie. Det hämtar ut alla poster från nu och listar dom under sin månad.
Så här ser min php-kod ut:
$months = array("Januari","Februari","Mars","April","Maj","Juni","Juli","Augusti","September","Oktober","November","December");
$curmonth = 0;
$sql = "SELECT * FROM kalendarium WHERE datum >= NOW() ORDER BY datum DESC, kid DESC";
$resultat = @mysql_query($sql) or die ("Kunde ej utföra frågan.");
while ($row = mysql_fetch_array($resultat)) {
extract($row);
$nowdate = substr($datum, 5, 2);
if ($nowdate != $curmonth) {
echo "<dd><h3>" . $months[$nowdate-1] . "</h3></dd>";
$curmonth = $nowdate;
}
$day = substr($datum, 8, 2);
$space = " ";
$string = "$day";
$string = ereg_replace('^0', $space, $string);
echo "<dt> $string <a href=\"?id={$row["kid"]}\">". (htmlspecialchars($row["rubrik"])) ."</a></dt>";
}
Som ger resultat
Oktober
2 LOREM IPSUM
1 LOREM IPSUM
September
20 LOREM IPSUM
18 LOREM IPSUM
10 LOREM IPSUM
1 LOREM IPSUM
Men jag skulle vilja få det att se ut så här
Oktober
2 LOREM IPSUM
1 LOREM IPSUM
September
20 LOREM IPSUM
18 LOREM IPSUM
10 LOREM IPSUM
1 LOREM IPSUM
Det jag skulle vilja få hjälp med är att få till det så det ser snyggare ut, gärna så här
<dl>
<dd>Oktober</dd>
<dt>12 LOREM IPSUM</dt>
<dt> 2 LOREM IPSUM</dt>
</dl>
<dl>
<dd>September</dd>
<dt>21 LOREM IPSUM</dt>
<dt>20 LOREM IPSUM</dt>
</dl>
Så att jag kan göra dom formateringar jag vill med CSSen
Några tips?
MatteMedlem sedan aug. 20002 975 inläggTesta något på det här hållet:
$months = array(1=>"Januari", "Februari", "Mars", "April", "Maj", "Juni", "Juli", "Augusti", "September", "Oktober", "November", "December");
$calender = array();
$sql = "SELECT * FROM kalendarium WHERE datum >= NOW() ORDER BY datum DESC, kid DESC";
$resultat = @mysql_query($sql) or die ("Kunde ej utföra frågan.");
while ($row = mysql_fetch_assoc($resultat)) {
$time = strtotime($row['datum']);
$row['day'] = preg_replace("/^0/", " ", date("m", $time));
$calendar[$months[date("n", $time)]][] = $row;
}
foreach ($calendar as $month => $event) {
echo "<dl>\n\t<dd><h3>$month</h3></dd>\n";
foreach ($event as $row) {
echo "\t<dt> {$row['day']} <a href=\"?id={$row["kid"]}\">". (htmlspecialchars($row["rubrik"])) ."</a></dt>\n";
}
echo "</dl>\n";
}
Matte skrev:
Testa något på det här hållet:
$months = array(1=>"Januari", "Februari", "Mars", "April", "Maj", "Juni", "Juli", "Augusti", "September", "Oktober", "November", "December");
$calender = array();
$sql = "SELECT * FROM kalendarium WHERE datum >= NOW() ORDER BY datum DESC, kid DESC";
$resultat = @mysql_query($sql) or die ("Kunde ej utföra frågan.");
while ($row = mysql_fetch_assoc($resultat)) {
$time = strtotime($row['datum']);
$row['day'] = preg_replace("/^0/", " ", date("m", $time));
$calendar[$months[date("n", $time)]][] = $row;
}
foreach ($calendar as $month => $event) {
echo "<dl>\n\t<dd><h3>$month</h3></dd>\n";
foreach ($event as $row) {
echo "\t<dt> {$row['day']} <a href=\"?id={$row["kid"]}\">". (htmlspecialchars($row["rubrik"])) ."</a></dt>\n";
}
echo "</dl>\n";
}
Grymt bra, TACK
$row['day'] = preg_replace("/^0/", " ", date("d", $time));
Ändrar ...date("m"... till "d" så datumen kommer ut. Tack igen