|
Страници по тази тема: 1 | 2 | >> (покажи всички)
Тема
|
pls help ;-(
|
|
Автор |
pro_O1 (специален) |
Публикувано | 20.01.03 12:07 |
|
towa e edin kazus kojto bqh pusnal wyw web kluba i na kojto se nameri chastichen otgowor. stawa duma za slednoto neshto. imam sajt kojto w nqkolko foldera ima razlichni designi. imam skript (forum) kojto se wika ot wseki ot tezi folderi. za da se nastroi skripta kym layouta na wseki sajt i da izglevda tochno kato nego trqbwa skripta da razbira po nqkakyw nachin ot koj folder biwa wikan i da wzema cssa imenno ot tozi folder. nameri se slednoto reshenie na neshtata:
$css=$ENV{'HTTP_REFERER'};
$i=rindex($css, "/");
$css=substr($css, 0, $i);
i po-nadolu se wika s
<link rel='stylesheet' href='$css/styles.css' type='text/css'>
obache!
towa raboti samo za pyrwoto niwo i tam neshtata izglevdat naistina kakto trqbwa:
<link rel='stylesheet' href='http://site.com/styles.css' type='text/css'>
no kato se klikne na link ot foruma i se sleze edin level nadolu referrer-a weche se qwqwa skripta a ne site foldera i stawa taka:
<link rel='stylesheet' href='http://site.com/cgi-bin/msgboard/styles.css' type='text/css'>
kak move da se izbegne taq rabota??????
|
|
| |
Тема
|
Re: pls help ;-(
[re: pro_O1]
|
|
Автор | sevend (Нерегистриран) |
Публикувано | 20.01.03 14:10 |
|
neshto takova:(?)
use URI::URL;
$url= URI::URL->new($ENV{'HTTP_REFERER'});
$css = sprintf("%s://%s",
$url->scheme,
$url->netloc);
| |
Тема
|
Re: pls help ;-(
[re: pro_O1]
|
|
Автор |
usermod (непознат
) |
Публикувано | 21.01.03 01:30 |
|
spored men ima slednoto reshenie, (chrez "persistence"):
use DB_File;
$css_1 = $ENV{'HTTP_REFERER'}; # name for each css file
dbmopen %cssdb, "./css_db", 0600 ; # for example
%cssdb{$css_1} = $ENV{'HTTP_REFERER'} unless(exists $cssdb{$css_1});
dbmclose %cssdb;
$i=rindex($css_1, "/");
$css=substr($css_1, 0, $i);
$css = $css_1;
| |
Тема
|
Re: pls help ;-(
[re: pro_O1]
|
|
Автор | usermod (Нерегистриран) |
Публикувано | 21.01.03 01:36 |
|
zabravih - sled priklu4vane na rabotata na programata premahni zapisa za $css:
dbmopen ....
undef $cssdb{$css}
dbmclose
| |
Тема
|
Re: pls help ;-(
[re: pro_O1]
|
|
Автор | sevend (Нерегистриран) |
Публикувано | 21.01.03 11:18 |
|
edno po-kyso reshenie za obshtiq sluchai:
$ENV{HTTP_REFERER} = ~ m#(http://.*?)/#;
$css_loc = $1;
Vsichki predlozheniq sa v sluchai, che
ni interesuva net-location chastta ot URL-a.
| |
Тема
|
Re: pls help ;-(
[re: usermod]
|
|
Автор | sevend (Нерегистриран) |
Публикувано | 21.01.03 11:48 |
|
Hm, ako ideqta e da izpolzvash persistence s kluch chast ot URL-a, pak stigash do izhodna
poziciq, kak da se vzeme tazi chast.
Kato imash tazi chast,direktno si poluchavash
pytq do styles.css.
...a v koda si propusnal nqkoi raboti, samo zapisvash v cssdb, a ne se chete :-).
| |
Тема
|
Re: pls help ;-(
[re: pro_O1]
|
|
Автор |
Yankoff (ъанкофф.) |
Публикувано | 21.01.03 12:57 |
|
Tui kato HTTP_REFERER ne e zaduljitelen element ot http zaqvkata ne go prepora4vam da se izpolzva. mnogo firewall-i i programki za privacy go blockvat. kakvo she stane ako http_referer go nqma? nqma da ima design i css.
Zashto prosto ne go napravish s cookie. stava i s hidden pole (ili param v url-to) no s tova nai veroqtno shte ti se naloji da promenqsh dosta source.
nai dobre s cookie no kakto si reshish.
__________________________
| |
Тема
|
Re: pls help ;-(
[re: pro_O1]
|
|
Автор |
pro_O1 (специален) |
Публикувано | 21.01.03 13:15 |
|
blagodarq na wsichki za otgoworite do momenta. shte probwam razlichnite warianti i shte widq kakwo shte izleze... mersi oshte wednyv...
|
|
| |
Тема
|
Re: pls help ;-(
[re: pro_O1]
|
|
Автор |
pro_O1 (специален) |
Публикувано | 21.01.03 14:54 |
|
ami az wsyshtnost opitah tezi resheniq no wsyshtnost problema e che te stigat do samiq adres i se opitwat da wzemat cssa ot tam, a moite cssi sa 1 folder nadolu. poneve az samiq ne sym programist i nishtichko ne razbiram ot towa, kak move da se nakara skripta da sliza 1 folder nadolu?
chastta s cookieto mi hareswa no nqmam predstawa kak se setwa i chete ;-(
|
|
| |
Тема
|
Re: pls help ;-(
[re: pro_O1]
|
|
Автор |
Yankoff (ъанкофф.) |
Публикувано | 21.01.03 21:07 |
|
use CGI qw/:standard/;
use CGI::Cookie;
# taka se suzdava cookie
$cookie = new CGI::Cookie(
-name => 'design',
-value => 'cherno',
);
#ima i poveche opcii, no v sluchaq ne sa ti nujni
#taka se prashta
print "Set-Cookie: $cookie\n";
print "Content-Type: text/html\n\n";
# taka se chete
%cookies = fetch CGI::Cookie;
$name = $cookies{'name'}->value;
#$name stava cherno
.......
#posle obrabotvash stoinostta ot cookie-to. primerno
if ($name eq 'cherno')
{
$css="http://domain.com/styles/cherno.css";
}
pishesh celiq url do css-a. ne se zanimavash kolko dir nadolu ili nagore e.
vse pak dir nadolu e "../" bez kavichkite
__________________________
| |
|
Страници по тази тема: 1 | 2 | >> (покажи всички)
|
|
|