Datum van laatste zaterdag

Overzicht Reageren

Sponsored by: Vacatures door Monsterboard

Pagina: 1 2 volgende »

Chris

Chris

01/04/2007 00:55:00
Quote Anchor link
Ik heb een scriptje gemaakt dat helpt bij het spelen van een spel, tot nu toe vooral statestieken en makkelijker overzicht.

Voor de statestieken heb ik een update pagina gemaakt en elke zaterdag moeten de statestieken worden geupdate. Daarom is die link daar naar toe alleen zichtbaar als het zaterdag is (en als je nog nooit eerder hebt geupdate).

Maar nou het probleem, wat als ze het vergeten up te daten. Dan moet het een dag later of zo gebeuren, maar dan is die link er niet, dus daarom wou ik dat het scriptje ook controleerd of de laatste zaterdag de zaterdag is die in de database staat als 'updatetime' (updatetime = de datum waarop de laatste keer is geupdate)

maar hoe ik dat maak zou ik niet weten, iemand misschien tips??
 
PHP hulp

PHP hulp

16/02/2025 12:39:06
 
Jan Koehoorn

Jan Koehoorn

01/04/2007 02:05:00
Quote Anchor link
Ik zou wel iets meer info willen. Maak je gebruik van een database? Hoe sla je je datums op?
 
Robert Deiman

Robert Deiman

01/04/2007 09:55:00
Quote Anchor link
@Jan
Er staat ook bij dat het een database betreft. ('of de laatste zaterdag de zaterdag is die in de database staat)

@Chris
Dat kan je doen met Timediff in MySQL. Controleer gewoon of het verschil tussen updatetime en de huidige tijd (NOW()) kleiner is dan 7 dagen, Zo nee, dan is het niet de laatste zaterdag die er staat.
 
Chris

Chris

01/04/2007 10:38:00
Quote Anchor link
oke ff proberen
Gewijzigd op 01/01/1970 01:00:00 door Chris
 
Jan Koehoorn

Jan Koehoorn

01/04/2007 11:05:00
Quote Anchor link
@ Robert: klopt, had ik overheen gelezen ;-) Maar die TIMEDIFF zou ik niet doen, want dan krijg je ook een TIME value terug. DATEDIFF geeft meteen al een waarde in dagen terug en is hier dus de aangewezen manier.
 
Chris

Chris

01/04/2007 11:27:00
Quote Anchor link
ooh dan zoek ik daar ff op verder, het enige in de database wat er staat is de dag in letters + in cijfers

geen exacte tijd
 
Jan Koehoorn

Jan Koehoorn

01/04/2007 11:45:00
Quote Anchor link
Ik vrees dat je de datums niet goed hebt opgeslagen. Een datumformaat in MySQL hoort er zo uit te zien: yyyy-mm-dd. Bovendien hoort het opgeslagen te zijn in een veld type DATE (of DATETIME, en dan als yyyy-mm-dd hh:mm:ss)

Heb je het niet zo, dan kun je ook niet rekenen met de MySQL functies voor datum en tijd.
 
Chris

Chris

01/04/2007 11:50:00
Quote Anchor link
ooh, jah ik het het gewoon zo gedaan:

Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
6
<?
$updatetime
= date("D, d");

$query = "INSERT INTO trsstats (traviannaam,pop,codo,hout,klei,ijzer,graan,updatetime) VALUES         ('$traviannaam','$pop','$codo','$hout','$klei','$ijzer','$graan','$updatetime')";

?>


zal ik dat ook wel verandere
 
Jan Koehoorn

Jan Koehoorn

01/04/2007 11:52:00
Quote Anchor link
Doe het gewoon zo:
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
6
<?PHP
    $query
= "INSERT INTO trsstats
    (traviannaam,pop,codo,hout,klei,ijzer,graan,updatetime)
    VALUES
    ('$traviannaam','$pop','$codo','$hout','$klei','$ijzer','$graan',CURDATE())"
;
?>

als je een DATE veld gebruikt, of zo:
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
6
<?PHP
    $query
= "INSERT INTO trsstats
    (traviannaam,pop,codo,hout,klei,ijzer,graan,updatetime)
    VALUES
    ('$traviannaam','$pop','$codo','$hout','$klei','$ijzer','$graan',NOW())"
;
?>

als je een DATETIME veld gebruikt.
 
Chris

Chris

01/04/2007 15:13:00
Quote Anchor link
lol ben er eindelijk uit hoe DATEDIFF werkt:P

nou het in het script verwerken:P

bedankt he robert en jan:)
Gewijzigd op 01/01/1970 01:00:00 door Chris
 
Robert Deiman

Robert Deiman

01/04/2007 15:34:00
Quote Anchor link
Jan Koehoorn schreef op 01.04.2007 11:05:
@ Robert: klopt, had ik overheen gelezen ;-) Maar die TIMEDIFF zou ik niet doen, want dan krijg je ook een TIME value terug. DATEDIFF geeft meteen al een waarde in dagen terug en is hier dus de aangewezen manier.

Owja, ik ken die functies van MySQL nog niet zo heel goed. Dacht dat je bij Timediff aan kon geven als wat voor getal je die terug wou hebben (uren, dagen, minuten) maar blijkbaar vergiste ik mij daarin. Bedankt voor de verbetering.
 
Chris

Chris

01/04/2007 16:23:00
Quote Anchor link
Eerst had ik het zo: Sun, 1
Nou ga ik dus in de 'updatetime' tabel zo'n soort datum krijgen: 2007-04-01


Bij mijn eerste kon je heel makkelijk controleren of het een vrijdag is of niet maar hoe moet ik controleren bij een datum als 2007-04-01 of het vrijdag is of niet?
Gewijzigd op 01/01/1970 01:00:00 door Chris
 
Robert Deiman

Robert Deiman

01/04/2007 16:34:00
Quote Anchor link
Dat doe je met date_format, daarmee kan je dag van de week (een nummer) ophalen. Deze kan je vergelijken.

http://dev.mysql.com/doc/refman/5.0/en/date-and-time-functions.html
 
Chris

Chris

01/04/2007 16:44:00
Quote Anchor link
oke zal ik dat is even proberen:)
 
Chris

Chris

13/04/2007 13:49:00
Quote Anchor link
heb tijdje geen tijd gehad voor php (school examens)

maar hier ben ik weer

enne ik kom er nog niet echt uit, op die site stond iets wat een datum omzet in het nummer van de dag van de week.
Zondag = 1
Maandag = 2
enzevoort...
Dit stond er dan:
------------------------------
DAYOFWEEK(date)

Returns the weekday index for date (1 = Sunday, 2 = Monday, …, 7 = Saturday). These index values correspond to the ODBC standard.

mysql> SELECT DAYOFWEEK('1998-02-03');
-> 3
------------------------------
Maar hoe moet dit nu verder dan?
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
6
7
<?

$dag
= mysql_query("SELECT DAYOFWEEK('2007-04-13')");

echo $dag;

?>


dan krijg ik dit:
Resource id #3

oftwel zo moet het ook niet

dus weet iemand hoe dit moet?
Gewijzigd op 01/01/1970 01:00:00 door Chris
 
Frank -

Frank -

13/04/2007 13:57:00
Quote Anchor link
Ja, dat weet ik ! Hiep hoi.

Zie mysql_fetch_assoc()
Gewijzigd op 01/01/1970 01:00:00 door Frank -
 
Chris

Chris

13/04/2007 14:26:00
Quote Anchor link
ik heb daar gezocht maar nou krijg ik op beeld: Array

dit heb ik nou gebruikt als phpcode:
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
6
7
8
<?
$sql
= "SELECT DAYOFWEEK('2007-04-13')";

$result = mysql_query($sql);
$row = mysql_fetch_assoc($result);

echo $row;
?>

maar dat moet niet op beeld komen
Gewijzigd op 01/01/1970 01:00:00 door Chris
 
Chris

Chris

14/04/2007 22:15:00
Quote Anchor link
Ik snap er echt helemaal niks van, heb van alles op het internet gevonden
veel uitleg maar ik snap er niks van :$

lui bij mij in de buurt en van msn snappe er ook niks van dus probeer het hier nog maar een keer

Mijn doel is gewoon het nummer van de dag van de week in beeld krijgen via DAYOFWEEK, zondag = 1, maandag = 2, etc

maar ik kom er niet echt uit, weet iemand miss een scriptje waar het voor word gedaan?? ik kan die niet echt vinden
 
Gerben G

Gerben G

14/04/2007 22:18:00
Quote Anchor link
je moet het ook met while() doen dus:

Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
6
<?php
while($row = mysql_fetch_assoc($result))
{

  echo $row['datum']
}

?>
 
Chris

Chris

20/04/2007 12:25:00
Quote Anchor link
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
6
7
8
9
10
11
12
<?

include("config.php");

$sql = "SELECT DAYOFWEEK('2007-04-20')";

$result = mysql_query($sql);
while($row = mysql_fetch_assoc($result))
{

  echo $row['datum'];
}

?>


oke ik heb het veranderd nou staat er geen Array meer maar nou staat er helemaal niks

ik dacht dat misschien je met datum bedoelde de datum (dus nu is dat 2007-04-20), maar krijg ik het zelfde effect als dat er staat datum, ook niks

staat er nog wat fout in dat script want ik zie het echt niet :S

als iemand het weet kun je dan misschien mijn script goed aanpassen zodat ik de fout zo kan zien?
 
Remco van Arkelen

Remco van Arkelen

20/04/2007 12:33:00
Quote Anchor link
Je echo-ed $row['datum'], maar je hebt helemaal geen resultaat in je query dat een 'datum' teruggeeft:

$sql = "SELECT DAYOFWEEK('2007-04-20') AS datum";
 

Pagina: 1 2 volgende »



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.