Autor Zpráva
4li
Profil
Ahoj!

Chcem pouzit taketo nieco, ale nezobere mi to link s parametrom:
include $_SERVER["DOCUMENT_ROOT"] . ('/members/profile/index.php?id=1');


Bez ?id=1, to funguju.. Existuje nejaka ina funkcia, ktora by zobrala link aj s parametrom, prip. napada vas ine riesenie?

Dik moc!
janick
Profil
No ono nejde includovat adresu s parametrem.
Sice nevím, co má skript dělat, ale odhaduji, že v index.php je potom podle id zobrazovan nějaký obsah.
Bohužel nemůžu moc dobře pomoci, když nevím, co to přesně má dělat.
Chtělo by to trochu podrobnější popis problému.
imploder
Profil
4li
Při includu se vloží soubor, neposílá se vůbec požadavek serveru a tím pádem nemá kdo by parametry zpracoval. Ale nevím, na co by to bylo. Proměnné v includovaných kódech sdílejí stejný prostor se skriptem, kam jsou vloženy - je to v tomto v podstatě jako kdybys tam ten kód vložil přímo v editoru.

Pokud potřebuješ zaslat serveru požadavek a do stránky vypsat výstup daného skriptu (kód, který vygeneruje), tak nejjednoduššeji to jde takto:
echo file_get_contents("http://server.cz/members/profile/index.php?id=1");
AM_
Profil
další řešení je:
$tempget = $_GET;
$_GET = array('id'=>'1');
include "members/profile/index.php";
$_GET = $tempget;

Čuňárna je to ale stejně. Jestliže je onen soubor members/profile/index.php určen k tomu, aby se zobrazoval jako samostatná stránka, měl by mít všechny náležitosti jako hlavičku dokumentu atd... a zkrátka je tak také napsaný a tedy není vhodné ho includovat doprostřed jiného dokumentu.
Pokud je určen k inkluzi, tak je napsán blbě, parametry má očekávat z globálních proměnných, ne z query stringu.
4li
Profil
Takze, /members/profile/index.php?id=1 je samostatna stranka s hlavickou a zo vsetkym, ktora je sucastou zony pre registrovanych uzivatelov a funguje ako urcity template, ktory zobrazuje obsah v zavislosti od hodnoty id. Ja potrebujem tuto stranku zobrat a zobrazovat ju v zone pre neregistrovanych uzivatelov, s tym, ze aby sa korektne zobrazila, ale pri kliknuti na ktorykolvek odkaz na tejto stranke, by vyhodil hlasku "Members Only".

Tento system mi funguje pri http://www.glamourstarslive.com/tour/our-gorgeous-models/
Tato stranka (teda /tour/our-gorgeous-models/index.php) obsahuje cisto len tento kod
<? 
include $_SERVER["DOCUMENT_ROOT"] . ('/members/index.php');
?>

Pri kliknuti na obrazok jednej z modeliek sa zobrazi hlaska "Members Only"

Toto iste potrebujem spravit aj pri /members/profile/index.php s tym, ze tato stranka nefunguje sama o sebe korektne, pokial jej neprihodim nejake id cez GET
4li
Profil
AM_
Pri pouziti tvojej metody vyhlasuje chybnu hlasku, vid.:
http://www.glamourstarslive.com/models/carla-brown/

To zn. chyba mu ID.

imploder
Dik za vysvetlenie. Skusal som, nefakci..
Mastodont
Profil
A zkoušel jsi
$id = 1;
include $_SERVER["DOCUMENT_ROOT"] . ('/members/profile/index.php');
imploder
Profil
4li
Pokud ti nefachčí připojení přes file_get_contents, zkontroluj v php.ini direktivu allow_url_fopen. K připojení k jiným serverům (ale nejspíš i ke stejnému) musí být zapnutá.
AM_
Profil
a co takhle tam dát redirect?
header('location: members/profile/index.php');
4li
Profil
Mastodont
Prave toto ma napadlo hned po tom ako som zalozil toto tema a fakci to, takze dik teba a vsetkym ostatnym! Cenim si to.

Vaše odpověď

Mohlo by se hodit


Prosím používejte diakritiku a interpunkci.

Ochrana proti spamu. Napište prosím číslo dvě-sta čtyřicet-sedm:

0