DaveThuet
Erfahrenes Mitglied
Guten Morgen,
ich habe eine kleine Frage, die für Euch Profis sicher nur ein müdes Lächeln ins Gesicht auslösen wird.
Ich Schreibe in meiner Datenbank am Ende des Monats per Cron, die besten Downloads aus der Tabelle "tbl_uploads" in eine separate Tabelle (tbl_monatdownloads). Nun hat dieses Tabelle bereits einige IDs und ich möchte dort natürlich nicht zweimal die selbe ID, darum hat ich die Spalte "id_uploads" dieser Tabelle als Index definiert. So weit alles Bestens.
Zu meinem Problem oder respektive zur Frage...
Ich Schreibe jeweils Ende des Monats die besten 6 Download IDs per Cron in die Tabelle "tbl_monatdownloads", wie kann ich den Cron (php angefügt) so verändern, dass wenn eine ID bereits vorhanden ist er automatisch die nächste ID schriebt? Das Klappt eigentlich ganz gut, das Problem ist nur das im Moment wenn eine ID bereits vorhanden ist, er diese auslässt (eigentlich OK) aber er schreibt mir nicht die 6 verfügbaren IDs rein in die "tbl_monatdownloads"! Also wenn er 2 überspringen musste, dann habe ich nur 4 Einträge anstatt 6 in meiner "tbl_monatdownloads". Ich hoffe Ihr versteht mein kleines Dilemma?
Hier noch der aktuelle Cronjob/Crontab/Cron der ausgeführt wird:
Klar ich könnte einfach nur die 15 des Monats auslesen lassen, anstatt 6 wie eingestellt, aber dann würde ich 9 IDs die Chance nehmen/sperren in einen anderen Monat in diese Statistik zu gelangen. Die Ausgabe in der Homepage sind immer nur die Top 6, hier der Link dazu. «Monatsdownloads Oktober»
Ich danke Euch wirklich für Eure Hilfe oder Lösungen meines Problems, da ich mit PHP leider nicht allzu viel Anfang kann.
ich habe eine kleine Frage, die für Euch Profis sicher nur ein müdes Lächeln ins Gesicht auslösen wird.
Ich Schreibe in meiner Datenbank am Ende des Monats per Cron, die besten Downloads aus der Tabelle "tbl_uploads" in eine separate Tabelle (tbl_monatdownloads). Nun hat dieses Tabelle bereits einige IDs und ich möchte dort natürlich nicht zweimal die selbe ID, darum hat ich die Spalte "id_uploads" dieser Tabelle als Index definiert. So weit alles Bestens.
Zu meinem Problem oder respektive zur Frage...
Ich Schreibe jeweils Ende des Monats die besten 6 Download IDs per Cron in die Tabelle "tbl_monatdownloads", wie kann ich den Cron (php angefügt) so verändern, dass wenn eine ID bereits vorhanden ist er automatisch die nächste ID schriebt? Das Klappt eigentlich ganz gut, das Problem ist nur das im Moment wenn eine ID bereits vorhanden ist, er diese auslässt (eigentlich OK) aber er schreibt mir nicht die 6 verfügbaren IDs rein in die "tbl_monatdownloads"! Also wenn er 2 überspringen musste, dann habe ich nur 4 Einträge anstatt 6 in meiner "tbl_monatdownloads". Ich hoffe Ihr versteht mein kleines Dilemma?
Hier noch der aktuelle Cronjob/Crontab/Cron der ausgeführt wird:
PHP:
<?php
// Monatsstatistik in neue Tabelle schreiben
set_time_limit(0);
ignore_user_abort(true);
// Connection statement
require_once('../../abc/xyz.php');
$query = mysql_query("SELECT id_uploads, monatsdownloads
FROM tbl_uploads
WHERE aktiv = 1 AND monatsdownloads > 0
ORDER BY monatsdownloads DESC
LIMIT 0,6");
$total = mysql_num_rows($query);
$i=0;
while($i < $total) {
$result = mysql_fetch_array($query);
$id_uploads = $result['id_uploads'];
$monatsdownload = $result['monatsdownloads'];
mysql_query("INSERT INTO tbl_monatdownloads (id_uploads, monatsdownload, datum)
VALUES ('$id_uploads','$monatsdownload',now())");
$i++;
}
?>
Klar ich könnte einfach nur die 15 des Monats auslesen lassen, anstatt 6 wie eingestellt, aber dann würde ich 9 IDs die Chance nehmen/sperren in einen anderen Monat in diese Statistik zu gelangen. Die Ausgabe in der Homepage sind immer nur die Top 6, hier der Link dazu. «Monatsdownloads Oktober»
Ich danke Euch wirklich für Eure Hilfe oder Lösungen meines Problems, da ich mit PHP leider nicht allzu viel Anfang kann.
Zuletzt bearbeitet: