Autor Zpráva
libormasek
Profil
Dobrý den mám napsaní kód na obnovu reklam po půlnoci.0,00
Ale nějak my to nefunguje.Funguje pouze ruční obnova.
Mám něco špatně?Vše je na endoře,předem děkuji

<?php
$host="xxxx";
$username="xxxx";
$password="xxxx";
$database="xxxx";
$table="adv_tr_ptc";
$connection = mysql_connect("$host", "$username", "$password") or die ("Nemuzu se připojit na server");
mysql_select_db("$database") or die ("Špatná databáze");
$sql = "TRUNCATE TABLE `$table`";
mysql_query($sql);
mysql_close($connection);
?>
Enko
Profil
Přidej si tam pár podmínek a logování chyb, třeba odesláním na emailu a to klidně i včetně úspěchu, alespoň vidíš, zda je vše OK. Mrkni do error logů a případně zkontroluj zda je správně nastavený cron. Ale spíš máš špatně nastavený cron, pokud po manuálním zavolání sckriptu proběhne vše, jak potřebuješ.
Tori
Profil
libormasek:
A provádí se vůbec ten skript? Připojí se k databázi? Místo silně zastaralé konstrukce or die() by bylo rozumnější použít aspoň základní logování chyb, např.:
<?php
$logfile = dirname(__FILE__).'/log.txt';
$error = '';
$host="xxxx";
$username="xxxx";
$password="xxxx";
$database="xxxx";
$table="adv_tr_ptc";
if (!mysql_connect($host, $username, $password))
    $error .= "\tChyba: Nemuzu se připojit na server.\n";
if (!$error && !mysql_select_db("$database"))
    $error .= "\tChyba: Špatná databáze.\n";
if (!$error) {
    $sql = "TRUNCATE TABLE `$table`";
    if (!mysql_query($sql))
        $error .= "\tChyba: selhal dotaz do DB, popis chyby: ".mysql_error()."\n";
    // mysql_close($connection); 
    // - tohle je zbytečné, spojení se uzavře automaticky při ukončení skriptu
}
$status = date('Y-m-d H:i:s')." Obnova reklamy...\n" . ($error ? $error : "\tOk.\n";
file_put_contents($logfile, $status);
libormasek
Profil
Tori:
Tento doplńující kód také nefunguje.Pouze

<?php
$host="xxxx";
$username="xxxx";
$password="xxxx";
$database="xxxx";
$table="adv_tr_ptc";
$connection = mysql_connect("$host", "$username", "$password") or die ("Nemuzu se připojit na server");
mysql_select_db("$database") or die ("Špatná databáze");
$sql = "TRUNCATE TABLE `$table`";
mysql_query($sql);
mysql_close($connection);
?>
Ale manuálně.Potřeboval bych to automaticky.Děkuju všem
Tori
Profil
To neměl být funkčnější kód, jen jsem přidala logování, abyste v případě chyby věděl, jaká chyba nastala. Jinak si stejně jako Enko myslím, že je špatně nastavený cron a ten skript se vůbec nespouští.

Vaše odpověď

Mohlo by se hodit


Prosím používejte diakritiku a interpunkci.

Ochrana proti spamu. Napište prosím číslo dvě-sta čtyřicet-sedm: