те, кто работал с ZipArchive class PHP (http://www.php.net/manual/en/class.ziparchive.php) , вопрос: есть ли метод/способ определить общий размер файлов в архиве, не распаковывая его? или придётся читать заголовки архива и искать там размеры файлов?
Byrger, мой вариант: PHP: <?php $del[32]= array(32, 16, 8, 4, 2, 1); $del[16]= array(16, 8, 4, 2, 1); $del[8]= array(8, 4, 2, 1); $del[4]= array(4, 2, 1); $del[2]= array(2, 1); $del[1]= array(1); function random($array) { $n = $array[rand (0, count($array)-1)]; return $n; } $n1 = random($del[32]); $n2 = random($del[32/$n1]); $n3 = 32/($n1*$n2); echo $n1.' * '.$n2.' * '.$n3.' = 32'; ?> Используется несколько массивов, поэтому памяти побольше будет юзать чем ксрипт от mailbrush, но в моём варианте не тратится время на поиск нужной комбинации, так что возможно быстрее будет работать.. Хотя ХЗ-ХЗ...)
Это типа поиск? это скорее лотерея, где если повезёт, то комбинация даст 32 ))) (я про скрипт mailbrush)
Уважаемые мастера! У меня есть движок мониторинга серверов кс 1.6! Задача стоит вот в чем: 1)Какимто образом вывести самую популярную карту! 2)Сделать графики посещаемости серверов как на http://www.ukrgame.net/index.php?act=cod4graph
PHP: function IsValidLogin($login){ if(eregi("/^[a-zA-Z0-9А-Яа-я]{3,16}$/i",trim($login))) return(1); else return(0); } Функция чекает логин и должна принемать кирилицу чего она не делает Как поправить (все скрипты в utf8) но только средстрами PHP
если я правильно понял то попробуй так PHP: function IsValidLogin($login){ $login=iconv('UTF-8', 'windows-1251', $login); if(eregi("/^[a-zA-Z0-9А-Яа-я]{3,16}$/i",trim($login))) return(1); else return(0); }
Посоветуйте класс, библиотеку для работы с почтой, pop-imap, smtp. Максимально универсальную. Что-то порылся на phpclasses но пока глухо. Писать с нуля не хочется. Есть готовые решения? Спасибо
Chode Тут не эекстрасенсы сидят, напиши какой должен быть функционал, потом глянь в Полезных скриптах, может там чё есть.
help me) есть текстовик : PHP: ............................... 21 432=> 343 4354235 42<=3=> 234 6542=>36 5423 <=654235435 346432 <=4352435423 5 Нужно чтобы скрипт если находил в строках <= и => то изменял отступ последуюших строк, тоесть должно получиться: PHP: ...................... 21 432=> 343 4354235 42<=3=> 234 6542=>36 5423 <=654235435 346432 <=4352435423 5
выдвинуть из текста на один отступ ближе а дальше текст пустить как перед такой строкой PHP: // 1213 35 4<=354=>6 5465 654 6
PHP: echo"<script type='text/javascript' src='".JS."jquery.js'></script>\n"; echo"<script type='text/javascript' src='".JS."cookies.js'></script>\n"; echo"<script type='text/javascript' src='".JS."jquery.cookies.js'></script>\n"; echo "<title>".$settings['sitename']."</title>\n"; ?> <? echo"</head>\n"; require_once INCLUDES."navigation.php"; echo"<center><table border='0' align='center' cellpadding='0' cellspacing='0' class='stat sortable' >"; if(!$serv_num==0){ echo"</tbody></table>"; echo"<link rel='stylesheet' href='http://www.mon1toring.ru/templates/two-tiers.css' type='text/css'></link>\n"; echo"<link rel='stylesheet' href='http://www.mon1toring.ru/templates/default.css' type='text/css'></link>\n"; echo "<hr class='none_hr' /><table border='0' align='center' cellpadding='0' cellspacing='0' class='another_table' width='100%'><th width='4%'><center><DIV align=center> <IMG height=11 src='images/pw1.gif' width=9 border=0 ;></DIV></center></th><th width='28%'><left>".$locale['010']."</left></th><th width='10%'><center>".$locale['011']."</center></th><th width='20%'><center>".$locale['012']."</center></th><th width='18%'><center>".$locale['013']."</center></th><th width='8%'><center>".$locale['014']."</center></th><th width='6%'><center>".$locale['015']."</center></th><th width='6%'><center>".$locale['016']."</center></th></tr>"; $i=0; while($r=dbarray_fetch($servers)) { $players = $r['server_players']."/".$r['server_maxplayers'] ; if($r['server_players'] == $r['server_maxplayers']) { $players = "<font color='#00FF00'>".$r['server_players']."/".$r['server_maxplayers']."</font>";} if($r['server_players'] == 0) { $players = "<font color='red'>".$r['server_players']."/".$r['server_maxplayers']."</font>";} $i++; $img = "<img src='images/maps/default.jpg' width='40' height='30'>"; if (file_exists("images/maps/$r[server_map].jpg")) {$img = "<img src='".BASEDIR."images/maps/$r[server_map].jpg' width='40' height='30' alt='$r[server_map]'>";} if($r['server_vip']==1){ echo"<tr class='' onmouseout=this.className='' onmouseover=this.className='hl' height='30' style='background: #570016; text-align:left;'><td>$i</td>";} else {echo"<tr class='' onmouseout=this.className='' onmouseover=this.className='hl'><td>$i</td>";} echo"<td align='left'><a href='".$settings['siteurl']."server-$r[server_id]' id='link'>$r[server_name]</a></td>"; echo"<td align='center'><a href='steam://connect/$r[server_ip]'>$r[server_ip]</a></td>"; echo"<td align='center'><a href='./images/maps/$r[server_map].jpg'>".$img."<br>$r[server_map]</a></td>"; echo"<td align='center'>".$players."</td>"; echo"<td align='center'>$r[server_protokol]</td>"; echo"<td align='center'><img src='images/flags/$r[server_location].png' height='12' width='16' alt='$r[server_location]' title='$r[server_location]''></td>"; echo"<td align='center'>"; if($r['server_vip']==1){ echo $locale['018']; } else{ echo "<span class='votes_count' id='votes_count$r[server_id]' >".$r['votes']."</span>"; echo "<span class='vote_buttons' id='vote_buttons$r[server_id]'>"; echo " <a href='javascript:;' class='vote' id='$r[server_id]'></a>"; echo "</span>"; } echo "</td></tr></tr>"; } } else {echo "<th><center> ".$locale['017']."</center></th>"; } echo"</tbody></table></center>"; if($serv_num !=0) { $ip = getenv('REMOTE_ADDR'); $ip = $_SERVER['REMOTE_ADDR']; echo "<div align='center'>Ваш IP адрес: ";echo $ip; echo"</tbody></table></center><div align='center'><a href ='all_servers'>".$locale['022']."</a></div>";} echo"<hr class='clear'>"; вот скрипт вывода инфы о серверах!CS ребят нада замутить вывод популярной карты Если возможно описать по подробнее! Много где обращался везде баян!Последняя надежда на вас!) Заранее спасибо!
Безопасен ли инклуд? PHP: function cl_include($action){ $action = (string)($action); $filter = array("http","ftp",":",";","/","\\",".","%27","'","`","=","%","base64"); $filter_data = str_replace($filter, "", $action); return $filter_data; } $action=htmlspecialchars((string)$_GET[action]); if((file_exists("modules/$action.php"))&&(is_file("modules/$action.php"))){ $action=cl_include($action); include("modules/$action.php"); }
Помогите составить POST multipart/form-data запрос через curl PHP: POST http://site.ru/add.php HTTP/1.1 User-Agent: Opera/9.80 (Windows NT 5.2; U; ru) Presto/2.2.15 Version/10.01 Host: site.ru Accept: text/html, application/xml;q=0.9, application/xhtml+xml, image/png, image/jpeg, image/gif, image/x-xbitmap, */*;q=0.1 Accept-Language: ru-RU,ru;q=0.9,en;q=0.8 Accept-Charset: iso-8859-1, utf-8, utf-16, *;q=0.1 Accept-Encoding: deflate, gzip, x-gzip, identity, *;q=0 Referer: http://site.ru/rent/add.html Cookie: uid=AAAAACcbJEvUO3WmAWhUBQ==; pscode=OXYfz9gLUP2Ln8vjiIUdoJUXZiVpc581; isauth=1 Cookie2: $Version=1 Connection: Keep-Alive, TE TE: deflate, gzip, chunked, identity, trailers Content-Length: 2237 X-Opera-Info: ID=869, p=0, f=7, sw=1024, sh=768 X-Opera-ID: e91b0c8c521ea347c317914aa6fb71c48a9653b74459580683b9e82620e0704d X-Opera-Host: t09-02:12431 X-OA: 2740 15d569fbf510645c5b829f9b084a0510389d1de51650653f093436ca8c4d5fa1 X-OB: peregrine Content-Type: multipart/form-data; boundary=----------t9JEJDbwWY3An0Q9pvzHgH ------------t9JEJDbwWY3An0Q9pvzHgH Content-Disposition: form-data; name="action" add ------------t9JEJDbwWY3An0Q9pvzHgH Content-Disposition: form-data; name="rubric" 2 ------------t9JEJDbwWY3An0Q9pvzHgH Content-Disposition: form-data; name="object" 6 ------------t9JEJDbwWY3An0Q9pvzHgH Content-Disposition: form-data; name="region" 3 ------------t9JEJDbwWY3An0Q9pvzHgH Content-Disposition: form-data; name="series" 6 ------------t9JEJDbwWY3An0Q9pvzHgH Content-Disposition: form-data; name="build_type" 3 ------------t9JEJDbwWY3An0Q9pvzHgH Content-Disposition: form-data; name="status" 1 ------------t9JEJDbwWY3An0Q9pvzHgH Content-Disposition: form-data; name="decoration" 1 ------------t9JEJDbwWY3An0Q9pvzHgH Content-Disposition: form-data; name="address" пр.Ленина 93 ------------t9JEJDbwWY3An0Q9pvzHgH Content-Disposition: form-data; name="area_build" 36 ------------t9JEJDbwWY3An0Q9pvzHgH Content-Disposition: form-data; name="floor" 3 ------------t9JEJDbwWY3An0Q9pvzHgH Content-Disposition: form-data; name="floors" 1 ------------t9JEJDbwWY3An0Q9pvzHgH Content-Disposition: form-data; name="phone" 1 ------------t9JEJDbwWY3An0Q9pvzHgH Content-Disposition: form-data; name="furnit" 1 ------------t9JEJDbwWY3An0Q9pvzHgH Content-Disposition: form-data; name="area_site" 34 ------------t9JEJDbwWY3An0Q9pvzHgH Content-Disposition: form-data; name="area_site_unit" 1 ------------t9JEJDbwWY3An0Q9pvzHgH Content-Disposition: form-data; name="contacts" [email protected] ------------t9JEJDbwWY3An0Q9pvzHgH Content-Disposition: form-data; name="price" 0 ------------t9JEJDbwWY3An0Q9pvzHgH Content-Disposition: form-data; name="price_unit" 1 ------------t9JEJDbwWY3An0Q9pvzHgH Content-Disposition: form-data; name="img1"; filename="" ------------t9JEJDbwWY3An0Q9pvzHgH Content-Disposition: form-data; name="img2"; filename="" ------------t9JEJDbwWY3An0Q9pvzHgH Content-Disposition: form-data; name="img3"; filename="" ------------t9JEJDbwWY3An0Q9pvzHgH Content-Disposition: form-data; name="description" ------------t9JEJDbwWY3An0Q9pvzHgH Content-Disposition: form-data; name="period" 1 ------------t9JEJDbwWY3An0Q9pvzHgH--
Про экстрасенсов я вижу. Объясню: я написал "для работы c pop-imap, smtp" - под этим подразумевал прием и передача почты. Словосочетание "максимально универсальную" означало наибольшую совместимость с различными стандартами протоколов - стандарты RFC для IMAP, POP3, SMTP. Таким образом искомая библиотека, класс, расширение PEAR или еще что нибудь должно обладать готовыми средствами для автоматического определения стандартов используемых для, хотя бы, простейшего приема, передачи почты. Сейчас лучше ?
Вот, вроде так... Заголовки не все, но по аналогии, думаю доделаешь. PHP: $upload=""; $postdata = array("action" => "add", "rubric" => "2", "rubric" => "2", "object" => "6", "region" => "3", "img1" => "@".$upload); $httpheaders = array("Host: site.ru", "Cookie2: $Version=1"); $url="http://site.ru/add.php"; $ch = curl_init(); curl_setopt($ch, CURLOPT_URL, $url); curl_setopt($ch, CURLOPT_RETURNTRANSFER, 0); curl_setopt($ch, CURLOPT_HEADER, 1); curl_setopt($ch, CURLOPT_COOKIE, "uid=AAAAACcbJEvUO3WmAWhUBQ==; pscode=OXYfz9gLUP2Ln8vjiIUdoJUXZiVpc581; isauth=1"); curl_setopt($ch, CURLOPT_HTTPHEADER, $httpheaders); curl_setopt($ch, CURLOPT_USERAGENT, "Opera/9.80 (Windows NT 5.2; U; ru) Presto/2.2.15 Version/10.01") curl_setopt($ch, CURLOPT_POST, 1); curl_setopt($ch, CURLOPT_POSTFIELDS, $postdata); curl_setopt($ch, CURLOPT_FOLLOWLOCATION, true); $result = curl_exec($ch); curl_close($ch);
PHP: <?php $filter_data = 'hthttptp'; $filter = array("http","ftp",":",";","/","\\",".","%27","'","`","=","%","base64"); $filter_data = str_replace($filter, "", $filter_data); echo $filter_data; ?> выведет: Вот и вся твоя защита, указывай явно что можно инлудить а что нет.