вы чего, конечно можно PHP: <?php function somefunc($str) { return 'alert(\''.$str.'\')'; } ?> <a href="#" onclick="<?=somefunc('Йа креведко');?>">Сиськи</a>
А такой вариант подойдет? PHP: for ($j=1; $j<100; $j++) for ($i=189295200; $i<220917600 ; $i=$i+86400) { $s=sprintf("%02d",$j); echo date('dm',$i).$s; echo '<br>'; } Тут просто вывод, если надо в файл то вместо echo делаем запись в файл . З.Ы. Можно и без вложеного цикла... но функции работы с датами имеют диапазон от 1970 по 2038 посему именно так. Лишние даты есть - это 29 февраля в не високосных годах
if(preg_match('#32\.60\.\d{1,3}\.\d{1,3}#',$remoteaddr)){ ban; } Не проверял но вроде должно работать
если нада из БД брать делай так в бд например $fetch['ban'] = '32.60.*.*'; делаем $fetch['ban'] = preg_quote($fetch['ban']); $fetch['ban'] = str_replace('*','\d{1,3}',$fetch['ban']); if(preg_match("#$fetch['ban'] #",$remote addr)){ ban; }
Написал класс для работы с БД но проблема в то что он работает только в виндовс в локлке а на сервере не хочет вот сам класс PHP: <?php /** * @author @FATAL@ * @copyright 2008 */ class DB { public function __construct($host,$user,$db_pass,$db) { $this->connect = mysqli_connect($host,$user,$db_pass); mysqli_select_db($this->connect,$db); } function mysql_qw() { $this->args = func_get_args(); $qwery = $this->mysql_make_qw(); return $result = mysqli_query($this->connect,$qwery); mysqli_free_result($result); } private function mysql_make_qw() { $tml = $this->args; $tml[0] = str_replace('%','%%',$tml[0]); $tml[0] = str_replace('?','%s',$tml[0]); foreach ($tml as $i => $v) { if (!$i) { continue; } if (is_int($v)) { continue; } $tml[$i] = "'" . mysqli_escape_string($this->connect,$v) . "'"; } for ($i = $c = count($tml) - 1; $i < $c + 20; $i++) { $tml[$i + 1] = "UNKNOWN_PLACEHOLDER_$i"; return call_user_func_array("sprintf",$tml); } } public function __destruct() { mysqli_close($this->connect); } } ?> на сервере PHP 5 mysql 5 на компе денвер 3 на сервере пишет Code: Fatal error: Call to undefined function mysqli_connect() in /data/home/******/*****/includes/mysql.class.php on line 12 Видему функция отключена?
Можно и вот так, например PHP: $ip = $_SERVER['REMOTE_ADDR']; if (preg_match ('/^32\.60(\.([0-9]|[0-9][0-9]|[01][0-9][0-9]|2[0-4][0-9]|25[0-5])){2}$/', $ip)) { ban; }
PHP: <?php if(strpos($_SERVER['REMOTE_ADDR'], '32.60.') !== false) ban(); ?> Или PHP: <?php if(substr($_SERVER['REMOTE_ADDR'], 0, 5) == '32.60.') ban(); ?>
Вот написал скрипт вывода на экран юзер агента. PHP: <?PHP $x= $_server['http_user_agent']; echo $x; ?> А он мне пустой лист. В разных браузерах.
Пасибо. И еще вопрос. PHP: <?php $x= $_SERVER['HTTP_USER_AGENT']; switch ($x) { case ('Opera/9.25 (Windows NT 5.1; U; ru)'); echo Опера; } Если версия оперы 9,25 то все гуд, но если опера 9,27 или другая, то не выполняется. Можно ли чтоб тока если есть слово Opera, уже выполнять действие?
Вариантов куча PHP: if (strstr ($SERVER['HTTP_USER_AGENT'], "Opera") !== FALSE) echo "Это опера"; Можно другими функциями - ereg, preg_match, stristr...
PHP: <? $x = $_SERVER['HTTP_USER_AGENT']; $y = 'Opera'; $check = strpos($x, $y); if ($check === false) { echo 'Другой браузер<br>'; } else { echo 'Опера'; } ?> вот тут пофиг какая версия=) и еще посмари переменную сервер много полезного увидишь))) PHP: <? echo '<pre>'; print_r ($_SERVER); echo '</pre>'; ?>