/ Forside / Teknologi / Udvikling / PHP / Nyhedsindlæg
Login
Glemt dit kodeord?
Brugernavn

Kodeord


Reklame
Top 10 brugere
PHP
#NavnPoint
rfh 3959
natmaden 3372
poul_from 3310
funbreak 2700
stone47 2230
Jin2k 1960
Angband 1743
Bjerner 1249
refi 1185
10  Interkril.. 1146
Re: Peter kalder Kurt G
Fra : Kurt G


Dato : 07-02-11 13:40

Dette er fortsættelsen af en tråd fra dk.edb.internet.clientside.

KLIPPET
> Hej Kurt!
>
> De ser meget fint ud og er velegnet til min kones anvendelse. Jeg har
> lovet hende at hun får det ind på hjemmesiden når det virker. Hun skal
> derefter selv lave nye datoer/arrangementer til tekstfilen (mødelisten).
>
> Har du selve scriptet som "læser" tekstfil (Er det en .txt-fil?)
>
> hilsen
> Peter

Jeg har det både som ASP og PHP. Men da ASP nok er på retur, vil jeg
foreslå, at vi flytter 'samtalen' over i PHP-gruppen!
Mvh Kurt

Her er listningen til min funktion til at lave en tabel med møder.
Der er brugt to underfoldere til billeder, een til de billeder, som hører
til 'ordinære' møder (arkivaften) og een for billeder til foredrag
(moedepic)!

Teksfilen med oplysningerne om møderne hedder program.txt og ligger i samme
folder som funktionsfilen. Opbygningen af denne fil ses her:
// Linier som begynder med //, vises ikke
// Måneden skal skrives med et tal
// Rækkefølgen skal være stigende efter dato, da den automatiske visning
viser det første arrangement, hvor datoen er senere end dags dato.
// Vil du i et af tekstfelterne have en ny linie, indsætter du <br> i
linien. Ligeledes kan du bruge andre HTML-markører, f.eks. <b>-</b>
// Felternes rækkefølge er:
Mødetype|År|Dag|Dato|Måned|Tid|Beskrivelse|Billedefilnavn|Billedtekst|
// Jeg har brugt to mødetyper, 0 til foredrag og lignende og 1 til ordinære
klubmøder.
// Eks:
1|2010|Mandag|29|11|19-21|<b>Arkivaften</b><br>Vi higer og søger. Hyggeligt
arbejdssamvær på Arkivet.<br>Harry sørger for kaffen|arkivaften.jpg|Fra en
arkivaften|
0|2010|Onsdag|8|12|19.30|<b>Lysbilleder om Sahl kirke og dens gyldne
alter</b><br>Kristian Knudsen, Vinderup, viser og fortæller<br>Medbring
kaffe|Sahl.jpg|Sahl Kirke|

Datosammenligningen er noget amatøragtig, men den fungerer upåklageligt. Den
stammer fra ASP-udgaven; jeg fandt aldrig en funktion i ASP til at
sammenligne datoer, så det blev på denne måde!

Mvh Kurt

<?php
//-----------------------------------------------------
//------ Vis alle møder efter dags dato. ------
//-----------------------------------------------------
Function visallemoeder()
{
// Lav først en liste over billedfilerne
// Open images directory
$dir = opendir($_SERVER['DOCUMENT_ROOT']."/moeder/arkivaften");
// Overfør filer i images directory til $NameArray
while (($file = readdir($dir)) != false)
{
$Streng = Trim($file);
If (strripos($Streng ,".jpg") != "")
{$NameArray[] = $Streng ;}
}
closedir($dir);

//----- Åbn tekstfilen med aktivitetsprogrammet og -----
//----- overfør linierne til et array ved navn $felter -----
$fil = fopen($_SERVER['DOCUMENT_ROOT']."/testmoeder/program.txt","r");
while(!feof($fil))
{
$streng = fgets($fil);
if (substr($streng,0,2) !="//") //Det er ikke en kommentar
{
$felter[] = $streng;
}
}
fclose($fil);

//---------- Lav overskriften ----------
Echo "<font size='2'>";
?>
<table border="1" width="660" cellpadding="4" style="border-collapse:
collapse">
<tr>
<td width="760" bgcolor='#FFFF80' colspan="4">
<p style="text-align: center">
<font size="4"><b>Møder i XXXX Forening<br>
</b></font><font size="2"><b>Hvor intet andet er nævnt, holdes møderne
på Arkivet</b></font></td>
</tr>
<tr>
<td width="50" bgcolor='#FFFF80' align="center"><b>År</b></td>
<td width="150" bgcolor='#FFFF80' align="center"><b>Dato</b></td>
<td width="360" bgcolor='#FFFF80' align="center"><b>Arrangement</b></td>
<td width="200" bgcolor='#FFFF80' align="center"><b>&nbsp;</b></td>
</tr>
<?php

//------------ Find dags dato -----------------
$nu = getdate();
$nowaar = $nu["year"];
$nowmaaned = $nu["mon"];
$nowdag = $nu["mday"];
$nowtal = $nowdag+($nowmaaned*100)+($nowaar*10000);
$forrige = 0;

$taeller = 0;
For ($loop=0; $loop < count($felter)-1; $loop++)
{
//Se efter, om tidspunktet i programmet er senere end dags dato
//Felternes rækkefølge i program.txt er (feltnummer-feltbetegnelse):
0-Type|1-År|2-Dag|3-Dato|4-Måned|5-Tid|6-Beskrivelse|7-billedefilnavn|8-billedtekst
$MoedeArray = explode("|",$felter[$loop]);
$aar = $MoedeArray[1];
$maaned = $MoedeArray[4];
$dag = $MoedeArray[3];
$tal = $dag+($maaned*100)+($aar*10000);
$dif = $tal-$nowtal;
If ($nowtal <= $tal) //Programpunkt efter dags dato
{
//---Giv hveranden linie ny baggrundsfarve---
$taeller++;
$rest = $taeller % 2;
if ($rest == 0) {$bgfarve="#FFFFb0";}else{$bgfarve="#FFFFd0";}
echo "<tr>";
echo "<td width='50' valign='top' bgcolor='$bgfarve'
align='center'>".$MoedeArray[1]."</td>";
echo "<td width='150' valign='top' bgcolor='$bgfarve'>".$MoedeArray[2]."
d. ".$MoedeArray[3]."/".$MoedeArray[4]."<br>Kl. ".$MoedeArray[5]."</td>";
echo "<td width='360' valign='top'
bgcolor='$bgfarve'>".$MoedeArray[6]."</td>";
echo "<td width='200' valign='top' bgcolor='$bgfarve' align='center'>";
if ($MoedeArray[0] == "1") //Det er en arkivaften
{
$billed_nr = rand(0,count($NameArray)-1);
$BilledStreng = $NameArray[$billed_nr];
echo "<img border='1' <img src='arkivaften/".$BilledStreng ."'
alt='Billede fra arkivaften'>";
If ($MoedeArray[8] != "")
{
echo "<br>".$MoedeArray[8]."<br>"; //Skriv billedtekst
}
else
{
echo "<br>Fra en arkivaften!<br>"; //Skriv default billedtekst
}
}
else
{ // Det er et foredrag eller lignende
//Vis et billede, hvis der er et.
If ($MoedeArray[7] != "") //Feltet er ikke tomt, der er et billede
{
$Streng = $MoedeArray[7];
echo "<img border='0' <img src='moedepic/".$Streng."' alt='Billede:
".$MoedeArray[7]."'>";
echo "<br>".$MoedeArray[8]."<br>"; //Skriv billedtekst
}
}
echo "</td>";
echo "</tr>";
}
}
echo "</table></font>";
} //Slut på funktionen visallemoeder
?>



 
 
Søg
Reklame
Statistik
Spørgsmål : 177422
Tips : 31962
Nyheder : 719565
Indlæg : 6407891
Brugere : 218876

Månedens bedste
Årets bedste
Sidste års bedste