Hab da auch mal eine frage zu. Das hier kommt in die DB, das habe ich jetzt so mal zusammengebastelt, ich hoffe das dass so stimmt.
Dann kann ich ja den Cron starten, aber da passiert nichts. Also alle alten einträge und co. sind noch vorhanden. Was mir nun aufgefallen ist, ist das der Cron keine Laufzeit hat, kann es daran liegen? Wenn ja, was wird da in die Laufzeit eingetragen?Code:INSERT INTO `vms_crons` ( `cron` , `laufzeit` , `datei` , `bezeichnung` ) VALUES ('ext_cron', '0', 'crons/db_optimize.php', 'Datenbank optimieren');
Folgendes wird mir auch nicht angezeigt:
Benutze die V.2 für Vms 1.2 und habe das Vms 1.2.4 am laufen.Code:echo 'Dieser Cronjob stammt von Sebastian Hoinkes '; echo '- <a href="http://www.cash4more.de'; echo '" target="_blank">www.Cash4more.de</a><br />'; die('<font color="green">Cron erfolgreich gelaufen!</font>');
Dein Cron hat ja '0' als Laufzeit, und ist prinzipiell Jacke wie Hose. Wenn der Cron das erste mal richtig gelaufen ist, gibts auch einen Eintrag bei der Laufzeit.
Man müsste mal den Cron an sich sehen bzw. den Inhalt, um die Ursache zu sehen, weshalb er nicht läuft.
Dein "Copyright", ist da nicht hilfreich^^
LG
Das ist der Cron..PHP-Code:
<?
// VMS-Addon: db_optimize v2.1
// COPYRIGHT BY - SEBASTIAN HOINKES -
// Weitergabe nur unveraendert erlaubt!
//
// Cron zum optimieren aller Tabellen der Datenbank, welche sich in der
// Datenbank befinden, die loeschung unnoetiger und abgelaufener IP-Sperren,
// die Bereinigung der User-Datenbank (sperren inaktiver User), loeschen ungueltiger
// und abgelaufenen Paidmails und deren Eintraege, sowie leeren der Buchungs-Tabelle.
// Am NAchfolgenden Abschnitt ggf. Einstellungen vornehmen
$buchlimit = '30'; // Buchungen welche aelter als XX Tage sind, aus Datenbank loeschen.
$inaktivlimit = '364'; // Wenn User laenger als XX Tage inaktiv ist, wird er mit Hinweis gesperrt (Wengier als 10 Tage nicht möglich!).
$sperrhinweis = 'Account wegen inaktivität gesperrt! Bitte an den Support wenden!'; // Sperrhinweis bei Inaktivitaets-Sperrung!
// Die Funktionsdatei einbinden
@require_once ('../lib/functions.lib.php');
// Zur Datenbank verbinden
db_connect();
// Ungueltige Reload-Sperren loeschen
db_query ("DELETE FROM ´vms_reloads´ WHERE bis <= ".(time()));
// Tabellenanzahl und IDs auslesen
$result = mysql_list_tables($db_base);
$menge = mysql_num_rows($result);
for($x=0;$x<$menge;$x++){
// Tabellennamen holen
$table_name = mysql_tablename($result,$x);
// Tabelle optimieren
db_query ("OPTIMIZE TABLE `".$table_name."`");
}
// Zeit setzen
db_query ("UPDATE ".$db_prefix."_crons SET laufzeit = '".time()."' WHERE bezeichnung = 'Datenbank optimieren'");
// User, welche ueber 30 Tage inaktiv, sperren mit Hinweis
if($inaktivlimit < 10) { $inaktivlimit = 10; }
db_query ("UPDATE ".$db_prefix."_kontodaten SET status = 2, hinweis = '".$sperrhinweis."' WHERE last_active < ".(time()-($inaktivlimit*86400))." AND last_active > 0");
// Buchungen loeschen aud DB, wenn diese aelter als xx Tage sind
db_query ("DELETE FROM ".$db_prefix."_buchungen WHERE buchungszeit < ".(time()-($buchlimit*86400)));
// Alle ungueltigen Paidmails und deren Eintraege loeschen
db_query ("DELETE FROM ".$db_prefix."_paidmails_empfaenger WHERE gueltig < ".time());
db_query ("DELETE FROM ".$db_prefix."_paidmails_versendet WHERE gueltig < ".time());
db_close();
echo 'Dieser Cronjob stammt von Sebastian Hoinkes ';
echo '- <a href="http://www.cash4more.de'; echo '" target="_blank">www.Cash4more.de</a><br />';
die('<font color="green">Cron erfolgreich gelaufen!</font>');
?>
Der von dir verwendete Cron klappt so mit dem VMS1.2 nicht.
Es müssen ein paar Sachen entfernt werden.
Einfach mal Suche benutzen, wenn nicht slebst in diesem Threat hier die Lösung verlinkt ist.
JP hatte letztens die korrekte Änderung gepostet.
MfG
hi,
du musst aus dem Cron folgendes raus machen
// Die Funktionsdatei einbinden
@require_once ('../lib/functions.lib.php');
db_connect();
und
db_close();
Danach sollte dein Cron laufen
Mfg
Eine frage wäre es möglich bei
ein datum mit einzufügen wo man genau sieht wann ein usr gesperrt wurde????PHP-Code:
// User, welche ueber 90 Tage inaktiv, sperren mit Hinweis
if($inaktivlimit < 10) { $inaktivlimit = 90; }
db_query ("UPDATE ".$db_prefix."_kontodaten SET status = 2, hinweis = '".$sperrhinweis."' WHERE last_active < ".(time()-($inaktivlimit*86400))." AND last_active > 0");
Die Zeile:
bearbeiten, bspw.so:PHP-Code:
$sperrhinweis = 'Account wegen inaktivität gesperrt! Bitte an den Support wenden!'; // Sperrhinweis bei Inaktivitaets-Sperrung!
PHP-Code:
$sperrhinweis = 'Account wegen inaktivität am '.date('d.m.y').' um '.date('H:i:s').' gesperrt! Bitte an den Support wenden!'; // Sperrhinweis bei Inaktivitaets-Sperrung!
Kill one man, and you are a murderer.
Kill millions of men, and you are a conqueror.
Kill them all, and you are a god. - Jean Rostand, Thoughts of a Biologist (1939)
jpwfour
Ich Danke dir dafür
Ich hätte noch eine frage
und zwar ist es möglich oder sinnvoll die vms_gebuchte_werbung Tabelle auch per cron zu
verkleinern ????