Avatar billede nickern Nybegynder
07. marts 2007 - 19:59 Der er 13 kommentarer

Vis indhold før en bestemt dato

Hejsa

Jeg står og skal forbedre mit cms - så jeg lettere kan styre mine sider :)

Så jeg vil høre om nogen kan hjælpe mig med en kode som gør at mit indhold kun vises hvis datoen den pågældende dag er før udløbsdagen.

Nogen der kan hjælpe her?
Avatar billede soundgarden Nybegynder
07. marts 2007 - 21:37 #1
<?php
mysql_select_db($database_CMS, $CMS);
$query_rsKalender = "SELECT * FROM tbl_kalender WHERE aar = 2007 ORDER BY maaned ASC, dato ASC, tid1 ASC, tid2 ASC";
$rsKalender = mysql_query($query_rsKalender, $CMS) or die(mysql_error());
$row_rsKalender = mysql_fetch_assoc($rsKalender);
$totalRows_rsKalender = mysql_num_rows($rsKalender);
?>


<body>

<?php $datosortpast = $row_rsPast['aar'] . $row_rsPast['maaned'] . $row_rsPast['dato'] . $row_rsPast['tid1'] . $row_rsPast['tid2'];
$todaypast = date ("YmdHi");

    if ($datosortpast >= $todaypast ) { // her bestemmes om det skal være før eller efter dags dato der skal udskrives ?>
<?php    } ?>
<?php do {
$datosort = $row_rsKalender['aar'] . $row_rsKalender['maaned'] . $row_rsKalender['dato'] . $row_rsKalender['tid1'] . $row_rsKalender['tid2'];
$today = date ("YmdHi");

if ($datosort <= $today ) { ?>
<table width="100%" border="0" cellspacing="0" cellpadding="0">
  <tr>
    <td><?php echo $row_rsKalender['dato']; ?></td>
    <td>&nbsp;</td>
    <td><?php echo $row_rsKalender['mdr']; ?></td>
    <td><?php echo $row_rsKalender['dag']; ?></td>
    <td>&nbsp;</td>           
    <td><?php echo $row_rsKalender['aktivitet']; ?></td>
  </tr>
</table>
<?php    }?>
<?php    } while ($row_rsKalender = mysql_fetch_assoc($rsKalender)); ?>
Avatar billede nickern Nybegynder
07. marts 2007 - 21:43 #2
ok - hvad er det lige jeg selv skal rette til?

HVad er $CMS i denne linie mysql_select_db($database_CMS, $CMS); ?

Kan jeg godt have en dato i samme kollonne, hvis jeg bruger dette script?
Avatar billede Slettet bruger
07. marts 2007 - 21:46 #3
Du kan bare i dit udtræk:
SELECT * FROM tbl_kalender WHERE udlobsdato < NOW()
Avatar billede nickern Nybegynder
07. marts 2007 - 22:01 #4
Okay tak:) Coldgate

Men hvad er det den spytter ud og hvorfra? jeg kan ikke lige se hvor jeg skal sætte min echo henne af? hvor den skal starte og slutte for at jeg ikke ødelægger noget.
Avatar billede soundgarden Nybegynder
07. marts 2007 - 22:01 #5
$CMS er navnet på din connection til databasen - men hvis du forbinder på en anden måde skriver du bare:

SELECT * FROM tbl_kalender WHERE aar = 2007 ORDER BY maaned ASC, dato ASC, tid1 ASC, tid2 ASC;
Avatar billede soundgarden Nybegynder
07. marts 2007 - 22:02 #6
hvad hedder dine atributter?
Avatar billede soundgarden Nybegynder
07. marts 2007 - 22:08 #7
eller nærmere - du skal have attributter der hedder:
aar der skal have 4 tal eks 2007
maaned der skal have 2 tal eks 03
dato der skal have 2 tal eks 07
tid1 der skal have 2 tal eks 22
tid2 der skal have 2 tal eks 07
altså skriver den: 200703072207 og tjekker om tidspunkt er <= $today = date ("YmdHi");
Avatar billede soundgarden Nybegynder
07. marts 2007 - 22:10 #8
hvis ikke tid på dagen er vigtig skriver du bare:
aar der skal have 4 tal eks 2007
maaned der skal have 2 tal eks 03
dato der skal have 2 tal eks 07
og ændre $today = date ("YmdHi"); til $today = date ("Ymd");
Avatar billede nickern Nybegynder
07. marts 2007 - 22:25 #9
Okay - men jeg var sådan set interesseret i at have det i en variabel - altså så det hele gemmes i en kollone i stedet for 3.
Hvor kan jeg indsætte mit echo i din kode der soundgarden?

er det rigtigt forstået at denne linie bare er min connection til db?
mysql_select_db($database_CMS, $CMS);
Normalt bruger jeg bare denne:
<? require"db.php"; ?> er det det samme?
Avatar billede soundgarden Nybegynder
07. marts 2007 - 23:12 #10
for mig giver det bare mere overskuelighed at have det i 3 attributter...

Ang. db er det ikke helt korrekt.

Jeg har oprettet en mappe der hedder: connection
i den mappe er dere en fil der hedder cmsconnect.php
denne fil indeholder koden:

<?php
# FileName="Connection_php_mysql.htm"
# Type="MYSQL"
# HTTP="true"
$hostname_CMS = "db-adr.dk";
$database_CMS= "db-navn";
$username_CMS= "brugernavn";
$password_CMS= "adgangskode";
$CMS= mysql_pconnect($hostname_CMS, $username_CMS, $password_CMS) or trigger_error(mysql_error(),E_USER_ERROR);
?>

Deraf: $CMS

Den fil kalder jeg så ligesom du gør med:
<?php require_once('../connection/cmsconnect.php'); ?>

men i praksis er det jo nærmest det samme.
Håber du får det til at fungere.
Tak for i aften!
Avatar billede nickern Nybegynder
14. marts 2007 - 21:45 #11
Okay:) Jeg prøver det snart af:) Så kan vi få givet nogle point, hvis jeg kan finde hoved og hale i det:)
Avatar billede Slettet bruger
16. marts 2007 - 19:41 #12
Jeg ville fortrække du lave et felt i din database f.eks. dato der så havde data type: date.
Så skal dato indsættes 2007-03-16, i databasen, og så kan du automatisk bare bruge kaldet:
SELECT * FROM tbl_kalender WHERE dato > NOW()

F.eks.
<?PHP
include("database.php"); // som indeholder connectionen til din database
$sql = "SELECT * FROM tbl_kalender WHERE dato > NOW();";
$query = mysql_query($sql);
while($row = mysql_fecth_array($query)) {
  echo date("d-m/Y", $row['dato'])."<br />;
  echo $row['nogetAndet']."<br /><br />\n;
  echo "<hr />\n";
}
?>

Så vil den printe d
Avatar billede nickern Nybegynder
16. marts 2007 - 21:10 #13
dvs at jeg bare skal indsætte 'WHERE dato > NOW();' i min kode?

Kan man godt have 2 WHERE koder - eller hvordan skal det så lyde? Bare jeg har allerede en WHERE.
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
Vi tilbyder markedets bedste kurser inden for webudvikling

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester