Síða 1 af 1
Linkar í php
Sent: Fim 10. Mar 2011 18:57
af minuZ
Sælir
Getur eitthver aðstoðað mig við að búa til linka á síðu sem ég er með. Semsagt ef ég er með 2 ramma og linkarnir eru allir í öðrum og svo þegar ég ýti á eitthvern af linkunm þá opnast síðan í hinum rammanum. Ég vill gera þetta með php, ég gerði þetta í denn með asp en finn ekki út úr því hvernig ég á gera þetta í php.
kv. Hrannar
Re: Linkar í php
Sent: Fim 10. Mar 2011 19:52
af Haxdal
Gerðu öllum greiða og ekki nota frames.
Þessi grein tekur þetta ágætlega saman af hverju það á að halda sig frá frames.
http://apptools.com/rants/framesevil.phpannars ef þú ert staðfastur á að nota frames, þá er þetta ekkert flóknara en að nota print("") eða echo "" til að æla út html kóðanum fyrir rammana, linkana og það allt.
Re: Linkar í php
Sent: Fim 10. Mar 2011 20:10
af hagur
Sæll,
Þetta er client side virkni þannig að forritunarmálið skiptir engu máli. Alltaf gert alveg eins.
Þú setur target="" attribute á linkinn og lætur það vísa á rammann sem þú vilt að linkurinn opnist í.
Brot úr frameset kóðanum, ramminn hefur nafn:
Kóði: Velja allt
<frame src="bla.html" name="rammi1" />
Svo linkurinn, target attribute vísar í nafnið á rammanum:
Kóði: Velja allt
<a href="http://www.mbl.is" target="rammi1">Þessi linkur opnast í rammanum rammi1</a>
Re: Linkar í php
Sent: Fim 10. Mar 2011 20:16
af minuZ
Þetta er ekki beint frames sem mig langar að nota á pínu erfitt með að útskýra þetta því að ég veit ekki hvað þetta heitir eða er kallað
Allvega þegar er ýtt á link þá breytist bara include breytan. Sem sagt þá breytist "sida.php" í "nysida.php"
<?php include ("sida.php");?>
Re: Linkar í php
Sent: Fim 10. Mar 2011 20:23
af Frantic
Kóði: Velja allt
<?php
switch($_GET['page']) {
case 'forsida':
include('forsida.php');
break
case 'onnursida':
include('onnursida.php');
break;
}
?>
<a href="?page=forsida">Forsida</a>
<a href="?page=onnursida">Önnur Síða</a>
Re: Linkar í php
Sent: Fim 10. Mar 2011 20:29
af minuZ
snilld get ég ekki örugglega notað þetta við að búa til fullt af undir síðum eða er það gert á eitthvern annan hátt?
Re: Linkar í php
Sent: Fim 10. Mar 2011 20:30
af Frantic
Jú þú setur þetta í body-ið: (S.s. þar sem þú vilt að undirsíðurnar birtast)
Kóði: Velja allt
<?php
switch($_GET['page']) {
case 'forsida':
include('forsida.php');
break
case 'onnursida':
include('onnursida.php');
break;
}
?>
Og svo seturu þetta bara hvar sem þú vilt:
Kóði: Velja allt
<a href="?page=forsida">Forsida</a>
<a href="?page=onnursida">Önnur Síða</a>
EDIT: Mæli með að þú kíkir á þetta:
http://is.php.net/manual/en/control-str ... switch.phpÞarna sérðu hvernig Default er notað. Ef þú myndir setja það inní switch þá myndi forsíðan fara undir default eins og svona:
Kóði: Velja allt
<?php
switch($_GET['page']) {
case 'forsida':
include('forsida.php');
break
case 'onnursida':
include('onnursida.php');
break;
default:
include('forsida.php');
}
?>
Re: Linkar í php
Sent: Fim 10. Mar 2011 20:44
af minuZ
takk kærlega þetta virkar allt flott nema fyrst þegar ég fer inn á síðuna áður en hún fær endinguna "?page=forsida" en villan hverfur um leið og ég ýti á eitthvern link og endingin kemur í address barinn. Villan sem hún kemur með er "Notice: Undefined index: page in C:\wamp\www\minuz\index.php on line 4" og lína 4 er "switch($_GET['page']) {"
Re: Linkar í php
Sent: Fim 10. Mar 2011 20:49
af Frantic
Gerist þetta líka þó svo þú notir default dæmið eins og var að bæta við í fyrra innleggið mitt?
Edit Aftur: Nýja PHP versionið vill að maður skilgreini allar breytur þannig ef að breytan $_GET['page'] er ekki til þá gefur það manni notice.
Það á að lagast held ég ef maður notar default í switch.
Annars geturu líka gert
Kóði: Velja allt
if(isset($_GET['page'])) {
switch($_GET['page'])... o.s.fr.
}
Re: Linkar í php
Sent: Fim 10. Mar 2011 21:01
af minuZ
ég fæ þetta upp.
Re: Linkar í php
Sent: Fim 10. Mar 2011 21:02
af Frantic
Gerðu þetta:
Kóði: Velja allt
if(isset($_GET['page'])) {
switch($_GET['page'])... o.s.fr.
}
Re: Linkar í php
Sent: Fim 10. Mar 2011 21:07
af minuZ
Það virkaði flott en þá er eins og default breytan virki ekki það kemur ekkert upp í byrjuna bara blank.
Re: Linkar í php
Sent: Fim 10. Mar 2011 21:12
af Frantic
Prófaðu þá eitt skítamix hehe
Kóði: Velja allt
if(!isset($_GET['page'])) {
$_GET['page'] = 'forsida';
}
switch($_GET['page']) ....
S.s. ef að það er ekki sett neitt í $_GET['page'] þá seturu bara inní það forsida og þegar switch spyr hvað gildið er þá ertu búinn að covera ef það er null
Þetta er náttúrulega skítamix. Það hlýtur að vera betri lausn á þessu eins og að slökkva á þessu notice-i. Því í raun er þetta hálf tilgangslaust notice.
Re: Linkar í php
Sent: Fim 10. Mar 2011 21:17
af minuZ
Þetta virkaði allvega svona. Takk kærlega fyrir hjálpina.
Re: Linkar í php
Sent: Fim 10. Mar 2011 21:20
af Frantic
Ekkert mál.
Ég tékkaði aðeins á veraldarvefnum og sá flotta lausn neðst í
þessum þræði.
Annars ef þú ert laus við þetta notice þá er mission complete...
Re: Linkar í php
Sent: Fös 11. Mar 2011 00:00
af dezeGno
Kóði: Velja allt
!empty($_GET['page']) ? $_GET['page'] : 'forsida';
Re: Linkar í php
Sent: Fös 11. Mar 2011 01:53
af intenz
dezeGno skrifaði:Kóði: Velja allt
!empty($_GET['page']) ? $_GET['page'] : 'forsida';
$_GET['page'] = isset( $_GET['page'] ) ? $_GET['page'] : 'forsida';
Annars mæli ég með því að þú kynnir þér MVC, annað hvort fyrir PHP ( t.d.
http://kohanaframework.org ) eða ASP.NET