Database records tonen waarvan datum nog niet is verlopen

Overzicht Reageren

Sponsored by: Vacatures door Monsterboard

Marco Apeldoorn

Marco Apeldoorn

11/04/2013 19:15:45
Quote Anchor link
Hoi,

Uit een database wil ik op het scherm alleen de records tonen waarvan de datum nog niet verlopen is.
Ik heb als code:

Code (php)
PHP script in nieuw venster Selecteer het PHP script
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
<?php

mysql_connect($dbhost,$dbgebruiker,$dbww) or die(mysql_error());
mysql_select_db($dbdb) or die(mysql_error());

$today = DATE("Y-m-d");
$query="SELECT * FROM $tabel WHERE toontot>$today";

$sql=mysql_query($query);

echo "<table border='1'>";
echo "<tr><td>Geboren</td> <td>Samenstelling nest</td> <td>Ras</td> <td>Vader</td> <td>Moeder</td> <td>Fokker</td> <td>Woonplaats</td> <td>Telefoon</td> <td>E-mail</td> <td>Website</td> <td>Foto</td> <td>Datum</td> <td>Toon tot</td> </tr>";

while ($row = mysql_fetch_row($result))
        echo "<tr>";
        echo "<td>".$row['geboren']."</td>";
        echo "<td>".$row['nest']."</td>";
        echo "<td>".$row['ras']."</td>";
        echo "<td>".$row['vader']."</td>";
        echo "<td>".$row['moeder']."</td>";
        echo "<td>".$row['fokker']."</td>";
        echo "<td>".$row['woonplaats']."</td>";
        echo "<td>".$row['telefoon']."</td>";
        echo "<td>".$row['email']."</td>";
        echo "<td>".$row['website']."</td>";
        echo "<td>".$row['foto']."</td>";
        echo "<td>".$row['datum']."</td>";
        echo "<td>".$row['toontot']."</td>";
        echo "</tr>";
echo "</table>";
 
?>


Krijg als error

Warning: mysql_fetch_row(): supplied argument is not a valid MySQL result resource in /home/spcadmin/domains/saintprocat.nl/public_html/php-db/tonen2.php on line 20

Is waarschijnlijk heel simpel op te lossen, wie heeft de oplossing?

Alvast bedankt,

Marco
 
PHP hulp

PHP hulp

15/11/2024 08:30:49
 
- Ariën  -
Beheerder

- Ariën -

11/04/2013 19:26:15
Quote Anchor link
http://www.phphulp.nl/php/tutorial/data-verwerking/foutafhandeling-query-sql/735/

SELECT * FROM $tabel WHERE toontot > NOW() is zelfs een stuk beter.
Gewijzigd op 11/04/2013 19:27:32 door - Ariën -
 
Marco Apeldoorn

Marco Apeldoorn

11/04/2013 19:59:15
Quote Anchor link
Aar,

Uit de tekst van de tutorial:

"We zitten nu in het laatste stukje van onze constructie. Wat moet je hier nu doen? Wel, indien je meerdere rijen geselecteerd hebt uit de database gebruik je een while loop om alles netjes uit te lezen. Indien je 1 rij uit de database hebt gehaald kan je die zo weergeven. MAAR in beide gevallen moet er eerst natuurlijk nog iets anders gebeuren we moeten onze query fetchen, dit doen we met behulp van mysql_fetch_assoc(). Tussen de haakjes van deze functie komt dan onze $result te staan.
Het zou ook kunnen dat we een rij verwijderd hebben of een rij toegevoegt. In dat geval kan je hier een bedankje echoën."

met

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


doe ik dat dus.
Snap dus niet wat hier mis gaat.
 
- Ariën  -
Beheerder

- Ariën -

11/04/2013 20:00:17
Quote Anchor link
Het draait om je $result, je MOET controleren of deze goed of fout gaat.
 
Bart V B

Bart V B

11/04/2013 20:06:20
Quote Anchor link
Je loopt te pielen (sorry dat ik het zo zeg) :) met verkeerde variabelen.
Code (php)
PHP script in nieuw venster Selecteer het PHP script
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
<?php

mysql_connect($dbhost,$dbgebruiker,$dbww) or die(mysql_error());
mysql_select_db($dbdb) or die(mysql_error());

$query="SELECT * FROM $tabel WHERE toontot > NOW()";

$result = mysql_query($query);

echo "<table border='1'>";
echo "<tr><td>Geboren</td> <td>Samenstelling nest</td> <td>Ras</td> <td>Vader</td> <td>Moeder</td> <td>Fokker</td> <td>Woonplaats</td> <td>Telefoon</td> <td>E-mail</td> <td>Website</td> <td>Foto</td> <td>Datum</td> <td>Toon tot</td> </tr>";

while ($row = mysql_fetch_row($result))
        echo "<tr>";
        echo "<td>".$row['geboren']."</td>";
        echo "<td>".$row['nest']."</td>";
        echo "<td>".$row['ras']."</td>";
        echo "<td>".$row['vader']."</td>";
        echo "<td>".$row['moeder']."</td>";
        echo "<td>".$row['fokker']."</td>";
        echo "<td>".$row['woonplaats']."</td>";
        echo "<td>".$row['telefoon']."</td>";
        echo "<td>".$row['email']."</td>";
        echo "<td>".$row['website']."</td>";
        echo "<td>".$row['foto']."</td>";
        echo "<td>".$row['datum']."</td>";
        echo "<td>".$row['toontot']."</td>";
        echo "</tr>";
echo "</table>";
 
?>
 
Marco Apeldoorn

Marco Apeldoorn

11/04/2013 20:13:29
Quote Anchor link
Aar, Bart VB,

Thanks, stom, natuurlijk moet je een var controleren.
$result controle toegevoegd en het werkt.
 



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.