Nieuw lid |
|
Voor de website Wup.nu zijn we bezig met een Top 5 van links met de meeste inhits, aangezien er voor de inhits een parte database bij gehouden word waar iedereen vandaan komt is het niet meer zo dat de inhits bij elkaar op geteld wordt maar voor elke inhits en kliks een eigen regel gemaakt wordt.
Heb hem nu redelijk af, alleen nu wil ik nog kunnen zeggen ORDER BY inhits, tabel staat er in, maar deze zal nooit werken als er geen mysql_num_row toegepast wordt om alle 1-tjes op te tellen.
Wie weet hoe ik dit het beste kan aanpakken?
de SQL qat er nu in zit is:
<?php
$maandterug = date("m")-1;
$datum_views = date(Y)."-".$maandterug."-".date(d)." 00:00:00";
$query_link2 = mysql_query("SELECT naam, COUNT(linkpartners_stats.id) AS total
FROM linkpartners
LEFT JOIN linkpartners_stats ON linkpartners.id=linkpartners_stats.link_id
WHERE date > '".$datum_views."' AND linkpartners_stats.inhits ='1'
GROUP BY linkpartners_stats.link_id
ORDER BY total DESC");
$row_link2 = mysql_fetch_array($query_link2);
$query_link = mysql_query("SELECT DISTINCT linkpartners.*
FROM `linkpartners`
JOIN `linkpartners_stats` ON linkpartners.id = linkpartners_stats.link_id
WHERE date > '".$datum_views."' AND linkpartners_stats.inhits ='1'
ORDER BY '".$row_link2."' DESC");
while($row_link = mysql_fetch_assoc($query_link)){
//partnnerprgramma
$most_view_link_in = "SELECT inhits FROM linkpartners_stats WHERE link_id = '".$row_link['id']."' AND inhits ='1'";
$most_view_link_in_r = mysql_query($most_view_link_in) or die ("");
$most_view_link_in_res = mysql_num_rows($most_view_link_in_r);
$most_view_link_kl = "SELECT kliks FROM linkpartners_stats WHERE link_id = '".$row_link['id']."' AND kliks ='1'";
$most_view_link_kl_r = mysql_query($most_view_link_kl) or die ("");
$most_view_link_kl_res = mysql_num_rows($most_view_link_kl_r);
// laatste maand
$most_view_link_min = "SELECT inhits FROM linkpartners_stats WHERE link_id = '".$row_link['id']."' AND date > '".$datum_views."' AND inhits ='1'";
$most_view_link_min_r = mysql_query($most_view_link_min) or die ("");
$most_view_link_min_res = mysql_num_rows($most_view_link_min_r);
$most_view_link_mkl = "SELECT kliks FROM linkpartners_stats WHERE link_id = '".$row_link['id']."' AND date > '".$datum_views."' AND kliks ='1'";
$most_view_link_mkl_r = mysql_query($most_view_link_mkl) or die ("");
$most_view_link_mkl_res = mysql_num_rows($most_view_link_mkl_r);
?>
<?php $maandterug = date("m")-1; $datum_views = date(Y )."-".$maandterug."-".date(d )." 00:00:00"; $query_link2 = mysql_query("SELECT naam, COUNT(linkpartners_stats.id) AS total FROM linkpartners LEFT JOIN linkpartners_stats ON linkpartners.id=linkpartners_stats.link_id WHERE date > '".$datum_views."' AND linkpartners_stats.inhits ='1' GROUP BY linkpartners_stats.link_id ORDER BY total DESC"); $query_link = mysql_query("SELECT DISTINCT linkpartners.* FROM `linkpartners` JOIN `linkpartners_stats` ON linkpartners.id = linkpartners_stats.link_id WHERE date > '".$datum_views."' AND linkpartners_stats.inhits ='1' ORDER BY '".$row_link2."' DESC"); //partnnerprgramma $most_view_link_in = "SELECT inhits FROM linkpartners_stats WHERE link_id = '".$row_link['id']."' AND inhits ='1'"; $most_view_link_kl = "SELECT kliks FROM linkpartners_stats WHERE link_id = '".$row_link['id']."' AND kliks ='1'"; // laatste maand $most_view_link_min = "SELECT inhits FROM linkpartners_stats WHERE link_id = '".$row_link['id']."' AND date > '".$datum_views."' AND inhits ='1'"; $most_view_link_mkl = "SELECT kliks FROM linkpartners_stats WHERE link_id = '".$row_link['id']."' AND date > '".$datum_views."' AND kliks ='1'"; ?>
Waarschijnlijk zal ik moeten gaan werken met arrey's alleen op een of andere manier kom ik hier gewoon niet mee uit, die inhits moeten dus op geteld worden van uit de database waarbij alle gegeven uit de tabel linkpartners_stats, daarin staan alleen maar 1-tjes die opgeteld moet worden om gebruikt te worden in de optelling.
Hoop dat iemand me een stap verder kan brengen. Voorbeeld draait op: WuP.nu/part/all
|