Avatar billede t-rex Nybegynder
04. maj 2006 - 19:07 Der er 6 kommentarer og
1 løsning

Tabel og udtræk fra mysql

Hej Eksperter

Jeg sidder med et lille problem. Jeg er ved at lave en dags kalender hvor man kan se hvilken tid der er optaget. Men kan ikke finde ud af hvordan man skal trække det ud så det bliver nemmest for mig at lave.

I min database har jeg følgende ting: eks. start: 2 (08.30) slut: 4 (09.00) og en tekst.

Og min tabel ser sådan ud:

      <table border="0" cellpadding="0" cellspacing="0" class="dagkallender_table">
      <tr class="dagkallender_optaget_bgcolor_tr">
        <td width="36" class="dagkallender_tid_td">08.00</td>
        <td width="499" class="dagkallender_aftale_td">&nbsp;</td>
      </tr>
      <tr class="dagkallender_bgcolor_tr">
        <td class="dagkallender_tid_td">08.15</td>
        <td class="dagkallender_aftale_td">&nbsp;Aftale</td>
      </tr>
      <tr>
        <td class="dagkallender_tid_td">08.30</td>
        <td class="dagkallender_aftale_td">&nbsp;</td>
      </tr>
      <tr class="dagkallender_bgcolor_tr">
        <td class="dagkallender_tid_td">08.45</td>
        <td class="dagkallender_aftale_td">&nbsp;</td>
      </tr>
      <tr>
        <td class="dagkallender_tid_td">09.00</td>
        <td class="dagkallender_aftale_td">&nbsp;</td>
      </tr>
      <tr class="dagkallender_bgcolor_tr">
        <td class="dagkallender_tid_td">09.15</td>
        <td class="dagkallender_aftale_td">&nbsp;</td>
      </tr>
      <tr>
        <td class="dagkallender_tid_td">09.30</td>
        <td class="dagkallender_aftale_td">&nbsp;</td>
      </tr>
</table>

Det vil sige at den skal går ind og se på at tiden mellem 08.30 (2) og 09.00 (4) er optaget og ændre farven på disse felter. 

Håber i kan hjælpe mig.
Avatar billede jakobdo Ekspert
04. maj 2006 - 22:09 #1
Altså det med at se om tiden er inden for et tidspunkt, det kan du lave med:

$tid_du_har_stående_i_tabellen = "08.00"; //og skifter 08.15, 08.30 osv...
if($tid_du_har_stående_i_tabellen < $start_tid && $tid_du_har_stående_i_tabellen > $slut)
//Vi skal farve TD'en...
else
//Vi skal ikke farve TD'en...

Selve dit udtræk fra databasen, ville jeg så lave med:
SELECT * FROM tabel WHERE CURDATE(datotid) = CURDATE() ORDER BY datotid;
Så får du dagens records.
Dem skal du så løbe igennem og test op mod tiderne i hver af dine TD'er.
Avatar billede t-rex Nybegynder
06. maj 2006 - 15:47 #2
fik det løst selv...
men smider du ikke et svar jakobdo for dit kan også bruges :-)

her er min løsningen jeg kom frem til:

<?php
$rows_c = 1;
$rows = 36;
$tid = "08.00";

echo $tid;

while ($rows >= $rows_c)
    {
    $res = mysql_query(" SELECT * FROM kallender WHERE start = '$rows_c' ") or die("fejl i :<br>" .mysql_error());
    while($row = mysql_fetch_array($res))
        {
        $start = $row['start'];
        $slut = $row['slut'];
       
        if ($slut != "")
            {
            $rows_c = $slut;
            };
?>     
      <tr class="dagkallender_optaget_bgcolor_tr">
        <td class="dagkallender_tid_td">08.15</td>
        <td class="dagkallender_aftale_td">&nbsp;</td>
      </tr>
<?Php                   
        };
        $rows_c++;
?>
      <tr class="dagkallender_bgcolor_tr">
        <td class="dagkallender_tid_td">08.15</td>
        <td class="dagkallender_aftale_td">&nbsp;</td>
      </tr>
<?Php
    };
?>
Avatar billede jakobdo Ekspert
07. maj 2006 - 07:42 #3
Et svar!
Avatar billede t-rex Nybegynder
09. maj 2006 - 08:54 #4
ja for du har jo sådan set svaret på det jeg spurgte om...
Avatar billede jakobdo Ekspert
09. maj 2006 - 09:46 #5
Fik ikke ramt svar, men kommentar!
Et svar igen! :o)
Avatar billede t-rex Nybegynder
09. maj 2006 - 10:18 #6
hehe :-)
Avatar billede jakobdo Ekspert
09. maj 2006 - 12:40 #7
Takker for point.
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