Я тупой
Пользователи, просматривающие топик: none
|
Зашли как: Guest
|
Имя |
Сообщение |
<< Старые топики Новые топики >> |
|
|
Я тупой - 2009-06-29 14:18:42.646666
|
|
|
Pupkin-Zade
Сообщений: 9398
Оценки: 1489
Присоединился: 2004-03-10 13:54:16
|
Как в javascript получить параметр из адресной строки?? Например http://www.xakep.ru/?pupkin=loh Как получить loh???
|
|
|
RE: Я тупой - 2009-06-29 14:40:50.720000
|
|
|
Agent Smith
Сообщений: 976
Оценки: 0
Присоединился: 2007-04-10 21:56:49.593333
|
Вот как раз только закончил модуль для джумлы, который вытягивает то, что тебе нужно
function referrer()
{/*данная функция принимает ссылку реферера, разрезает её по знаку вопроса,
правую часть делить на переменные по знаку &. После того, как найдено совпа-
дение сайт-поисковый ключ, значение поискового ключа рекодируется. Для
mail.ru необходима дополнительная декодировка.*/
$db = & JFactory::getDBO();
if (isset($_SERVER['HTTP_REFERER']) and $_SERVER['HTTP_REFERER']!="")
{ $url=$_SERVER['SERVER_NAME'];
$jreferer=$_SERVER['HTTP_REFERER'];
$jreferer=strtolower($jreferer);
if (!stristr($jreferer,$url))
{/*в первую очередь проверяем, а не пришел ли юзер от поисковика.
Если да, то главное узнать что он искал в поисковике*/
if (stristr($jreferer,'?'))
{extract(fint_text($jreferer));
/*теперь, если это не был поисковик или не была найдена поисковая
фраза, созраняем просто линк*/
if (isset($text))
{$q="SELECT `id` FROM `#__bot_words` WHERE `from`='".$jreferer."'";
$db->setQuery($query);
$folow = $db->loadResult();
$self="http://".$_SERVER['SERVER_NAME'].$_SERVER['REQUEST_URI'];
if ($folow=="")
{$query="INSERT INTO `#__bot_words` SET `bot_id`='".$bot."', ".
"`where`='".$self."', `from`='".$jreferer."', `word`='".$text."', ".
"`time`='".time()."', `hit`='1', `check`='".mt_rand(0,time())."'";
}
else
{$query="UPDATE `#__bot_words` SET `time`='".time()."', `hit`=`hit`+1 Where `id`='";
}
$db->setQuery( $query );
if (!$db->query()) {
return JError::raiseWarning( 500, $db->getError() );
}
}
else
{
return false;
}
}
}
}
}
function fint_text($jreferer)
{$db = & JFactory::getDBO();
list($vhost,$locate)=explode("?",$jreferer);
$q="SELECT * FROM `#__spider`";
$db->setQuery($q);
$rows = $db->loadObjectList();
if (count($rows)=="0")
{ return false;
}
else
{
foreach ($rows as $key=>$value)
{if (stristr($vhost,$value->pro_name))
{if ($value->param_chek=="1")
{$segment="chr(hexdec('$1')-848)";
$locate=preg_replace("!%u(\w{4})!e",$segment , $locate);
$jreferer=preg_replace("!%u(\w{4})!e", $segment, $jreferer);
}
$b = explode('&', $locate);
foreach ($b as $val)
{$frag=explode("=", $val);
If (@$frag[1]!="" and $frag[0]==$value->pattern)
{
$text=htmlspecialchars(urldecode(stripslashes($frag[1])));
$ret = array("text"=>$text, "locate"=>$locate, "jreferer"=>$jreferer,"bot"=>$value->id);
return ($ret);
}
}
}
}
}
}
//
А это дамп БД
где, можно указать какой параметр нужно тебе вытянуть
CREATE TABLE `jos_spider` (
`id` mediumint(9) NOT NULL auto_increment,
`name` varchar(255) NOT NULL default 'name',
`pro_name` varchar(255) NOT NULL default 'q',
`pattern` varchar(32) NOT NULL default 'q',
`param_chek` varchar(1) NOT NULL default '0',
`img` varchar(32) NOT NULL,
PRIMARY KEY (`id`)
) ENGINE=MyISAM DEFAULT CHARSET=utf8 AUTO_INCREMENT=16 ;
--
-- Дамп даних таблиці `jos_spider`
--
INSERT INTO `jos_spider` (`id`, `name`, `pro_name`, `pattern`, `param_chek`, `img`) VALUES
(1, 'QIP', 'qip.ru', 'query', '0', 'qip.png'),
(2, 'Live', 'live.com', 'q', '0', 'live.png'),
(3, 'Yandex', 'm.yandex.ru', 'query', '0', 'yandex.png'),
(4, 'Yandex', 'yandex', 'text', '0', 'yandex.png'),
(5, 'Google', 'google', 'q', '0', 'google.png'),
(6, 'Meta', 'meta.ua', 'q', '0', 'meta.png'),
(7, 'Rambler', 'rambler.ru', 'query', '0', 'rambler.png'),
(8, 'Nigma', 'nigma.ru', 's', '0', 'nigma.png'),
(9, 'Yahoo', 'yahoo.com', 'p', '0', 'yahoo.png'),
(10, 'mail.ru', 'mail.ru', 'q', '1', 'mailru.png'),
(11, 'search', 'search', 'query', '0', 'search.png'),
(12, 'search', 'search', 'q', '0', 'search.png'); Ой, сори, не дочитал, что ты хочешь джаваскриптом вынимать, хотя принцип тот же, кроме того, можно использовать Ajax
|
|
|
RE: Я тупой - 2009-06-29 14:41:28.383333
|
|
|
oRb
Сообщений: 4044
Оценки: 597
Присоединился: 2007-03-28 18:45:06.630000
|
http://tinyurl.com/n88upo
|
|
|
RE: Я тупой - 2009-06-29 14:48:30.590000
|
|
|
Agent Smith
Сообщений: 976
Оценки: 0
Присоединился: 2007-04-10 21:56:49.593333
|
Принцип тот же, только на JS. Разрезаем по знаку вопроса, а потом правую часть разрезаем по символу "&", а потом каждую строку в полученном массиве разрезаем по символу "="[sm=bu.gif]
|
|
|
RE: Я тупой - 2009-06-29 14:54:43.610000
|
|
|
Pupkin-Zade
Сообщений: 9398
Оценки: 1489
Присоединился: 2004-03-10 13:54:16
|
Афигеть… А проще ничего нет?
|
|
|
RE: Я тупой - 2009-06-29 15:31:42.240000
|
|
|
Cep}|{
Сообщений: 1396
Оценки: 0
Присоединился: 2007-06-26 01:11:51.416666
|
Куда проще-то ?)
var tmp = new Array(); // два вспомагательных
var tmp2 = new Array(); // массива
var param = new Array();
var get = location.search; // строка GET запроса
if(get != '') {
tmp = (get.substr(1)).split('&'); // разделяем переменные
for(var i=0; i < tmp.length; i++) {
tmp2 = tmp[i].split('='); // массив param будет содержать
param[tmp2[0]] = tmp2[1]; // пары ключ(имя переменной)->значение
}
alert(param['pupkin']);
}
|
|
|
RE: Я тупой - 2009-06-29 15:33:16.303333
|
|
|
Pupkin-Zade
Сообщений: 9398
Оценки: 1489
Присоединился: 2004-03-10 13:54:16
|
Если ты считаешь что написанное выше гораздо проще чем request("pupkin") то мы как то по разному мыслим…
|
|
|
RE: Я тупой - 2009-06-29 15:45:45.546666
|
|
|
Cep}|{
Сообщений: 1396
Оценки: 0
Присоединился: 2007-06-26 01:11:51.416666
|
А вот нету там такого) Хотя не помешало бы. ЗЫ. Можно тот код в функцию сунуть и будет request(); :)
|
|
|
RE: Я тупой - 2009-06-29 16:15:08.930000
|
|
|
Pupkin-Zade
Сообщений: 9398
Оценки: 1489
Присоединился: 2004-03-10 13:54:16
|
Ну так это понятно… Ладно, спасибо
|
|
|
RE: Я тупой - 2009-07-05 21:24:51.076666
|
|
|
volt95
Сообщений: 177
Оценки: 0
Присоединился: 2008-10-06 09:56:17.150000
|
Мне больше понравилось название темы :D з.ы. извиняюсь за тупой юмор(
|
|
|
|
|