Изпразване на таблица

Karcho

Registered
Дайте и аз нещо да попитам, че неможах май да го направя като хората. Как да направя таблица автоматично да трие съдържанието си там например всеки ден в 24 часа?
 
Правиш си един скрипт, който да се задейства с Cron Jobs, а скрипта трябва да е:
Код:
<?php
// Връзката към базата данни

$delete=mysql_query("TRUNCATE `името на таблицата`") or die(mysql_error());
?>
 
Абе аз знам как ще е заявката, въпроса ми е как всеки ден в еди кой си час да се задейства.
 
Karcho каза:
if(date('G') == "00"){ala bala

така ще стане ли?
Ще стане!Ама кой ще ти стартира скрипта!Ти трябва да чакаш да стане 00.00 и да стартираш скрипта.ЗАтова това, както са ти дали, се прави с crontab(cron jobs).Тоест, автоматично задаваш в колко часа искаш да се стартира даденият php файл, в който имаш заявката за истриване на таблица
 
Да, зацепих сега, но този Крон Джоб или там както е, нещо немога да го направя.
 
На линукс система ли си.... иначе crontab вътре си правиш ред...

Код:
# m h dom mon dow user<>command
01 00 1 * * root cd /papkata/ti/ && php file.php

В началото на file.php трябва да имаш #!/usr/bin/php за да е изпълним чрез конзолата...... и му задай права +х за изпълнение.
 
djpatzo каза:
На линукс система ли си.... иначе crontab вътре си правиш ред...

Код:
# m h dom mon dow user<>command
01 00 1 * * root cd /papkata/ti/ && php file.php

В началото на file.php трябва да имаш #!/usr/bin/php за да е изпълним чрез конзолата...... и му задай права +х за изпълнение.

Това е неправилно да се прави.

Във crontab-а е добре да се описват пълните пътища да програмите и до файловете. И именно като го направиш това няма да е нужно да правиш, още по-неправилното cd /dir
Както е ненжно и това #!/usr/bin/php в началото на php файла, и chmod +x

просто в crona пишеш

Код:
01 00 1 * * root /usr/bin/php /home/user/dir_do_file/file.php >/dev/null 2>&1

последното ">/dev/null 2>&1" е добре да го слагате винаги ако не искате някой администратор да ви намрази много :)
 
ggenov каза:
djpatzo каза:
На линукс система ли си.... иначе crontab вътре си правиш ред...

Код:
# m h dom mon dow user<>command
01 00 1 * * root cd /papkata/ti/ && php file.php

В началото на file.php трябва да имаш #!/usr/bin/php за да е изпълним чрез конзолата...... и му задай права +х за изпълнение.

Това е неправилно да се прави.

Във crontab-а е добре да се описват пълните пътища да програмите и до файловете. И именно като го направиш това няма да е нужно да правиш, още по-неправилното cd /dir
Както е ненжно и това #!/usr/bin/php в началото на php файла, и chmod +x

просто в crona пишеш

Код:
01 00 1 * * root /usr/bin/php /home/user/dir_do_file/file.php >/dev/null 2>&1

последното ">/dev/null 2>&1" е добре да го слагате винаги ако не искате някой администратор да ви намрази много :)

А кое точно е неправилно... Аз щом съм го написал значи го ползвам и ще ти кажа причината за това cd /dir ... а ето я и нея... Ако в php файла имаш примерно едно include("file2.php"); какво правиш където file2.php ти е с данните за конекция към база данни... Ще ти изпише, че Access denied for user root@localhost using password 'NO' .... това поне на мен ми излиза като грешка и за това го правя с CD за може ако има файл който да се include да мога да го направя без проблем.
 
Когато се научиш да спазваш основни правила в писането на код, няма да имаш подобни проблеми. И след като ти го казвам значи стоя зад опита си, 13 години Линукс Администратор и 6 години PHP драскач.

Добре е навсякъде в кода си да инклудваш с пълен път. Ако пък те мързи да го пишеш:
define('ROOT_DIR','/var/www/htdocs/site_name/');
define('INC_DIR',ROOT_DIR.'includes/');

и после в кода:
require_once(INC_DIR.'mudria_kod.php');

Ако си разглеждал код на разни готови софтуери, ще си забелязъл, че хората не го правят по твоя начин.

А защо в corn-а трябва да пишеш пълен път и да не пишеш глупости е може би разговор на друга темя, за която за съжаление няма раздел в този форум и ако ти отговоря може да ме цензурират.
 

Back
Горе