Heey iedereen,

D.m.v. de zoekfunctie heb ik vele topics gelezen waar alleen maar werd gezeurt over nodig ja/nee dan er antwoord werd gegeven. Ik heb ook een vraag, en zie die graag beantwoord. Ik weet zeker dat ik op CronJobs wil draaien, heb toch 100GB p/m.

Ik draai hem via Putty.exe en via de wget optie. Deze voert wanneer ik een test.php erin gooi voor een email elke minuut het gewoon uit en ontvang ik de mail. Nu wil ik me _cron_hour script erop gaan draaien maar die pakt hij niet. Idd ook weeeeer een maffia game, maar ik ben niet echt van plan hem voor publiek online te zetten, alleen om wat te kunnen knutselen om weer meer van SQL & php te leren etc. Nu begin ik dus aan CronJob cursusje maar kom er niet uit. Moet ik in mijn _config.php nog een verwijzing maken naar deze CronJobs om ervoor te zorgen dat hij de gegevens uit _cron_hour.php ook echt in de database uitvoert?

Mvg,
Lars.
Ik vind het een enorm onsamenhangend verhaal... ik kan er in ieder geval weinig van breien... Hoe dan ook, je weet dat je PHP gewoon vanuit bash kunt aanroepen met iets als "php -f [bestand]"

http://nl2.php.net/features.commandline
>> Ik weet zeker dat ik op CronJobs wil draaien, heb toch 100GB p/m

Leuk en aardig, maar het gaat erom of het wel nodig is, het kost allemaal serverload, en als je steeds een zware controle doet op iets wat toch 'weinig' teruggeeft...

maar als je het echt zo graag wilt. Test het script eerst een publiekelijk uitwat je wilt draaien, misschien dat die ermee stopt vanwege een error.
De cronjobs werken prima, dat kan je snel concluderen als een simpel mailscript gewoon al werkt.
Het mailscript doet keurig zijn werk in CronJobs. _cron_hour.php normaal gesproken ook en werkt dan bij na 2x refreshen na aanmelding. Alleen in CronJob wil hij niet werken, vandaar mijn vraag of ik die niet via de config in werking moet zetten zoals dat ook moet bij gewone crons.
Wat heb je reeds gedaan om het werkend te krijgen?
Cronjob instellen is namelijk niet zo moeilijk.
Ik ben via Putty.exe in de SSH binnengekomen en heb daar regels neergezet. Volgensmij moeten die regels wel kloppen, want test.php met de email deed het en die heb ik gewoon veranderd in _cron_hour.php.

Voorderest heb ik nog maar even niets gedaan in de cron scripts en config om te kijken of dat wat uitmaakte, maar helaas doet ie nog steeds niets. De orginele crons staan dus weer op de site zoals ze normaal pas worden geactiveerd wanneer ik inlog.
En hoe run je _cron_hour.php dan? En wat gebeurt er als je dat doet?
<?php /* ------------------------- */

if(!(@mysql_pconnect("localhost","dit","klopt") && @mysql_select_db("gewoon"))) {
print <<<ENDHTML

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

mysql_query("UPDATE `[users]` SET `cash`=`cash`+40 WHERE `activated`=1");
mysql_query("UPDATE `[users]` SET `bank`=`bank`+10 WHERE `type`=3 AND `activated`=1");
mysql_query("UPDATE `[clans]` SET `cash`=`cash`+200,`bank`=`bank`+200");
mysql_query("DELETE FROM `[logs]` WHERE `area`='click'");
mysql_query("DELETE FROM `[logs]` WHERE `area`='attack'");
mysql_query("UPDATE `[users]` SET `ocsdoen`='2'");

mysql_query("UPDATE `[users]` SET `landvlieg`='0'");
mysql_query("UPDATE `[users]` SET `bankmax`='500000'");
mysql_query("UPDATE `[users]` SET `energie`='10' WHERE `energie`<'0'");
mysql_query("UPDATE `[users]` SET `bankleft`='20'");
mysql_query("UPDATE `[users]` SET `jointtijd`='0'");
mysql_query("UPDATE `[users]` SET `beroofkansen`='10'");
mysql_query("UPDATE `[users]` SET `maffiamode`='0'");
mysql_query("DELETE FROM `[linkex]` WHERE `siteid`='1'");

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

mysql_query("UPDATE `[users]` SET `IPs`=''");
mysql_query("UPDATE `[clans]` SET `IPs`=''");

$dbres = mysql_query("SELECT * FROM `[clans]` WHERE `money_lvl1` > 0");
while($clan = mysql_fetch_object($dbres)) {
if($clan->type == 1)
mysql_query("UPDATE `[users]` SET `cash`=`cash`+". (50*$clan->money_lvl1) .",`bank`=`bank`+". (150*$clan->money_lvl1) ." WHERE `clan`='{$clan->name}'");
else if($clan->type == 2)
mysql_query("UPDATE `[users]` SET `cash`=`cash`+". (100*$clan->money_lvl1) .",`bank`=`bank`+". (100*$clan->money_lvl1) ." WHERE `clan`='{$clan->name}'");
else if($clan->type == 3)
mysql_query("UPDATE `[users]` SET `bank`=`bank`+". (rand(150,300)*$clan->money_lvl1) ." WHERE `clan`='{$clan->name}'");
}

/* ------------------------- */ ?>

Dit is mijn cron hour. Als het goed is hoort die dus via putty.exe ingesteld elke minuut uitgevoert te worden op de wget manier. Alleen doet hij dat niet, of maakt geen goede verbinding met de database?

Leuke kleurtjes.

print <<<ENDHTML staat daar totaal fout.[/b]

Ook moet je geen @ gebruiken voor een functie.
<?php /* ------------------------- */

if(!(mysql_pconnect("localhost","bla","blaa") && mysql_select_db("blaaa"))) {

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

mysql_query("UPDATE `[users]` SET `cash`=`cash`+40 WHERE `activated`=1");
mysql_query("UPDATE `[users]` SET `bank`=`bank`+10 WHERE `type`=3 AND `activated`=1");
mysql_query("UPDATE `[clans]` SET `cash`=`cash`+200,`bank`=`bank`+200");
mysql_query("DELETE FROM `[logs]` WHERE `area`='click'");
mysql_query("DELETE FROM `[logs]` WHERE `area`='attack'");
mysql_query("UPDATE `[users]` SET `ocsdoen`='2'");

mysql_query("UPDATE `[users]` SET `landvlieg`='0'");
mysql_query("UPDATE `[users]` SET `bankmax`='500000'");
mysql_query("UPDATE `[users]` SET `energie`='10' WHERE `energie`<'0'");
mysql_query("UPDATE `[users]` SET `bankleft`='20'");
mysql_query("UPDATE `[users]` SET `jointtijd`='0'");
mysql_query("UPDATE `[users]` SET `beroofkansen`='10'");
mysql_query("UPDATE `[users]` SET `maffiamode`='0'");
mysql_query("DELETE FROM `[linkex]` WHERE `siteid`='1'");

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

mysql_query("UPDATE `[users]` SET `IPs`=''");
mysql_query("UPDATE `[clans]` SET `IPs`=''");

$dbres = mysql_query("SELECT * FROM `[clans]` WHERE `money_lvl1` > 0");
while($clan = mysql_fetch_object($dbres)) {
if($clan->type == 1)
mysql_query("UPDATE `[users]` SET `cash`=`cash`+". (50*$clan->money_lvl1) .",`bank`=`bank`+". (150*$clan->money_lvl1) ." WHERE `clan`='{$clan->name}'");
else if($clan->type == 2)
mysql_query("UPDATE `[users]` SET `cash`=`cash`+". (100*$clan->money_lvl1) .",`bank`=`bank`+". (100*$clan->money_lvl1) ." WHERE `clan`='{$clan->name}'");
else if($clan->type == 3)
mysql_query("UPDATE `[users]` SET `bank`=`bank`+". (rand(150,300)*$clan->money_lvl1) ." WHERE `clan`='{$clan->name}'");
}

/* ------------------------- */ ?>

Dan zou hij zo moeten kloppen? Hij voert 'm nog steeds niet uit en ik probeer echt van alles.;p
Zorg eerst dat het script fatsoenlijk werkt. De cron komt dan later wel.

Reageren