Saako tästä mitään selvää....
Eli entries nimisestä taulukosta haen kategorian id:n ja millon postattu.
Tarkoitus kaivaa kutakin kategoriaa vastaava viimeinen postaus. Toisessa haussa käyttää sitä tietoa ja hakea loput.
<?php $catlatestsql="SELECT cat_id, dateposted as posted FROM entries WHERE pat_id=$asiakas GROUP BY cat_id ORDER BY dateposted DESC"; $kyselyntulos = mysql_query($catlatestsql); if (mysql_num_rows($kyselyntulos)){ $pdf->ezText("Viimeisimmät merkinnät per kategoria\n", 15); while ($row= mysql_fetch_assoc($kyselyntulos)){ //var_dump($row); /* $subjsql="SELECT dateposted, body, subject, id, points, cat FROM entries, categories WHERE entries.cat_id=".$row['cat_id']." AND dateposted=".$row['dateposted']." AND pat_id=$potilas AND cat_id=".$row['cat_id']."";*/ $subjsql="SELECT dateposted, body, subject, id, points, entries.cat_id, cat FROM entries INNER JOIN categories ON entries.cat_id = categories.cat_id WHERE pat_id=$asiakas AND entries.cat_id=".$row['cat_id']." AND dateposted = ".$row['posted']." ;";//AND dateposted = ".$row['posted']." TÄMÄ aiheuttaa mysql_fetch_assoc(): supplied argument is not a valid MySQL result resource in.... $subjkyselyntulos = mysql_query($subjsql); $subjrow=mysql_fetch_assoc($subjkyselyntulos); //echo $subjrow['subject']; //if ($subjrow['cat']=='Lääkelista') // echo "<span class=\"redbold\">"; //else echo "<span class=\"green\">"; $pdf->ezText($subjrow['dateposted'], 12); $pdf->ezText($subjrow['cat'], 9); $pdf->ezText($subjrow['subject'], 9); $pdf->ezText($subjrow['points'], 9); $pdf->ezText($subjrow['body'], 9); $y=$pdf->ezText("\n"); $pdf->line(5, $y, 590, $y); }?>
Yritän siinä verrata samasta taulusta haettuja päivämääriä keskenään.
Virhe tulee siis kohdassa: AND dateposted = ".$row['posted']."
Onhan kyseinen sarake varmasti olemassa?
Miksi muuten haet samasta taulusta loopin sisällä?
Eikö olisi helpompi toteuttaa kyseinen touhu jo ensimmäisessä kyselyssä?
Aihe on jo aika vanha, joten et voi enää vastata siihen.