Linkar í php


Höfundur
minuZ
Fiktari
Póstar: 68
Skráði sig: Mán 10. Jan 2011 11:26
Reputation: 0
Staða: Ótengdur

Linkar í php

Pósturaf minuZ » Fim 10. Mar 2011 18:57

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



Skjámynd

Haxdal
Tölvutryllir
Póstar: 640
Skráði sig: Lau 14. Apr 2007 18:58
Reputation: 0
Staða: Ótengdur

Re: Linkar í php

Pósturaf Haxdal » Fim 10. Mar 2011 19:52

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.php

annars 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.


Atvinnunörd - Part of the 2%
> FX8350 | Gigabyte 990FXA-UD3 | Nvidia GTX 760 | 8GB Somethingsomething | Corsair Graphite 600T <

Skjámynd

hagur
Besserwisser
Póstar: 3120
Skráði sig: Mið 17. Des 2003 16:11
Reputation: 454
Hafðu samband:
Staða: Tengdur

Re: Linkar í php

Pósturaf hagur » Fim 10. Mar 2011 20:10

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>




Höfundur
minuZ
Fiktari
Póstar: 68
Skráði sig: Mán 10. Jan 2011 11:26
Reputation: 0
Staða: Ótengdur

Re: Linkar í php

Pósturaf minuZ » Fim 10. Mar 2011 20:16

Þ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");?>



Skjámynd

Frantic
FanBoy
Póstar: 797
Skráði sig: Mið 04. Mar 2009 17:43
Reputation: 6
Staða: Ótengdur

Re: Linkar í php

Pósturaf Frantic » Fim 10. Mar 2011 20:23

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>




Höfundur
minuZ
Fiktari
Póstar: 68
Skráði sig: Mán 10. Jan 2011 11:26
Reputation: 0
Staða: Ótengdur

Re: Linkar í php

Pósturaf minuZ » Fim 10. Mar 2011 20:29

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?



Skjámynd

Frantic
FanBoy
Póstar: 797
Skráði sig: Mið 04. Mar 2009 17:43
Reputation: 6
Staða: Ótengdur

Re: Linkar í php

Pósturaf Frantic » Fim 10. Mar 2011 20:30

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');
}
?>




Höfundur
minuZ
Fiktari
Póstar: 68
Skráði sig: Mán 10. Jan 2011 11:26
Reputation: 0
Staða: Ótengdur

Re: Linkar í php

Pósturaf minuZ » Fim 10. Mar 2011 20:44

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']) {"



Skjámynd

Frantic
FanBoy
Póstar: 797
Skráði sig: Mið 04. Mar 2009 17:43
Reputation: 6
Staða: Ótengdur

Re: Linkar í php

Pósturaf Frantic » Fim 10. Mar 2011 20:49

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.
}




Höfundur
minuZ
Fiktari
Póstar: 68
Skráði sig: Mán 10. Jan 2011 11:26
Reputation: 0
Staða: Ótengdur

Re: Linkar í php

Pósturaf minuZ » Fim 10. Mar 2011 21:01

ég fæ þetta upp.
Mynd
Síðast breytt af minuZ á Fim 10. Mar 2011 21:02, breytt samtals 1 sinni.



Skjámynd

Frantic
FanBoy
Póstar: 797
Skráði sig: Mið 04. Mar 2009 17:43
Reputation: 6
Staða: Ótengdur

Re: Linkar í php

Pósturaf Frantic » Fim 10. Mar 2011 21:02

Gerðu þetta:

Kóði: Velja allt

if(isset($_GET['page'])) {
    switch($_GET['page'])... o.s.fr.
}




Höfundur
minuZ
Fiktari
Póstar: 68
Skráði sig: Mán 10. Jan 2011 11:26
Reputation: 0
Staða: Ótengdur

Re: Linkar í php

Pósturaf minuZ » Fim 10. Mar 2011 21:07

Það virkaði flott en þá er eins og default breytan virki ekki það kemur ekkert upp í byrjuna bara blank.



Skjámynd

Frantic
FanBoy
Póstar: 797
Skráði sig: Mið 04. Mar 2009 17:43
Reputation: 6
Staða: Ótengdur

Re: Linkar í php

Pósturaf Frantic » Fim 10. Mar 2011 21:12

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.




Höfundur
minuZ
Fiktari
Póstar: 68
Skráði sig: Mán 10. Jan 2011 11:26
Reputation: 0
Staða: Ótengdur

Re: Linkar í php

Pósturaf minuZ » Fim 10. Mar 2011 21:17

Þetta virkaði allvega svona. Takk kærlega fyrir hjálpina.



Skjámynd

Frantic
FanBoy
Póstar: 797
Skráði sig: Mið 04. Mar 2009 17:43
Reputation: 6
Staða: Ótengdur

Re: Linkar í php

Pósturaf Frantic » Fim 10. Mar 2011 21:20

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...




dezeGno
has spoken...
Póstar: 193
Skráði sig: Mið 27. Des 2006 04:46
Reputation: 0
Staðsetning: Hafnarfjörður
Hafðu samband:
Staða: Ótengdur

Re: Linkar í php

Pósturaf dezeGno » Fös 11. Mar 2011 00:00

Kóði: Velja allt

!empty($_GET['page']) ? $_GET['page'] : 'forsida';



Skjámynd

intenz
Besserwisser
Póstar: 3337
Skráði sig: Mið 08. Okt 2008 22:07
Reputation: 35
Staðsetning: /dev/null
Staða: Ótengdur

Re: Linkar í php

Pósturaf intenz » Fös 11. Mar 2011 01:53

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


i7 920 @ 2.8 GHz | Gigabyte EX58-UD3R | CSX 3x2 GB DDR3 @ 1600 MHz | Gigabyte ATi Radeon HD 5850 | Sileo 500 | RealPower 600W | Corsair Force 3 120 GB | 27" FullHD | W7 x64