Ik heb een vaag probleem.
Voor een site waar ik mee bezig ben moet ik een lijst jaartallen uit de database halen.
Ik gebruik onderstaande code
<?
$sqlyear="SELECT DISTINCT data_bank.dtYear_Due FROM data_bank ORDER BY data_bank.dtYear_Due ASC";
$resultyear=mysql_query($sqlyear);
?>
<div class="smalltext">
Please indicate the year(s) for which you want data
</div>
<br>

<table id=yeardata border=0 cellspacing=1 cellpadding=1>
<tr class="smalltext">
<b>
<a href="javascript:SetChecked(1,'dtYear_Due[]')">All Years |</a>
<a href="javascript:SetChecked(0,'dtYear_Due[]')">Clear All</a>
</b>
<?
while($rowyear=mysql_fetch_array($resultyear))

{

if ((@$rowyear[dtYear_Due]!=1997) and (@$rowyear[dtYear_Due]!=1996 )/*and (@$rowyear[dtYear_Due]!=2006)*/)
{
?>

<td class="smalltext"><br>
<input type=checkbox value=<?=@$rowyear[dtYear_Due]?> name=dtYear_Due[]><?=@$rowyear[dtYear_Due]?>

Deze code geeft het volgende resulaat
1996
1997
1998
1999
2000
2001
2002
2003
2004
2005
2006
2007

Echter ik weet dat 2008 ook in de database staat.
Indien ik dezelfde sql querry in phpmyadmin uitvoer krijg ik
1996
1997
1998
1999
2000
2001
2002
2003
2004
2005
2006
2007
2008

Ik kan er niet achter komen waarom de php code een ander resultaat geeft dan de phpmyadmin.
zit je apestaartjesknopje vast of gekoppeld aan het $-teken, offff kan je gewoon niet programmeren?
En als je het eens zo doet:

SELECT
  dtYear_Due
FROM
  data_bank
GROUP BY
  dtYear_Due
ORDER BY
  dtYear_Due ASC;

Als dat niet werkt ligt het waarschijnlijk aan 'DISTINCT' in je query. Die zal bij 2008 met iets anders matchen, wat eigenlijk niet kan.
@wes, die @ hebben er niks mee te maken en indien je geen zinvolle bijdrage kan/wil leveren zeg dan niks.

@dejmo, bedankt voor de reactie, dit had ik al geprobeerd, en maakt geen enkel verschil. Ook heb ik de Distinct gbruikt bij de querry in phpmyadmin.
Daar werkt hij wel goed.

Ik heb hetzelfde script op mijn testserver draaien met een kopie van de database en daar zie ik wel het jaartal 2008 via de php code.
Ik kan niks anders bedenken dan dat de code wel klopt maar er iets vreemds met de php/mysql koppleing is op de live webserver.

Hoop dat iemand nog een idee heeft.
Ik denk dat die @ er heel veel mee te maken hebben. Maak eens een combinatie van :

1. Een @ vrij script
2. Goede error handling
3. ini_set("display_errors",true)
4. error_reporting(E_ALL)

En als je dat gedaan heb mag je terugkomen.
als jij wil programmeren door je fouten gewoon niet te laten zien, kunnen we je wel helpen, maar als je niets ziet...
Wes, zeg dat dan gewoon :)

Geurt, je eerste query is gewoon goed en zou moeten werken:
"SELECT DISTINCT dtYear_Due FROM data_bank ORDER BY dtYear_Due ASC;"
Het ophalen in PHP zou het probleem kunnen zijn door die rare @ van je. Het is wel slim om nooit meer @ te gebruiken.
botte bijl werkt beter. je kan niet programeren is meestal wel redelijk accuraat. crush all hope.

Reageren