Weet iemand wat ik fout heb gedaan in mijn cron_day? Hij doet namelijk niet elke dag wat hij zou moeten doen, maar veel sneller (2 minuten ofzo).

<?php /* ------------------------- */

if($cron_pass != "secretcronpassword")
exit;

mysql_query("UPDATE `[users]` SET `IPs`=''");
mysql_query("DELETE FROM `[logs]` WHERE `area`='click'");

mysql_query("UPDATE `[users]` SET `nonactief`=`nonactief`-1 WHERE `dagen`='1'");
mysql_query("UPDATE `[users]` SET `dagen`='0' WHERE `nonactief`='0'");
mysql_query("UPDATE `[users]` SET `paying`=`paying`-1 WHERE `betaal`='255'");
mysql_query("UPDATE `[users]` SET `nederwiet`=`nederwiet`+1 WHERE `nederwiet` < 20");
mysql_query("UPDATE `[users]` SET `xtc`=`xtc`+1 WHERE `xtc` < 20");
mysql_query("UPDATE `[users]` SET `lsd`=`lsd`+1 WHERE `lsd` < 20");
mysql_query("UPDATE `[users]` SET `speed`=`speed`+1 WHERE `speed` < 20");
mysql_query("UPDATE `[users]` SET `paddo`=`paddo`+1 WHERE `paddo` < 20");
mysql_query("UPDATE `[users]` SET `opium`=`opium`+1 WHERE `opium` < 20");
mysql_query("UPDATE `[users]` SET `nederwiet`=`nederwiet`+2 WHERE `paying` > 1 AND `nederwiet` < 40");
mysql_query("UPDATE `[users]` SET `xtc`=`xtc`+2 WHERE `paying` > 1 AND `xtc` < 40");
mysql_query("UPDATE `[users]` SET `lsd`=`lsd`+2 WHERE `paying` > 1 AND `lsd` < 40");
mysql_query("UPDATE `[users]` SET `speed`=`speed`+2 WHERE `paying` > 1 AND `speed` < 40");
mysql_query("UPDATE `[users]` SET `paddo`=`paddo`+2 WHERE `paying` > 1 AND `paddo` < 40");
mysql_query("UPDATE `[users]` SET `opium`=`opium`+2 WHERE `paying` > 1 AND `opium` < 40");
mysql_query("UPDATE `[users]` SET `ocs`='0',`ocsdoen`='2',`clickstoday`='0'");
mysql_query("UPDATE `[users]` SET `autos1`='0',`autos2`='0',`autos3`='0',`autos4`='0',`autos5`='0',`autos6`='0',`autos7`='0',`autos8`='0',`autos9`='0',`autos10`='0'");

mysql_query("UPDATE `[users]` SET `cash`=`cash`*1.02 WHERE `betaal`!='255'");
mysql_query("UPDATE `[users]` SET `cash`=`cash`*1.05 WHERE `betaal`='255'");
mysql_query("UPDATE `bankrekeningen` SET `bank`=`bank`*1.03 WHERE `bank` < 100000000");

mysql_query("OPTIMIZE TABLE `[logs]`");
mysql_query("OPTIMIZE TABLE `[temp]`");
mysql_query("OPTIMIZE TABLE `[users]`");

/* ------------------------- */ ?>
Dat je cronjob om de 2 minuten wordt uitgevoerd ligt denk ik niet aan je script, maar aan de manier waarop de cronjob is ingesteld. Laat die regel eens zien.
Ik weet niet waar ik dat moet vinden? :$
Allemachtig! Waar haal je deze onvoorstelbaar brakke SQL vandaan? Brackets [] en backtics ` horen echt niet thuis in een fraai stukje SQL. Verder kun je overwegen om eens iets aan foutafhandeling te gaan doen, ik kan je de garantie geven dat je met de huidige opzet de grootste problemen gaat krijgen.

Veel succes met het aanpassen.
Het probleem is dat mijn site uit 194 bestanden bestaat :S zo makkelijk is het dus niet aan te passen... Ik zal wel beginnen zodat hij klaar is als ik V2 introduceer, maar nu wil ik eigenlijk eerst dat deze cron_day ook echt elke dag doet wat ik wil :) Toch bedankt voor het melden!
Afgezien van de statements zelf, is het zo te zien dat het een criminals-script is. Is het niet gedownload, dan heb je het afgekeken van zo'n script. Kenmerk daarvan is het overmatige en rare gebruik van haakjes en backtics.

Enigzins hypocriet is het dan ook om de tabellen te optimaliseren (OPTIMIZE), terwijl er geen enkele normalisatie bijvoorbeeld plaats heeft gevonden. :)

Die cronjob is de regel die er nu voor zorgt dat het om de 2 minuten wordt uitgevoerd. Die heb je denk ik zelf moeten invoeren via ssh of in een control panel. Heb je dat niet, dan zit het ergens in een van die 194 bestanden ;) Succes met zoeken dan.
Bedankt voor het succes wensen :P ik begin er meteen aan :) en als ik het gevonden heb; moet ik het dan posten?
Is dit het soms?

function calcage(secs, num1, num2)
{
s = ((Math.floor(secs/num1))%num2).toString();
if (s.length < 2) s = "0" + s;
return "<b>" + s + "</b>";
}

function CountBack(secs)
{
if (secs < 0)
{
document.getElementById("cntdwn").innerHTML = FinishMessage;
return;
}

DisplayStr = DisplayFormat.replace(/%%D%%/g, calcage(secs,86400,100000));
DisplayStr = DisplayStr.replace(/%%H%%/g, calcage(secs,3600,24));
DisplayStr = DisplayStr.replace(/%%M%%/g, calcage(secs,60,60));
DisplayStr = DisplayStr.replace(/%%S%%/g, calcage(secs,1,60));

document.getElementById("cntdwn").innerHTML = DisplayStr;
if (CountActive) setTimeout("CountBack(" + (secs-1) + ")", 990);
}

function putspan(backcolor, forecolor)
{
document.write("<span id='cntdwn'></span>");
}

putspan(BackColor, ForeColor);
var dthen = new Date(TargetDate);
var dnow = new Date();
ddiff = new Date(dthen-dnow);
gsecs = Math.floor(ddiff.valueOf()/1000);
CountBack(gsecs);
Die SQL-queries, heb je die regelrecht geƫxporteerd uit PhpMyadmin? Dat verklaart volgens mij die backtics en die brackets.
Ja, heb ik gedaan, maar waar staat de cronjob vaak? En hoe ziet het eruit, in een apart script of ergens tussen?
Een cronjob wordt meestal niet via een script ingesteld, maar in het admin-panel van je host. Dat verschilt natuurlijk per host. Maar hoe heb je ze er ooit in gekregen dan?

Reageren