Goede middag,
In de onderstaande code lopen ik en een collega aan tegen het probleem m.b.t. het selecteren van "datum's" van een bepaald USER ID die moeten worden opgehaald mits ze tussen 2 datum's vallen.
Deze datum's worden gepost in een form en gedefinieerd als $datum_1 & $datum_2.
De format die ingevult wordt in deze forms is dd-mm-yyyy.
Het database veld type = "varchar" en geen "date",
Wanneer we de onderstaande code gebruiken krijgen we bij de onderstaande waardes dus een output van alleen de 1e 2 dagen van elke maand.
Input:
Begin datum: 01-01-2010
Eind datum: 01-03-2010
De output:
01-01-2010
02-01-2010
01-02-2010
02-02-2010
01-03-2010
02-03-2010
Het lijkt er in mijn optiek op er op een of andere manier de data uit de input velden (forms) niet kan worden vergeleken met de waarde in de database velden.... of althans niet op een juiste manier.
Heeft iemand toevalig een oplossing of een duw in de goede richting? We hebben echt al een hoop websites doorgenomen en diverse dingen geprobeerd, echter lijkt het niet te willen lukken...
* Extra probleem is dat het in dit geval niet mogelijk is het database veld alsnog te converten naar het type "Date" omdat we dan de al ingevoerde gegevens kwijt raken.
In de onderstaande code lopen ik en een collega aan tegen het probleem m.b.t. het selecteren van "datum's" van een bepaald USER ID die moeten worden opgehaald mits ze tussen 2 datum's vallen.
Deze datum's worden gepost in een form en gedefinieerd als $datum_1 & $datum_2.
De format die ingevult wordt in deze forms is dd-mm-yyyy.
Het database veld type = "varchar" en geen "date",
Wanneer we de onderstaande code gebruiken krijgen we bij de onderstaande waardes dus een output van alleen de 1e 2 dagen van elke maand.
Input:
Begin datum: 01-01-2010
Eind datum: 01-03-2010
De output:
01-01-2010
02-01-2010
01-02-2010
02-02-2010
01-03-2010
02-03-2010
PHP:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
| <?php $i = 0; $datum_1 = $_POST['datum_1']; $datum_2 = $_POST['datum_2']; $sql = "SELECT datum_rit, STR_TO_DATE( datum_rit, '%d-%m-%Y' ) AS date_for_sort, soort_rit, begin_km, eind_km, (eind_km - begin_km) AS gereden_km, beginadres, Bpostcode, Bplaats, eindadres, Epostcode, Eplaats, comment FROM data WHERE user= '$id' AND datum_rit BETWEEN '".$datum_1."' AND '".$datum_2."' ORDER BY date_for_sort DESC"; $res = mysql_query($sql, $db); echo "<table width='800'>"; echo "<tr id='content' class='content'>"; echo "<td>Datum Rit</td>"; echo "<td>Soort Rit</td>"; echo "<td>Begin KM</td>"; echo "<td>Eind KM</td>"; echo "<td>Gereden KM</td>"; echo "<td>Begin adres</td>"; echo "<td>Eind adres</td>"; echo "<td>Comment</td>"; echo "</tr>"; while ($plak = mysql_fetch_object($res)) { if (fmod($i, 2) == 0) { echo "<tr class='even'>"; echo "<td>$plak->datum_rit</td>"; echo "<td>$plak->soort_rit</td>"; echo "<td>$plak->begin_km</td>"; echo "<td>$plak->eind_km</td>"; echo "<td>$plak->gereden_km</td>"; echo "<td>$plak->beginadres $plak->Bpostcode $plak->Bplaats</td>"; echo "<td>$plak->eindadres $plak->Epostcode $plak->Eplaats</td>"; echo "<td>$plak->comment</td>"; echo "</tr>"; } else { echo "<tr class='odd'>"; echo "<td>$plak->datum_rit</td>"; echo "<td>$plak->soort_rit</td>"; echo "<td>$plak->begin_km</td>"; echo "<td>$plak->eind_km</td>"; echo "<td>$plak->gereden_km</td>"; echo "<td>$plak->beginadres $plak->Bpostcode $plak->Bplaats</td>"; echo "<td>$plak->eindadres $plak->Epostcode $plak->Eplaats</td>"; echo "<td>$plak->comment</td>"; echo "</tr>"; } $i++; } echo "</table>"; ?> |
Het lijkt er in mijn optiek op er op een of andere manier de data uit de input velden (forms) niet kan worden vergeleken met de waarde in de database velden.... of althans niet op een juiste manier.
Heeft iemand toevalig een oplossing of een duw in de goede richting? We hebben echt al een hoop websites doorgenomen en diverse dingen geprobeerd, echter lijkt het niet te willen lukken...
* Extra probleem is dat het in dit geval niet mogelijk is het database veld alsnog te converten naar het type "Date" omdat we dan de al ingevoerde gegevens kwijt raken.
i7-6700K | Z170A XPOWER GAMING TITANIUM EDITION | InWin904 | 32GB Corsair Dominator Platinum | nVidia GeForce RTX2080 TI | Iiyama G-Master UWQH 34" | 2x 1TB Samsung SSD 980PRO | 1x 4TB Samsung 860EVO | Arctis 7 | SteelSeries Apex Pro | Logitech G502 Hero