[ NetworkAdmin @ 30.01.2004. 06:48 ] @
Evo ovako, zelim poslati usera ovako

Code:
header (Location: nekifajl.php?varijabla=vrijednost&josvarijabla=$uid#anchor$id");


i naravno ovaj posalje browser na primjer za $uid=45 i $id=3

nekifajl.php?varijabla=vrijednost&josvarijabla=45

i odsjece sve iza # zajedno sa heshom.

Sta sam ja u svemu ovom propustio?
[ zi:: @ 30.01.2004. 09:27 ] @
Mora da radi i sa #. Jedina greška koju vidim je da nisi stavio " ispred location,
pa ti php sve iza # shvata kao komentar.

Dakle, probaj sa:
Code:

header ("Location: nekifajl.php?varijabla=vrijednost&josvarijabla=$uid#anchor$id");
[ bzero @ 30.01.2004. 10:46 ] @
Da bi mogao da prenosis promenjive na ovaj nacin, tj kao deo URL-a, moras ih prethodno pripremiti. Nece biti problema jedino ako promenjive sadrze samo alfanumericke karaktere, a inace moras da uradis sledece:

Umesto:
Code:

header ("Location: nekifajl.php?varijabla=vrijednost&josvarijabla=$uid#anchor$id");


trebe promenjive urlencodovati:
Code:

header ("Location: nekifajl.php?varijabla=vrijednost&josvarijabla=" . urlencode("$uid#anchor$id"));


Pogledaj:

http://www.php.net/manual/en/function.urlencode.php
[ zi:: @ 30.01.2004. 11:23 ] @
Ne treba urlencode jer će # preći u %23 ...

probaj ovaj kod ...

Code:

<?
$id = '274927';
header ("Location: http://www.elitesecurity.org/tema/41508/0".urlencode("#$id"));
?>


Da li će browser skočiti na tvoju poruku? Neće ...

Ovako hoće:

Code:

<?
$id = '274927';
header ("Location: http://www.elitesecurity.org/tema/41508/0#$id");
?>


Dakle, verujem da je samo navodnik problem.
[ NetworkAdmin @ 30.01.2004. 12:30 ] @
cini mi se da nije navodnik, skoro sam 100% siguran a na ovom kompu nemam mogucnost da provjerim, javicu kad dodjem kuci...

prpbao sam cak i sa varijablom

Code:
$aaa="Location: nekifajl.php?varijabla=vrijednost&josvarijabla=$uid#anchor$id"";
header($a);


i opet nece...
[ noviKorisnik @ 30.01.2004. 13:54 ] @
Da li si probao jednostavno, bez varijabli:

header ("Location: http://www.elitesecurity.org/tema/41508/0#274990");

Probao sam sve regularno (sa varijablama) i kod mene radi, testirao na IE i Firebirdu, uz jednu razliku: na ciljanom fajlu dobijam različit izlaz za

<?php echo $_SERVER ['REQUEST_URI'] ?>

U IE mi daje adresu s anchorom, u Firebirdu bez. Kod oba se dokument pozicionira na traženo mesto.
[ bzero @ 30.01.2004. 13:59 ] @
Citat:
zi:::
Ne treba urlencode jer će # preći u %23 ...


Bice da nisi pazlijivo procitao u cemu je problem. Naravno, # ce preci u %23, jer urlencode upravo to i radi. U gornjem primeru koji je dao NetworkAdmin nije problem sto se '#' nalazi u samom URL-u, nego se nalazi u promenjivoj koja se salje drugoj skripti.

Prema tome ovo sto si ti napisao:
Code:

<?
$id = '274927';
header ("Location: http://www.elitesecurity.org/tema/41508/0".urlencode("#$id"));
?>


naravno da ne radi, jer je '#' deo samog URL-a. Za urlencode funkciju u manualu lepo pise:
Citat:

This function is convenient when encoding a string to be used in a query part of an URL, as a convenient way to pass variables to the next page:


Ono sto je problem je da se kod:
Code:

header (Location: nekifajl.php?varijabla=vrijednost&josvarijabla=$uid#anchor$id");

je da se vrednost promenjive josvarijabla ne prenosi kako treba, pa nju treba urlencodovati.

Btw,
Citat:

Dakle, verujem da je samo navodnik problem.


Navodnik sigurno nije problem, jer bez tog navodnika skripta nece uopste raditi, dobices Parse error.
[ NetworkAdmin @ 30.01.2004. 21:54 ] @
ma na kraju krajeva mogu ja i bez tog anchora, vazda mogu svaliti krivicu na Microsoft ako ikada iko primjeti da ne radi skripta taj anchor. To je samo jedan od features koji sam zelio da ugradim...

izgleda da bas ovdje kada postam topic me posalje skripta na anchor koji je kod moga posta ali to ide da redirektom izgleda, evo sad cu postati bas da vidim.
[ NetworkAdmin @ 30.01.2004. 21:55 ] @
da salje se post na poruka.php a odatle redirekcija na temu pa idodgovora i na kraju #$idporuke
[ -zombie- @ 30.01.2004. 22:05 ] @
Citat:
NetworkAdmin:
vazda mogu svaliti krivicu na Microsoft


zašto na MS? nije valjda koristiš IIS?

bacaj to đubre, i instaliraj pismeni web server. ionako će ti se skripte mnogo sličnije ponašati kada ih uploaduješ na pravi server...

(ili u prevodu, na apaču ovo sve sigurno radi kako i očekuješ..)
[ NetworkAdmin @ 31.01.2004. 15:20 ] @
Koristim Apache naravno, indijanac sam u krvi i IIS nikad ni u ludilu nebih koristio... a kad nesto ne radi kriv je MS IE
[ Goran Rakić @ 05.02.2004. 17:01 ] @
Dana Sat, 31 Jan 2004 16:20:24 +0000, "Zoran Knezevic (NetworkAdmin)"
napisa:

> Koristim Apache naravno, indijanac sam u krvi :) i IIS nikad ni u ludilu
> nebih koristio... a kad nesto ne radi kriv je MS IE :D ----
> www.pungas.com - Najbrži portal istočne Evrope.

Meni nije jasno šta to neće da radi.
Header('Location: test.php#'.$id);