ugrás a tartalomhoz

cron job

skull87 · 2013. Okt. 1. (K), 17.35
Sziasztok,

segitséget szeretnék mert el akadtam, egy hostingon van egy crm portálom és fetch mailt használok amihez szükséges l efuttatni a cron.php scriptet.

Eddig saját szerveren volt a portál és ott crontab -ban simán tudtam ütemezni a feladatot de itt a hostingon web cron van csak amibe ha beirom az elérési utat csak pörög az oldal de semmi nem történik.

Az eddigi parancsom igy nézett ki:

5 * * * * php /webservice/cron.php –auth_user=username –auth_pwd=password! –status_only=1

ezt hogyan tudnám megoldani online?

Elöre is köszönöm!
 
1

Mit is?

janoszen · 2013. Okt. 1. (K), 23.52
Nem egeszen ertem, tehat egy szolgaltatotol berelsz webtarhelyet es ott nem mukodik valami? Vagy van egy sajat szervered amire feltelepitettel valami random admin panelt es azzal nem boldogulsz?
3

Eddig saját szerveren ment az

skull87 · 2013. Okt. 2. (Sze), 07.55
Eddig saját szerveren ment az apache, mysql, php stb ott a cron ütemezés is jól müködött, de át áltam ininetes hostingra ahol van webcron de ott nem jó nekem a script futtatása mert nem elég a scriptet megnyitni böngészöből mert az még kevés hozzá.

A saját szerveren a fent leirt paraméterrel futtattam a saját szerveren.

A saját szerveren nem kellett admin panel mert linux srv volt és a crontab megoldotta.
5

Support?

janoszen · 2013. Okt. 2. (Sze), 08.01
És akkor miért nem kérdezed meg a szolgáltató supportját?
7

Ledobta magárol a dolgot

skull87 · 2013. Okt. 2. (Sze), 08.39
Ledobta magárol a dolgot azzal, hogy biztosan meglehet oldani másképp is :)
14

Valts szolgaltatot

janoszen · 2013. Okt. 2. (Sze), 12.53
Ne haragudj, ha a szolgaltatod az altala kinalt feluletre azt mondja, hogy nem tudja, hogy mukodik, akkor valts szolgaltatot, mert ez tukrozi a teljes hozzaallasat es hozzaerteset a dologhoz. Legkozelebb a biztonsagi mentesre vagy a meghibasodott diskre mondja ezt?

Amiert mi nem tudunk valaszolni: nem tudjuk, melyik szolgaltatorol es szoftverrol van szo.
15

Írta feljebb, hogy az

Hidvégi Gábor · 2013. Okt. 2. (Sze), 13.19
Írta feljebb, hogy az ininetnél van. Történetesen nekem is van mától ininet hozzáférésem, megnéztem, és a postban leírt formában lehet megadni náluk is a cron feladatokat. Innentől kezdve skull87-en múlik minden.
2

biztos kell?

numen · 2013. Okt. 1. (K), 23.55
1. Biztosan le kell futnia ötpercenként? Amikor hasonló nyűgöm volt, simán futtattam a cront minden oldalbetöltéskor, és megnéztem, hogy letelt-e az idő amíg újra futtatni kéne (esetleg azt is, hogy hányszor telt el)

2. A webcron biztos kezeli a command line paramétereket? Nem ismerem a rendszert. Írass debug fájlt a scripttel, az talán segít kideríteni, hogy meddig fut le… Egyáltalán, ír valami érdekeset a web cron dokumentációja?
4

Öt percenként kell futni mert

skull87 · 2013. Okt. 2. (Sze), 07.58
Öt percenként kell futni mert a megadott postafiokról imappal behuzza a leveleket a portálra kérésként ez müködik is saját szerveren de a külsö hostingon csak webcront tudok futtatni (ininet).
Valami olyan megoldás kellene amivel tudnám emulálni neki a fent kiadott parancsot vagy valami hasonló dolog.

Sajnos a dokumentáció szinte 0 ehez a részéhez a crm -k csak annyit ir, hogy web cronnal is futtatható de csak ugy simán nem nyeli le a script.
6

Ha a paramétereket nem

Hidvégi Gábor · 2013. Okt. 2. (Sze), 08.24
Ha a paramétereket nem parancssorból várná a cron.php, hanem beégetnéd, akkor szerintem megoldanád a problémát.
8

Nem muszáj beégetni, ha olyan

inf · 2013. Okt. 2. (Sze), 08.41
Nem muszáj beégetni, ha olyan cron modulról van szó, ami gettel kéri le a megadott oldalt, akkor be lehet lőni queryString-ben is. Egyelőre semmit nem tudunk arról, hogy mik a lehetőségei, meg milyen típusú cron-ról van szó...
9

probáltam, hogy a cron.php

skull87 · 2013. Okt. 2. (Sze), 08.42
probáltam, hogy a cron.php -ben ahol láttam a sorban a sablon parancsot, hogy mit kell bekérni kitöltöttem a valós adatokkal de továbbra is csak homokorázik az oldal ha a cron.php -ra mejek...

"function UsageAndExit($oP)
{
$bModeCLI = utils::IsModeCLI();

if ($bModeCLI)
{
$oP->p("USAGE:\n");
$oP->p("php cron.php --auth_user=felhasználo --auth_pwd=jelszó\n");
}
else
{
$oP->p("Optional parameters: verbose, param_file, status_only\n");
}
$oP->output();
exit -2;
}
"
10

Nem igazán értem a problémát.

inf · 2013. Okt. 2. (Sze), 08.47
Nem igazán értem a problémát. Eddig CLI-ből hívtad a cron.php-t, most meg böngészőből vagy GET-es cronnal és most nem működik?

Valami alapvető debugot próbáltál már? Mondjuk kicommentezni részeket a kódban, aztán megnézni, hogy minél akad el?
11

igen most böngészőből akarom,

skull87 · 2013. Okt. 2. (Sze), 08.53
igen most böngészőből akarom, bemásolom a scriptet az a legtisztább mindenkinek :)
  1. <?php  
  2. // Copyright (C) 2010-2013 Combodo SARL  
  3. //  
  4. //   This file is part of iTop.  
  5. //  
  6. //   iTop is free software; you can redistribute it and/or modify     
  7. //   it under the terms of the GNU Affero General Public License as published by  
  8. //   the Free Software Foundation, either version 3 of the License, or  
  9. //   (at your option) any later version.  
  10. //  
  11. //   iTop is distributed in the hope that it will be useful,  
  12. //   but WITHOUT ANY WARRANTY; without even the implied warranty of  
  13. //   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the  
  14. //   GNU Affero General Public License for more details.  
  15. //  
  16. //   You should have received a copy of the GNU Affero General Public License  
  17. //   along with iTop. If not, see <http://www.gnu.org/licenses/>  
  18.   
  19. /** 
  20.  * Heart beat of the application (process asynchron tasks such as broadcasting email) 
  21.  * 
  22.  * @copyright   Copyright (C) 2010-2012 Combodo SARL 
  23.  * @license     http://opensource.org/licenses/AGPL-3.0 
  24.  */  
  25.   
  26. if (!defined('__DIR__')) define('__DIR__', dirname(__FILE__));  
  27. require_once(__DIR__.'/../approot.inc.php');  
  28. require_once(APPROOT.'/application/application.inc.php');  
  29. require_once(APPROOT.'/application/nicewebpage.class.inc.php');  
  30. require_once(APPROOT.'/application/webpage.class.inc.php');  
  31. require_once(APPROOT.'/application/clipage.class.inc.php');  
  32. require_once(APPROOT.'/application/startup.inc.php');  
  33.   
  34.   
  35.   
  36. function ReadMandatoryParam($oP$sParam$sSanitizationFilter = 'parameter')  
  37. {  
  38.     $sValue = utils::ReadParam($sParam, null, true /* Allow CLI */$sSanitizationFilter);  
  39.     if (is_null($sValue))  
  40.     {  
  41.         $oP->p("ERROR: Missing argument '$sParam'\n");  
  42.         UsageAndExit($oP);  
  43.     }  
  44.     return trim($sValue);  
  45. }  
  46.   
  47. function UsageAndExit($oP)  
  48. {  
  49.     $bModeCLI = utils::IsModeCLI();  
  50.   
  51.     if ($bModeCLI)  
  52.     {  
  53.         $oP->p("USAGE:\n");  
  54.         $oP->p("php cron.php --auth_user=username --auth_pwd=password\n");         
  55.     }  
  56.     else  
  57.     {  
  58.         $oP->p("Optional parameters: verbose, param_file, status_only\n");         
  59.     }  
  60.     $oP->output();  
  61.     exit -2;  
  62. }  
  63.   
  64. function RunTask($oBackgroundProcess, BackgroundTask $oTask$oStartDate$iTimeLimit)  
  65. {  
  66.     try  
  67.     {  
  68.         $oNow = new DateTime();  
  69.         $fStart = microtime(true);  
  70.         $sMessage = $oBackgroundProcess->Process($iTimeLimit);  
  71.         $fDuration = microtime(true) - $fStart;  
  72.         $oTask->ComputeDurations($fDuration);  
  73.         $oTask->Set('latest_run_date'$oNow->format('Y-m-d H:i:s'));  
  74.         $oPlannedStart = new DateTime($oTask->Get('latest_run_date'));  
  75.         // Let's assume that the task was started exactly when planned so that the schedule does no shift each time  
  76.         // this allows to schedule a task everyday "around" 11:30PM for example  
  77.         $oPlannedStart->modify('+'.$oBackgroundProcess->GetPeriodicity().' seconds');  
  78.         $oEnd = new DateTime();  
  79.         if ($oPlannedStart->format('U') < $oEnd->format('U'))  
  80.         {  
  81.             // Huh, next planned start is already in the past, shift it of the periodicity !  
  82.             $oPlannedStart = $oEnd->modify('+'.$oBackgroundProcess->GetPeriodicity().' seconds');  
  83.         }  
  84.         $oTask->Set('next_run_date'$oPlannedStart->format('Y-m-d H:i:s'));  
  85.         $oTask->DBUpdate();  
  86.     }  
  87.     catch(Exception $e)  
  88.     {  
  89.         $sMessage = 'Processing failed, the following exception occured: '.$e->getMessage();  
  90.     }  
  91.     return $sMessage;     
  92. }  
  93.   
  94. // Known limitation - the background process periodicity is NOT taken into account  
  95. function CronExec($oP$aBackgroundProcesses$bVerbose)  
  96. {  
  97.     $iStarted = time();  
  98.     $iMaxDuration = MetaModel::GetConfig()->Get('cron_max_execution_time');  
  99.     $iTimeLimit = $iStarted + $iMaxDuration;  
  100.       
  101.     if ($bVerbose)  
  102.     {  
  103.         $oP->p("Planned duration = $iMaxDuration seconds");  
  104.     }  
  105.   
  106.     $iCronSleep = MetaModel::GetConfig()->Get('cron_sleep');  
  107.       
  108.     $oSearch = new DBObjectSearch('BackgroundTask');  
  109.     while (time() < $iTimeLimit)  
  110.     {  
  111.         $oTasks = new DBObjectSet($oSearch);  
  112.         $aTasks = array();  
  113.         while($oTask = $oTasks->Fetch())  
  114.         {  
  115.             $aTasks[$oTask->Get('class_name')] = $oTask;  
  116.         }  
  117.         foreach ($aBackgroundProcesses as $oBackgroundProcess)  
  118.         {  
  119.             $sTaskClass = get_class($oBackgroundProcess);  
  120.             $oNow = new DateTime();  
  121.             if (!array_key_exists($sTaskClass$aTasks))  
  122.             {  
  123.                 // New entry, let's create a new BackgroundTask record and run the task immediately  
  124.                 $oTask = new BackgroundTask();  
  125.                 $oTask->Set('class_name', get_class($oBackgroundProcess));  
  126.                 $oTask->Set('first_run_date'$oNow->format('Y-m-d H:i:s'));  
  127.                 $oTask->Set('total_exec_count', 0);  
  128.                 $oTask->Set('min_run_duration', 99999.999);  
  129.                 $oTask->Set('max_run_duration', 0);  
  130.                 $oTask->Set('average_run_duration', 0);  
  131.                 $oTask->Set('next_run_date'$oNow->format('Y-m-d H:i:s')); // in case of crash...  
  132.                 $oTask->DBInsert();  
  133.                 if ($bVerbose)  
  134.                 {  
  135.                     $oP->p(">> === ".$oNow->format('Y-m-d H:i:s').sprintf(" Starting:%-'=40s", ' '.$sTaskClass.' (first run) '));  
  136.                 }  
  137.                 $sMessage = RunTask($oBackgroundProcess$oTask$oNow$iTimeLimit);  
  138.                 if ($bVerbose)  
  139.                 {  
  140.                     if(!emptyempty($sMessage))  
  141.                     {  
  142.                         $oP->p("$sTaskClass: $sMessage");  
  143.                     }  
  144.                     $oEnd = new DateTime();  
  145.                     $oP->p("<< === ".$oEnd->format('Y-m-d H:i:s').sprintf(" End of:  %-'=40s", ' '.$sTaskClass.' '));  
  146.                 }  
  147.             }  
  148.             else if( ($aTasks[$sTaskClass]->Get('status') == 'active') && ($aTasks[$sTaskClass]->Get('next_run_date') <= $oNow->format('Y-m-d H:i:s')))  
  149.             {  
  150.                 $oTask = $aTasks[$sTaskClass];  
  151.                 // Run the task and record its next run time  
  152.                 if ($bVerbose)  
  153.                 {  
  154.                     $oP->p(">> === ".$oNow->format('Y-m-d H:i:s').sprintf(" Starting:%-'=40s", ' '.$sTaskClass.' '));  
  155.                 }  
  156.                 $sMessage = RunTask($oBackgroundProcess$aTasks[$sTaskClass], $oNow$iTimeLimit);  
  157.                 if ($bVerbose)  
  158.                 {  
  159.                     if(!emptyempty($sMessage))  
  160.                     {  
  161.                         $oP->p("$sTaskClass: $sMessage");  
  162.                     }  
  163.                     $oEnd = new DateTime();  
  164.                     $oP->p("<< === ".$oEnd->format('Y-m-d H:i:s').sprintf(" End of:  %-'=40s", ' '.$sTaskClass.' '));  
  165.                 }  
  166.             }  
  167.             else   
  168.             {  
  169.                 // will run later  
  170.                 if (($aTasks[$sTaskClass]->Get('status') == 'active') && $bVerbose)  
  171.                 {  
  172.                     $oP->p("Skipping asynchronous task: $sTaskClass until ".$aTasks[$sTaskClass]->Get('next_run_date'));  
  173.                 }  
  174.             }  
  175.         }  
  176.         if ($bVerbose)  
  177.         {  
  178.             $oP->p("Sleeping");  
  179.         }  
  180.         sleep($iCronSleep);  
  181.     }  
  182.     if ($bVerbose)  
  183.     {  
  184.         $oP->p("Reached normal execution time limit (exceeded by ".(time()-$iTimeLimit)."s)");  
  185.     }  
  186. }  
  187.   
  188. function DisplayStatus($oP)  
  189. {  
  190.     $oSearch = new DBObjectSearch('BackgroundTask');  
  191.     $oTasks = new DBObjectSet($oSearch);  
  192.     $oP->p('+---------------------------+---------+---------------------+---------------------+--------+-----------+');  
  193.     $oP->p('| Task Class                | Status  | Last Run            | Next Run            | Nb Run | Avg. Dur. |');  
  194.     $oP->p('+---------------------------+---------+---------------------+---------------------+--------+-----------+');  
  195.     while($oTask = $oTasks->Fetch())  
  196.     {  
  197.         $sTaskName = $oTask->Get('class_name');  
  198.         $sStatus = $oTask->Get('status');  
  199.         $sLastRunDate = $oTask->Get('latest_run_date');  
  200.         $sNextRunDate = $oTask->Get('next_run_date');  
  201.         $iNbRun = (int)$oTask->Get('total_exec_count');  
  202.         $sAverageRunTime = $oTask->Get('average_run_duration');  
  203.         $oP->p(sprintf('| %1$-25.25s | %2$-7s | %3$-19s | %4$-19s | %5$6d | %6$7s s |'$sTaskName$sStatus$sLastRunDate$sNextRunDate$iNbRun$sAverageRunTime));  
  204.     }     
  205.     $oP->p('+---------------------------+---------+---------------------+---------------------+--------+-----------+');  
  206. }  
  207. ////////////////////////////////////////////////////////////////////////////////  
  208. //  
  209. // Main  
  210. //  
  211. if (utils::IsModeCLI())  
  212. {  
  213.     $oP = new CLIPage("iTop - CRON");  
  214. }  
  215. else  
  216. {  
  217.     $oP = new WebPage("iTop - CRON");  
  218. }  
  219.   
  220. try  
  221. {  
  222.     utils::UseParamFile();  
  223. }  
  224. catch(Exception $e)  
  225. {  
  226.     $oP->p("Error: ".$e->GetMessage());  
  227.     $oP->output();  
  228.     exit -2;  
  229. }  
  230.   
  231. if (utils::IsModeCLI())  
  232. {  
  233.     // Next steps:  
  234.     //   specific arguments: 'csvfile'  
  235.     //     
  236.     $sAuthUser = ReadMandatoryParam($oP'auth_user''raw_data');  
  237.     $sAuthPwd = ReadMandatoryParam($oP'auth_pwd''raw_data');  
  238.     if (UserRights::CheckCredentials($sAuthUser$sAuthPwd))  
  239.     {  
  240.         UserRights::Login($sAuthUser); // Login & set the user's language  
  241.     }  
  242.     else  
  243.     {  
  244.         $oP->p("Access wrong credentials ('$sAuthUser')");  
  245.         $oP->output();  
  246.         exit -1;  
  247.     }  
  248. }  
  249. else  
  250. {  
  251.     $_SESSION['login_mode'] = 'basic';  
  252.     require_once(APPROOT.'/application/loginwebpage.class.inc.php');  
  253.     LoginWebPage::DoLogin(); // Check user rights and prompt if needed  
  254. }  
  255.   
  256. if (!UserRights::IsAdministrator())  
  257. {  
  258.     $oP->p("Access restricted to administrators");  
  259.     $oP->Output();  
  260.     exit -1;  
  261. }  
  262.   
  263.   
  264. // Enumerate classes implementing BackgroundProcess  
  265. //  
  266. $aBackgroundProcesses = array();  
  267. foreach(get_declared_classes() as $sPHPClass)  
  268. {  
  269.     $oRefClass = new ReflectionClass($sPHPClass);  
  270.     $oExtensionInstance = null;  
  271.     if ($oRefClass->implementsInterface('iBackgroundProcess'))  
  272.     {  
  273.         if (is_null($oExtensionInstance))  
  274.         {  
  275.             $oExecInstance = new $sPHPClass;  
  276.         }  
  277.         $aBackgroundProcesses[$sPHPClass] = $oExecInstance;  
  278.     }  
  279. }  
  280.   
  281.   
  282. $bVerbose = utils::ReadParam('verbose', false, true /* Allow CLI */);  
  283.   
  284. if ($bVerbose)  
  285. {  
  286.     $aDisplayProcesses = array();  
  287.     foreach ($aBackgroundProcesses as $oExecInstance)  
  288.     {  
  289.         $aDisplayProcesses[] = get_class($oExecInstance);  
  290.     }  
  291.     $sDisplayProcesses = implode(', '$aDisplayProcesses);  
  292.     $oP->p("Background processes: ".$sDisplayProcesses);  
  293. }  
  294. if (utils::ReadParam('status_only', false, true /* Allow CLI */))  
  295. {  
  296.     // Display status and exit  
  297.     DisplayStatus($oP);  
  298.     exit(0);  
  299. }  
  300.   
  301. // Compute the name of a lock for mysql  
  302. // The name is server-wide  
  303. $oConfig = utils::GetConfig();  
  304. $sLockName = 'itop.cron.'.$oConfig->GetDBName().'_'.$oConfig->GetDBSubname();  
  305.   
  306. $oP->p("Starting: ".time().' ('.date('Y-m-d H:i:s').')');  
  307.   
  308. // CAUTION: using GET_LOCK anytime on the same connexion will RELEASE the lock  
  309. // Todo: invoke GET_LOCK from a dedicated session (encapsulate that into a mutex class)  
  310. $res = CMDBSource::QueryToScalar("SELECT GET_LOCK('$sLockName', 1)");// timeout = 1 second (see also IS_FREE_LOCK)  
  311. if (is_null($res))  
  312. {  
  313.     // TODO - Log ?  
  314.     $oP->p("ERROR: Failed to acquire the lock '$sLockName'");  
  315. }  
  316. elseif ($res === '1')  
  317. {  
  318.     // The current session holds the lock  
  319.     try  
  320.     {  
  321.         CronExec($oP$aBackgroundProcesses$bVerbose);  
  322.     }  
  323.     catch(Exception $e)  
  324.     {  
  325.         // TODO - Log ?  
  326.        $oP->p("ERROR:".$e->getMessage());  
  327.        $oP->p($e->getTraceAsString());  
  328.     }  
  329.     $res = CMDBSource::QueryToScalar("SELECT RELEASE_LOCK('$sLockName')");  
  330. }  
  331. else  
  332. {  
  333.     // Lock already held by another session  
  334.     // Exit silently  
  335.     $oP->p("Already running...");  
  336. }  
  337. $oP->p("Exiting: ".time().' ('.date('Y-m-d H:i:s').')');  
  338.   
  339. $oP->Output();  
  340. ?>  
12

A main részekbe tegyél szépen

inf · 2013. Okt. 2. (Sze), 09.04
A main részekbe tegyél szépen sorban exit-eket minden nagyobb blokk után, aztán egyesével szedegesd ki. Amíg meg nem találod azt a blokkot, ami miatt a homokórázás van. Ráézésre nem nagyon lehet megmondani. A timelimit be van állítva rendesen? Már úgy értem látok benne olyan változót. Ha túl nagy a timelimit, akkor gondolom szépen sorban csinálja a task-jeit, amíg le nem jár, azért homokórázik... A böngészőben nem kapod meg úgy a konzol-ba tett szöveget, mint cli-ben, ott meg kell várni, amíg lefut a teljes script, és egyszerre fogja elküldeni a végén... Jobban járnál, ha a
  1. if (utils::IsModeCLI())    
  2. {    
  3.     $oP = new CLIPage("iTop - CRON");    
  4. }    
  5. else    
  6. {    
  7.     $oP = new WebPage("iTop - CRON");    
  8. }   
WebPage helyett írnál egy saját megoldást, ami fájlba loggol, vagy betennél egy flush-t a WebPage-be minden bejegyzés után, hogy el is jusson a böngészőbe... Ez utóbbi nem tudom, hogy mennyire életszerű, még sosem használtam.
13

Köszönöm szépen a segitséget,

skull87 · 2013. Okt. 2. (Sze), 09.50
Köszönöm szépen a segitséget, már lefut a script csak problémázik a gmail imappal de az már csak finomhangolás kérdése.

A leggyorsabb megoldás a timelimit volt ami 600 sec -re volt alapból állitva ezt át állitottam 60 sec -re és igy vissza is adja a bongésző a status ablakot, hogy mi történt :)
16

Ja, gondoltam, hogy nem a

inf · 2013. Okt. 2. (Sze), 18.22
Ja, gondoltam, hogy nem a kódban van a hiba, hanem a beállításokban. A flush-ot kipróbálnám a helyedben, hátha úgy töltögetés közben is jönne vissza adat az oldalról, amit kiír, és nem kéne végigvárni... Bár én ezt csak elméletben tudom, gyakorlatban sosem próbáltam. :D Azt hiszem kipróbálom egy sleep-es oldallal, hogy tényleg műdködik e...
17

Kiprobálom majd azt is csak

skull87 · 2013. Okt. 2. (Sze), 19.55
Kiprobálom majd azt is csak most bajlodik az ssl -el amit nem tud betölteni :) amint ez megvan akkor nyugiban lehet a flusht is probálgatni :)
18

Ja, vannak fontosabb dolgok

inf · 2013. Okt. 2. (Sze), 21.47
Ja, vannak fontosabb dolgok is :-) én pl babylon 5-öt néztem :D a régi sorozatokban valahogy még van történet, a mostaniakat 2 sorban össze lehet foglalni, gondolom azért nem is húzzák valami sokáig őket, elfogy a nézettség, megvonják a támogatást 2 évad után, aztán vége...
19

Zárni lehet a topicot

skull87 · 2013. Okt. 4. (P), 13.24
Zárni lehet a topicot :D

Köszönöm!
20

Itt nem szokás lezárni, nem

inf · 2013. Okt. 4. (P), 20.34
Itt nem szokás lezárni, nem is hiszem, hogy van ilyen feature a rendszerben :D
21

Drupal

Pepita · 2013. Okt. 5. (Szo), 02.02
Ha a kommentek számát lehet állítani, gondolom lezárni is lehet. De akkor hova spammelnének? :)
22

Hát én Ádámot kérdezném, ő

inf · 2013. Okt. 5. (Szo), 02.37
Hát én Ádámot kérdezném, ő jobban tudja, hogy mit lehet és mit nem ebben a rendszerben. Annyit tudok, hogy nincs ilyen jogköröm.
23

Ha tudod szerkeszteni magát a

pp · 2013. Okt. 5. (Szo), 05.56
Ha tudod szerkeszteni magát a node-ot, jelen esetben a fórum indító hozzászólást, akkor ott a hozzászólásoknál be lehet állítani, hogy csak olvashatóak legyenek a hozzászólások, kvázi lezárva ezzel a topic-ot.

pp
24

És tényleg :D Hogy mik vannak

inf · 2013. Okt. 5. (Szo), 06.32
És tényleg :D Hogy mik vannak :D
25

okés, nem tudtam :D

skull87 · 2013. Okt. 5. (Szo), 21.16
okés, nem tudtam :D
26

ugy tünik elöjött egy másik

skull87 · 2013. Okt. 10. (Cs), 12.24
ugy tünik elöjött egy másik hiba ugyan ezzel a scriptel :)
ha kiprobálom akkor a login oldal jön elő, de ez nekem nem jó mert webcronban akkor nem fog lefutni, persze ha beirom a usert és passt lefut a script.

A user és pass a scriptben megvan adva az 54 -ik sorban aut_user és auth_pass kitöltöttem a megfelelő adatokkal de mintha soron kivül hagyná mert ugyan az a login oldal jön be.
28

A 251-edik sorban be van

vrnagy · 2013. Okt. 10. (Cs), 15.02
A 251-edik sorban be van allitva egy "basic" login, ez azt jelenti, hogy nem egy login form jon be, hanem a bongeszo ker egy felhasznalonevet es jelszot (HTTP auth)?
Ha igen akkor az URL-t megadhatod http://felhasznalo:jelszo@eredetiurl formaban is, es akkor nem fog jelszot kerni.