|
|
Регистрация Восстановить пароль |
Регистрация | Задать вопрос |
Заплачу за решение |
Новые сообщения |
Сообщения за день |
Расширенный поиск |
Правила |
Всё прочитано |
|
Опции темы | Поиск в этой теме |
29.11.2011, 22:30 | #1 |
Новичок
Джуниор
Регистрация: 29.11.2011
Сообщений: 0
|
Доработка php скрипта для sitemap
Здравствуйте есть скрипт
Отвечает за добавления url в базу при вызове скрипта. <?php require("config.php"); $link = mysql_connect($config_databaseServe r,$config_databaseUsername,$config_ databasePassword); mysql_select_db($config_databaseNam e,$link); $url = $_SERVER["HTTP_REFERER"]; if (strlen($url)) { if (strpos($url,$config_baseHREF)===0) { $hash = md5($url); $sql = "INSERT INTO ".$config_databaseTablePrefix." urls SET hash='".$hash."',url='".mysql_escap e_string($url)."'"; mysql_query($sql,$link); } } header('Expires: Mon, 26 Jul 1997 05:00:00 GMT'); header('Cache-Control: no-store, no-cache, must-revalidate, private, post-check=0, pre-check=0', FALSE); header('Pragma: no-cache'); header("Content-Type: image/png"); readfile("autositemap.png"); exit(); ?> Формирование урлов в sitemap. <?php require("autositemap/config.php"); header("Content-Type: text/xml"); print "<?xml version='1.0' encoding='UTF-8'?>"; $pageLimit = 50000; $base = "http://".$_SERVER["HTTP_HOST"].$_SERVER["REQUEST_URI"]; $base = substr($base,0,strrpos($base,"/")+1); $link = mysql_connect($config_databaseServe r,$config_databaseUsername,$config_ databasePassword); mysql_select_db($config_databaseNam e,$link); if (isset($_GET["page"])) { print "<urlset xmlns='http://www.google.com/schemas/sitemap/0.84' xmlns:xsi='http://www.w3.org/2001/XMLSchema-instance' xsi:schemaLocation='http://www.google.com/schemas/sitemap/0.84 http://www.google.com/schemas/sitemap/0.84/sitemap.xsd'>"; $page = intval($_GET["page"]); $from = (($page-1)*$pageLimit); $sql = "SELECT * FROM ".$config_databaseTablePrefix." urls LIMIT ".$from.",".$pageLimit; $result = mysql_unbuffered_query($sql,$link); while($row = mysql_fetch_array($result,MYSQL_ASS OC)) { print "<url>"; print "<loc>".xmlentities($row["url"])."</loc>"; print "</url>"; } print "</urlset>"; } else { print "<sitemapindex xmlns='http://www.google.com/schemas/sitemap/0.84' xmlns:xsi='http://www.w3.org/2001/XMLSchema-instance' xsi:schemaLocation='http://www.google.com/schemas/sitemap/0.84 http://www.google.com/schemas/sitemap/0.84/siteindex.xsd'>"; $sql = "SELECT count(*) as count FROM ".$config_databaseTablePrefix."urls "; $result = mysql_query($sql,$link); $row = mysql_fetch_array($result,MYSQL_ASS OC); $pages = ceil($row["count"] / $pageLimit); for($i=1;$i<=$pages;$i++) { print "<sitemap>"; $loc = $base."sitemap.php?page=".$i; print "<loc>".xmlentities($loc)."</loc>"; print "</sitemap>"; } print "</sitemapindex>"; } exit(); function xmlentities($text) { $search = array('&','<','>','"','\''); $replace = array('&','<','>','" ','''); $text = str_replace($search,$replace,$text) ; return $text; } ?> Требуется доработка. 1) Сделать конфиг разрешающие добавлять определенные url. пример: "www.domen.tr/index.php?cat=vis&user=" , разрешать добавлять в базу если после знака '?' в url есть "cat=vis&user=" Возможно такое сделать, если да, то сколько это будет стоит, цены в личку. |
Похожие темы | ||||
Тема | Автор | Раздел | Ответов | Последнее сообщение |
Сниффер для php скрипта | J-Max | PHP | 3 | 19.11.2011 09:13 |
доработка скрипта раскрывающегося текста | Medvedoc | JavaScript, Ajax | 3 | 20.10.2011 09:42 |
php sitemap fsockopen | Kostia | PHP | 5 | 22.07.2011 11:49 |