hej.
jag behöver hjälp med en funktion i ett script jag har, jag har redan fått veta vad som behövs göras men eftersom jag inte kan php så bra frågar jag här :).
det är ett script man ska kunna ändra månad och år för att få fram olika nyheter.
scriptet:
<form action='<?=$_SERVER[PHP_SELF];?>' method='POST'>
<?php
$DBhost = "localhost";
$DBdatabase = "nyhet";
$DBuser = "DBA";
$DBpass = "";
mysql_connect("$DBhost","$DBuser","$DBpass") or exit(mysql_error());
mysql_select_db("$DBdatabase") or exit(mysql_error());
function getDayName($dayNr){
$dayNames = array (
'Söndag', 'Måndag', 'Tisdag', 'Onsdag',
'Torsdag', 'Fredag', 'Lördag');
return $dayNames[$dayNr];
}
function getMonthName($monthNr){
$monthNames = array(
1 => 'Januari', 'Februari', 'Mars', 'April', 'Maj', 'Juni',
'Juli', 'Augusti', 'September', 'Oktober', 'November', 'December');
return $monthNames[$monthNr];
}
function makeDayLink($day,$month,$year){
$timestamp = mktime(1,1,1,$month,$day,$year);
$eventQuery = @mysql_query("SELECT eventtime FROM mbaEvents WHERE eventtime='$timestamp'") or exit(mysql_error());
$antal = mysql_num_rows($eventQuery);
if($antal > 0){
$link = "<a href='$_SERVER[PHP_SELF]?showdayevent=$timestamp'>$day</a>";
}else{
$link = "<span class='mini'>$day</span>";
}
return $link;
}
echo"<center><table width='500' style='border-style:solid;border-color:#BEDCF1;border-width:1;'>";
$thismonth = getMonthName(date("n"));
$thisday = getDayName(date("w"));
$thisDate = date("d");
echo"<tr bgcolor='#BEDCF1'><td colspan='2'><center><span class='big'>$thisday $thisDate $thismonth</span></center></td></tr>";
echo"<tr><td valign='top'>";
echo"<SELECT name='year' onChange='document.forms[0].submit();'>";
$selectedYear = date("Y");
if(!isset($_POST[year])){
$_POST[year] = $selectedYear;
}else{
$selectedYear = $_POST[year];
}
if(isset($_GET[showdayevent])){
$_POST[year] = date("Y",$_GET[showdayevent]);
$selectedYear = date("Y",$_GET[showdayevent]);
}
for($i=$selectedYear-1;$i<=$selectedYear+2;$i++){
if($selectedYear == $i){
$sel = "SELECTED";
}else{
$sel = "";
}
echo "<option value='$i' $sel>$i</option>";
}
echo"</SELECT> ";
echo"<SELECT name='month' onChange='document.forms[0].submit();'>";
$selectedMonth = date("n");
if(!isset($_POST[month])){
$_POST[month] = $selectedMonth;
}else{
$selectedMonth = $_POST[month];
}
if(isset($_GET[showdayevent])){
$_POST[month] = date("m",$_GET[showdayevent]);
$selectedMonth = date("m",$_GET[showdayevent]);
}
for($i=1;$i<=12;$i++){
if($selectedMonth == $i){
$sel = "SELECTED";
}else{
$sel = "";
}
$selMonth = getMonthName($i);
echo "<option value='$i' $sel>$selMonth</option>";
}
echo"</SELECT>";
echo"</td></tr>";
if(!isset($_GET['showdayevent'])){
$geteventtimestamp = mktime(1,1,1,date("m"),date("d"),date("Y"));
$evDate = "idag";
}else{
$geteventtimestamp = $_GET[showdayevent];
$evDate = date("y-m-d",$geteventtimestamp);
}
echo"<tr><td valign='top' align='left' class='cellborder'><hr></td>";
echo "</td></tr>";
echo"<tr><td colspan='2'>";
$daysInMonth = date("t",mktime(1,1,1,$_POST['month'],1,$_POST['year']));
$firstDayNr = date("w",mktime(1,1,1,$_POST['month'],1,$_POST['year']));
if($firstDayNr == 0){
$firstDayNr = 7;
}
$firstDayNr-=2;
$dayNumberArray = array();
for($i=0;$i<=$firstDayNr;$i++){
$dayNumberArray[] = "";
}
for($i=1;$i<=$daysInMonth;$i++){
if($i <= 9){
$dNr = "0$i";
}else{
$dNr = $i;
}
$dayNumberArray[] = $dNr;
}
echo"<center><table>";
$scud = mysql_db_query('nyhet' , "SELECT * FROM nyhet WHERE manad = '$manad' && ar = '$ar' ORDER BY id DESC") or exit(mysql_error());
while ($rad = mysql_fetch_array ($scud)) {
echo " <table width=\"100%\" border=\"0\" cellspacing=\"0\" cellpadding=\"0\">\n";
echo " <tr>\n";
echo " <td>\n";
echo " <table width=\"90%\" border=\"0\" align=\"center\" cellpadding=\"0\" cellspacing=\"0\">\n";
echo " <tr>\n";
echo " <td><img src=\"../Main/Menu_table.gif\" width=\"100%\" height=\"10\"></td>\n";
echo " </tr>\n";
echo " <tr>\n";
echo " <td><table width=\"100%\" border=\"0\" cellspacing=\"0\" cellpadding=\"0\">\n";
echo " <tr>\n";
echo " <td width=\"30%\"><div align=\"center\"><img src=\"../Bilder/Nyhet.gif\" widt§h=\"15\" height=\"15\"></div></td>\n";
echo " <td width=\"70%\" class=\"Datum\"><strong>","Skrivet:", " ", $rad[1], " ", $rad[2] , "," , " ", $rad[3], " ", "av", " " ,"<a href=\"mailto:", $rad[6],"\">", $rad[4],"</A></strong></td>\n";
echo " </tr>\n";
echo " </table></td>\n";
echo " </tr>\n";
echo " </table>\n";
echo " </td>\n";
echo " </tr>\n";
echo " <tr> \n";
echo " <td>&</td>\n";
echo " </tr>\n";
echo " <tr>\n";
echo " <td>\n";
echo " <table width=\"90%\" align=\"center\" border=\"0\" cellspacing=\"0\" cellpadding=\"0\">\n";
echo " <tr>\n";
echo " <td>", $rad[5] ,"</td>\n";
echo " </tr>\n";
echo " </table>\n";
echo " </td>\n";
echo " </tr>\n";
echo " $rad[7]\n";
echo " <tr> \n";
echo " <td>&</td>\n";
echo " </tr>\n";
echo " </table>\n";}
echo"</table></center>";
echo"</td></tr>";
echo"</table></centeR>";
?>
</form>
detta behövs göras:
När man ändrar så sparar du år i $ar, månad i $manad (dvs, de värdena man valt i din drop-down-meny)
Sen gör du om $manad från siffervärdet (1, 2..., 12) till månadens namn (januari, februari, osv...)
tacksam för hjälp
/micke