db tijd + gegeven tijd uitrekenen

Overzicht Reageren

Sponsored by: Vacatures door Monsterboard

Pagina: « vorige 1 2

Jordi Kroon

Jordi Kroon

18/12/2012 09:29:13
Quote Anchor link
Als test zou je de query kunnen testen via phpmyadmin.

SELECT (Banned_on_Date + INTERVAL Ban_Length MINUTE) AS banned_until FROM LDTBans WHERE id=1

banned_until is een alias. Dit is dus geen bestaande tabel.
Gewijzigd op 18/12/2012 09:30:20 door Jordi Kroon
 
PHP hulp

PHP hulp

02/06/2024 17:15:58
 
- Marco -

- Marco -

18/12/2012 09:34:21
Quote Anchor link
Ok dat heb ik net geprobeerd dan krijg ik dit als result:
Afbeelding

En als ik dan terug ga om te kijken of die wel iets heeft ingevoerd is dat veld dus nog gewoon leeg.

Misschien heb je iets aan mijn DB structuur? :p
Afbeelding
 
Jordi Kroon

Jordi Kroon

18/12/2012 09:46:08
Quote Anchor link
Maak van "banned_on_date" datetime , verwijder de rij "banned_until". Zo ik hem heb getest zou hij moeten werken.
 
- Marco -

- Marco -

18/12/2012 09:55:12
Quote Anchor link
Ok dat werkt! Bedankt allemaal :D

Toevoeging op 18/12/2012 10:13:11:

Dit heeft geen nieuw topic nodig :p
Ik probeer nu te checken of banned_until al is geweest maar zoals ik het nu heb zegt die dat het altijd expired is en dat klopt niet :p

<tr>
<td>
Ban status:
</td>
<td>
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
6
7
8
9
10
<?php
                            if( strtotime($fetch['banned_until']) < time() )
                            {

                                echo "Expired";
                            }

                            else
                            {
                                echo "Not Expired yet";
                            }

                        ?>

</td>
</tr>
 
Ger van Steenderen
Tutorial mod

Ger van Steenderen

18/12/2012 11:05:47
Quote Anchor link
Wat krijg je als je banned_until echoed?
Je kan ook dit gewoon in de query doen:
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
SELECT
(Banned_on_Date + INTERVAL Ban_Length MINUTE) AS banned_until,
IF ((Banned_on_Date + INTERVAL Ban_Length MINUTE) < NOW(), 'Expired', 'Not expired yet') AS banned_status
FROM LDTBans WHERE id=1
 
- Marco -

- Marco -

18/12/2012 11:07:58
Quote Anchor link
Als ik banned_on echo krijg ik dit
2012-12-18 09:42:12
als ik banned_until echo krijg ik dit
2012-12-19 09:42:12

en toch zegt die expired dan.
en ik denk niet tot het in 1 query moet want expired wil ik ergens anders echoën. (een paar rijen lagen in de tabel :p ) en id word ook uit de url balk gehaald :)
Gewijzigd op 18/12/2012 11:08:41 door - Marco -
 
Ger van Steenderen
Tutorial mod

Ger van Steenderen

18/12/2012 11:18:36
Quote Anchor link
Ben je dan misschien al uit de while lus op het moment dat je de vergelijking doet.
Want dat is het nadeel van een while lus, $fetch wordt dan false als alle records zijn langs gelopen.
Als je er zeker van bent dat je maar 1 record terug kan krijgen uit de query kan je volstaan met een enkele fetch, en behoud je die waarden totdat je script voorbij is.
Gewijzigd op 18/12/2012 11:19:10 door Ger van Steenderen
 
- Marco -

- Marco -

18/12/2012 11:22:13
Quote Anchor link
ah ik zit idd buiten de while lus thx :p
 

Pagina: « vorige 1 2



Overzicht Reageren

 
 

Om de gebruiksvriendelijkheid van onze website en diensten te optimaliseren maken wij gebruik van cookies. Deze cookies gebruiken wij voor functionaliteiten, analytische gegevens en marketing doeleinden. U vindt meer informatie in onze privacy statement.