А не подскажите как написать скрипт который допустим будет запускатся раз в 4 дня и чистить таблицу MySQL от записей которые старее 3дней (в таблице есть поле date) И ещё вопрос есть массив $a=array(1,2,3,0,0); Как можно очистить его от нулей?
m0nsieur,спасибо)проверил по другому Создал 2файла один с htmlentities,другой без, ввел Первый вывел : Проверка Второй Проверка да еще +выполнился скрипт)
rudvil,Я проверяю нажата ли кнопка!!! Да,тут все просто))если она есть)то не выдается форма,если нет,то выдается форма,это обычная перменная!
1. Повесь скрипт на cron который будет вызываться каждые 4 дня. 2. Попробуй так. PHP: $a=array(1,2,3,0,0); $b = array(); $i=0; foreach ($a as $value) { if($value != 0) { $b[$i] = $value; $i++; } } print_r($b);
Неее, пробовать не надо) Правильно так: PHP: <?php $a = array(1, 2, 3, 0, 0); foreach($a as $key => $value) if($value == 0) unset($a[$key]); var_dump($a); ?>
Зачем выдумывать велосипед, когда за вас уже всё выдумали: PHP: function non_zero($var) { return ($var != 0); } $array = array(1, 2, 3, 0, 0); print_r(array_filter($array, "non_zero"));
PHP: function genPass($len, $mix = '') { $alpha = 'qwertyuiopasdfghjklzxcvbnm1234567890'; #алфавит $result = ''; #результат $alpha .= $mix; #добавляем доп. символы for($i = 0, $alphlen = strlen($alpha); $i < $len; $i++) #добавляем в цикле случайные символы $result .= $alpha{mt_rand(0, $alphlen - 1)}; #случайное число из алфавита return $result; #возвращаем результат } echo genPass(16);
PHP: function random_word($count) { $arr = array('a','b','c','d','e','f', 'g','h','i','j','k','l', 'm','n','o','p','r','s', 't','u','v','x','y','z', 'A','B','C','D','E','F', 'G','H','I','J','K','L', 'M','N','O','P','R','S', 'T','U','V','X','Y','Z', '1','2','3','4','5','6', '7','8','9','0'); $word = ""; for($i = 0; $i < $number; $i++) { $index = rand(0, count($arr) - 1); $word .= $arr[$index]; } return $word; } echo random_word(16); Не самое красивое решение, зато простое и интуитивно понятное, щас дам еще второй вариант. UPD: опоздал, но сейчас все равно напишу второй вариант, самому пригодится. PHP: <?php function random_word($count) { $word=""; for ($i=0; $i<$count; $i++) { do { $rand=mt_rand(0,66)+65; if ($rand>122) $rand=$rand-74; } while ($rand>90 && $rand<97); $word.=chr($rand); } return $word; } echo random_word(100); ?> В процессе написания понял, что этот вариант будет сложнее, но тоже рабочий =)
Ре адепты! Помогите плиз с пхп кодом! Кароче цель такова: На главную страницу сайта выводятся "краткие новости" Мне нужно, чтобы при нажатие на ссылку "подробнее" выводилась полная новость, ну думаю вы поняли о чем я... И так, мои дейстия: делаю ссылку в цикле главной страници: PHP: <? include"config.php"; { $query = "SELECT * FROM news order by id desc LIMIT 0,100000"; $result = mysql_query($query); while ($row = mysql_fetch_array($result)) : print'<table style="border: 1px solid #ffffff; padding: 0px;" width="100%" border="0" cellpadding="0" cellspacing="0"> <tbody><tr> <td align="center" background="images/button.jpg" height="22"> <table style="border-bottom: 1px solid #ffffff; padding: 0px;" width="100%" border="0" cellpadding="0" cellspacing="0"> <tbody><tr> <td width="100%" align="left"><CENTER><b>'.$row['name'].'</b></CENTER></b></td> </tr> </tbody></table> </td> </tr> <tr> <td colspan="2" style="padding: 4px;"><noindex><center><tr> <td colspan="2" style="padding: 4px;"> '.$row['text'].' <div align="right"> <div> </div> <div> </div> Автор: <b>bug1z</b> | <a href="news.php?id='.$row['id'].'"><b>подробнее</b></a> </div></td></center></td> </tr> <tr> <td colspan="2" style="padding: 4px;"> <div align="right"> </div></td> </tr> </tbody></table> <div> </div>'; endwhile; } ?> затем создаю файл news.php с циклом следуйщего содержания: PHP: <? include"config.php"; $id=$GET['id']; { if($id) echo $news; $query = "SELECT * FROM news where id=".$id; $result = mysql_query($query); while ($row = mysql_fetch_array($result)) : print'<table style="border: 1px solid #ffffff; padding: 0px;" width="100%" border="0" cellpadding="0" cellspacing="0"> <tbody><tr> <td align="center" background="images/button.jpg" height="22"> <table style="border-bottom: 1px solid #ffffff; padding: 0px;" width="100%" border="0" cellpadding="0" cellspacing="0"> <tbody><tr> <td width="100%" align="left"><CENTER><b>'.$row['name'].'</b></CENTER></b></td> </tr> </tbody></table> </td> </tr> <tr> <td colspan="2" style="padding: 4px;"><noindex><center><tr> <td colspan="2" style="padding: 4px;"> '.$row['text2'].' <div align="right"> <div> </div> <div> </div> Автор: <b>bug1z</b> | </div></td></center></td> </tr> <tr> <td colspan="2" style="padding: 4px;"> <div align="right"> </div></td> </tr> </tbody></table> <div> </div>'; endwhile; } ?> В итоге не выводится ни новость, ни таблица В чем проблема? Зарание спасибо!
2 -m0rgan- Первый код полностью рабочий! Если нет смотри подключение к базе. Он не может ничего не выводить, что то должен либо верно, либо ошибку, так вот вопрос КАКУЮ ошибку у тебя выводит? Второй код ошибка ммм... скорее оЧеПятка вот тут PHP: $id=$GET['id']; нужно PHP: $id=$_GET['id']; Потом не совсем ясно зачем у тебя СРАЗУ за этой строкой открыта скобка { Если по логике она должна быть после if ($id) { Ну и последнее, я конечно не знаю что у тебя в config.php но откуда у тебе берется значение переменной $news в строке echo $news; если не откуда то выдаст ошибку Notice: Undefined variable: news in ...
Не помогло=( Первый код пашет, все там гуд А вот во втором ошибку ни какую не выводит,там, вапше ничего не выводит, ни новости, ни таблички, в которой должна выводтися овость, такое впечетление, что цыкл вапще не обрабатуется Конфиг: PHP: <? $link = mysql_connect(localhost, bug1z, test) or die('Не возможно соединиться с базой ('.mysql_error().')'); mysql_select_db(arthacking) or die('Нельзя выбрать базу ('.mysql_error().')'); ?>
PHP: include"config.php"; { PHP: include"config.php"; $id=$GET['id']; { PHP: endwhile; } Это чо за скобочки фигурные??? К чему они относятся? http://ru.php.net/while + в начало каждого кода вставь: PHP: @ini_set("display_errors","1");