Hallo!

Ik heb een systeem gebouwd waarmee je promotierondes kan zien (wie en wanneer iemand promoveert). Maar ik wil dat hij alleen de gegevens uit de database haalt waarvan de tijd (bv. 13:00 of 15:30) nog niet geweest is. Dus als het nu bijvoorbeeld 07:39 is en iemand heeft een promotieronde toegevoegd aan de database met de tijd 07:30 dat die promotieronde dan niet meer te zien is. Zelf weet ik niet hoe dit moet, dus ik hoop dat jullie het begrijpen en mij kunnen helpen!

<ul class="products-list product-list-in-box">
                  <?php
                  $data = $link->query("SELECT `gebruikersnaam`, `tijd`, `datum` FROM `promotie_rondes` ORDER BY `datum` DESC LIMIT 3");
                  $rows = $data->num_rows;
                  if(!empty($rows)) {
                    foreach ($data as $key => $value) {
                       echo "
                       <li class='item'>
                         <div class='product-img'>
                          <img src='https://www.leet.ws/leet-imaging/avatar/".$value['gebruikersnaam']."&headonly=1'  alt='Promotieronde gever'>
                         </div>
                         <div class='product-info'>
                           <a href='profiel/".$value['gebruikersnaam']."' class='product-title'>Promotieronde van ".$value['tijd']."</a>
                           <span class='product-description'>
                              Deze promotieronde wordt gegeven door <b>".$value['gebruikersnaam']."</b>
                           </span>
                         </div>
                       </li>";
                     }
                   }
                   if($rows == 1) {
                     echo "
                     <li class='item'>
                       <div class='product-img'>
                        <img src='paneel/assets/img/frank.png' alt='Promotieronde gever'>
                       </div>
                       <div class='product-info'>
                         <a href='' class='product-title'>Promotieronde van onbekend</a>
                         <span class='product-description'>
                            Deze promotieronde wordt gegeven door <b>Onbekend</b>
                         </span>
                       </div>
                     </li>";
                     echo "
                     <li class='item'>
                       <div class='product-img'>
                        <img src='paneel/assets/img/frank.png' alt='Promotieronde gever'>
                       </div>
                       <div class='product-info'>
                         <a href='' class='product-title'>Promotieronde van onbekend</a>
                         <span class='product-description'>
                            Deze promotieronde wordt gegeven door <b>Onbekend</b>
                         </span>
                       </div>
                     </li>";
                   }
                   if($rows == 2) {
                     echo "
                     <li class='item'>
                       <div class='product-img'>
                        <img src='paneel/assets/img/frank.png' alt='Promotieronde gever'>
                       </div>
                       <div class='product-info'>
                         <a href='' class='product-title'>Promotieronde van onbekend</a>
                         <span class='product-description'>
                            Deze promotieronde wordt gegeven door <b>Onbekend</b>
                         </span>
                       </div>
                     </li>";
                   }
                   if(empty($rows)) {
                     echo "
                     <li class='item'>
                       <div class='product-img'>
                        <img src='paneel/assets/img/frank.png' alt='Promotieronde gever'>
                       </div>
                       <div class='product-info'>
                         <a href='' class='product-title'>Promotieronde van onbekend</a>
                         <span class='product-description'>
                            Deze promotieronde wordt gegeven door <b>Onbekend</b>
                         </span>
                       </div>
                     </li>";
                     echo "
                     <li class='item'>
                       <div class='product-img'>
                        <img src='paneel/assets/img/frank.png' alt='Promotieronde gever'>
                       </div>
                       <div class='product-info'>
                         <a href='' class='product-title'>Promotieronde van onbekend</a>
                         <span class='product-description'>
                            Deze promotieronde wordt gegeven door <b>Onbekend</b>
                         </span>
                       </div>
                     </li>";
                     echo "
                     <li class='item'>
                       <div class='product-img'>
                        <img src='paneel/assets/img/frank.png' alt='Promotieronde gever'>
                       </div>
                       <div class='product-info'>
                         <a href='' class='product-title'>Promotieronde van onbekend</a>
                         <span class='product-description'>
                            Deze promotieronde wordt gegeven door <b>Onbekend</b>
                         </span>
                       </div>
                     </li>";
                   }
                  ?>
                </ul>


De database opbouw ziet er zo uit:
__________________________________________
id |gebruikersnaam |tijd |datum|

de tijd is van 00:00 tot 23:30 en de datum is unix timestamp

Als er nog vragen zijn hoor ik het graag
SELECT .......WHERE datum >= NOW() ......
Dus in feite wil je 3 rijen die groter zijn dan 2 uur vanaf de huidige tijd en datum.
Dat kan zo:

<?php
$data = $link->query("SELECT gebruikersnaam, 
                             tijd,
                             datum
                             FROM
                             promotie_rondes
                             WHERE 
                             DATE_ADD(NOW(), INTERVAL 2 HOUR) > datum
                             ORDER BY datum DESC 
                             LIMIT 3");
?>

Tip:
Schrijf je query onder elkaar, dat is overzichtelijker.
Is dit wel in unix timestamp? Want ik heb de query veranderd maar dit werkt NIET. Hij blijft ze allemaal showen, terwijl de unix timestamp 05:36:22 uur is dus 1485149760
Bedankt voor de reacties!
waaarom zou je het aantal seconden sinds 1970 in de database willen opslaan, als je een tijdstip bedoelt?

Werken met een kolom van het type DATETIME waarin je zoiets als '2017-01-23 10:09:01" opslaat, maakt je query gemakkelijker
Oeps niet verder gelezen dan het probleem. :)
Je hebt een aparte datum en tijd veld.
Dat is helemaal niet handig.
Zoals Ivo al aangeeft, is het makkelijker met 1 DATETIME kolom te werken.
Mocht je er voor gekozen hebben voor een unix timestamp om daarmee bijvoorbeeld iets in javascript te doen, kan je beter het andersom doen. Immers, als je DATETIME kolom hebt dan is berekenen veel makkelijker.
Mocht het in javascript nodig zijn dan is het om converteren van een DATETIME kolom naar unix timestamp makkelijker...
Misschien niet 100% het juiste antwoord, maar dit heb ik ooit bedacht :

http://adoptive.esy.es/afspraken/

Het zoeken gebeurt zo :

<?php

$hourBegin = 10;
$hourEnd = 15;
$hourBeginSearch = ( $hourBegin < 10 ? '0' : '' ) . $hourBegin . ":00:00";
$hourEndSearch = ( $hourEnd < 10 ? '0' : '' ) . $hourEnd . ":00:00";

$querySelect = "SELECT * FROM afspraken WHERE naam LIKE '%' AND ( tijd >= '" . $hourBeginSearch . "' ) AND ( tijd <= '" . $hourEndSearch . "' ) ORDER BY tijd ASC, naam ASC;";
?>


Zonodig uitbreiden met minuten.
Unix timestamp veroorzaakt geen problemen m.o.a. als er een seconde wordt toegevoegd aan de tijd in het nieuw jaar. En thx

[size=xsmall]Toevoeging op 23/01/2017 13:33:07:[/size]

Maar als ik het verander naar DATETIME verander, hoe krijg ik het dan werkend? Want de query die eerder werd gegeven door Bart V B. En 2 timestamps doe ik om de volgende rede: Iemand moet aangeven wanneer hij/zij een promotieronde wilt doen, dat is de tijd kolom. De datum kolom is voor wanneer hij/zij het heeft ingevoerd, om bv. te checken.
Ipv een tijdkolom met 13:33 en een datumkolom met een timestamp, vul je in een datetime kolom

'2017-01-23 13:33:00'



[size=xsmall]Toevoeging op 23/01/2017 14:39:43:[/size]

en als je iets wilt waarbij het om de datum gaat en de tijd in de weg zou zitten, dan doe je

DATE(datumkolom) en zou je dus 2017-01-23 krijgen.

Ik heb het werkend gekregen, met unix timestamp ;-)


<ul class="products-list product-list-in-box">
                  <?php
                  $data = $link->query("SELECT gebruikersnaam,
                             promotie_tijd
                             FROM
                             promotie_rondes
                             WHERE
                             ".strtotime('UTC +1 hour')." >= `promotie_tijd`
                             ORDER BY `promotie_tijd` DESC
                             LIMIT 4");
                  $rows = $data->num_rows;
                  if(!empty($rows)) {
                    foreach ($data as $key => $value) {
                       echo "
                       <li class='item'>
                         <div class='product-img'>
                          <img src='https://www.leet.ws/leet-imaging/avatar/".$value['gebruikersnaam']."&headonly=1'  alt='Promotieronde gever'>
                         </div>
                         <div class='product-info'>
                           <a href='profiel/".$value['gebruikersnaam']."' class='product-title'>Promotieronde van ".gmdate('H:i', $value['promotie_tijd'])."</a>
                           <span class='product-description'>
                              Deze promotieronde wordt gegeven door <b>".$value['gebruikersnaam']."</b>
                           </span>
                         </div>
                       </li>";
                     }
                   }
                   if($rows == 1) {
                     echo "
                     <li class='item'>
                       <div class='product-img'>
                        <img src='paneel/assets/img/frank.png' alt='Promotieronde gever'>
                       </div>
                       <div class='product-info'>
                         <a href='' class='product-title'>Promotieronde van onbekend</a>
                         <span class='product-description'>
                            Deze promotieronde wordt gegeven door <b>Onbekend</b>
                         </span>
                       </div>
                     </li>";
                     echo "
                     <li class='item'>
                       <div class='product-img'>
                        <img src='paneel/assets/img/frank.png' alt='Promotieronde gever'>
                       </div>
                       <div class='product-info'>
                         <a href='' class='product-title'>Promotieronde van onbekend</a>
                         <span class='product-description'>
                            Deze promotieronde wordt gegeven door <b>Onbekend</b>
                         </span>
                       </div>
                     </li>";
                     echo "
                     <li class='item'>
                       <div class='product-img'>
                        <img src='paneel/assets/img/frank.png' alt='Promotieronde gever'>
                       </div>
                       <div class='product-info'>
                         <a href='' class='product-title'>Promotieronde van onbekend</a>
                         <span class='product-description'>
                            Deze promotieronde wordt gegeven door <b>Onbekend</b>
                         </span>
                       </div>
                     </li>";
                   }
                   if($rows == 2) {
                     echo "
                     <li class='item'>
                       <div class='product-img'>
                        <img src='paneel/assets/img/frank.png' alt='Promotieronde gever'>
                       </div>
                       <div class='product-info'>
                         <a href='' class='product-title'>Promotieronde van onbekend</a>
                         <span class='product-description'>
                            Deze promotieronde wordt gegeven door <b>Onbekend</b>
                         </span>
                       </div>
                     </li>";
                     echo "
                     <li class='item'>
                       <div class='product-img'>
                        <img src='paneel/assets/img/frank.png' alt='Promotieronde gever'>
                       </div>
                       <div class='product-info'>
                         <a href='' class='product-title'>Promotieronde van onbekend</a>
                         <span class='product-description'>
                            Deze promotieronde wordt gegeven door <b>Onbekend</b>
                         </span>
                       </div>
                     </li>";
                   }
                   if($rows == 3) {
                     echo "
                     <li class='item'>
                       <div class='product-img'>
                        <img src='paneel/assets/img/frank.png' alt='Promotieronde gever'>
                       </div>
                       <div class='product-info'>
                         <a href='' class='product-title'>Promotieronde van onbekend</a>
                         <span class='product-description'>
                            Deze promotieronde wordt gegeven door <b>Onbekend</b>
                         </span>
                       </div>
                     </li>";
                   }
                   if(empty($rows)) {
                     echo "
                     <li class='item'>
                       <div class='product-img'>
                        <img src='paneel/assets/img/frank.png' alt='Promotieronde gever'>
                       </div>
                       <div class='product-info'>
                         <a href='' class='product-title'>Promotieronde van onbekend</a>
                         <span class='product-description'>
                            Deze promotieronde wordt gegeven door <b>Onbekend</b>
                         </span>
                       </div>
                     </li>";
                     echo "
                     <li class='item'>
                       <div class='product-img'>
                        <img src='paneel/assets/img/frank.png' alt='Promotieronde gever'>
                       </div>
                       <div class='product-info'>
                         <a href='' class='product-title'>Promotieronde van onbekend</a>
                         <span class='product-description'>
                            Deze promotieronde wordt gegeven door <b>Onbekend</b>
                         </span>
                       </div>
                     </li>";
                     echo "
                     <li class='item'>
                       <div class='product-img'>
                        <img src='paneel/assets/img/frank.png' alt='Promotieronde gever'>
                       </div>
                       <div class='product-info'>
                         <a href='' class='product-title'>Promotieronde van onbekend</a>
                         <span class='product-description'>
                            Deze promotieronde wordt gegeven door <b>Onbekend</b>
                         </span>
                       </div>
                     </li>";
                     echo "
                     <li class='item'>
                       <div class='product-img'>
                        <img src='paneel/assets/img/frank.png' alt='Promotieronde gever'>
                       </div>
                       <div class='product-info'>
                         <a href='' class='product-title'>Promotieronde van onbekend</a>
                         <span class='product-description'>
                            Deze promotieronde wordt gegeven door <b>Onbekend</b>
                         </span>
                       </div>
                     </li>";
                   }
                  ?>
                </ul>


[size=xsmall]Toevoeging op 23/01/2017 15:26:07:[/size]

Harstikke bedankt voor al uw hulp!

Reageren