Kezdőoldal » Számítástechnika » Programozás » PHP-ban a háromoperandusú...

PHP-ban a háromoperandusú műveletjelet hogy kell linkre alkalmazni?

Figyelt kérdés
Linkeket akarom úgy megcsinálni hogyha rákattintanak, akkor a link nevét átadom egy változóba, amit egy switch utasítás kiválasztja a megfelelő case cimkét ami egy include utasítást tartalmaz, és így behívja a megfelelő oldalt.
2010. júl. 4. 17:20
 1/7 anonim ***** válasza:

$egyik_valtozo_amit_akarsz = vmi;

$masik_valtozo_amit_akarsz = $egyik_valtozo_amit_akarsz;// az elsőnek a másolata kerül így a $masik_valtozo_amit_akarsz-ba

$egyik_valtozo_amit_akarsz = vmi2;

print "$masik_valtozo_amit_akarsz"; //ezt irja majd ki de egyik valtozo amit akarsz -ra mutat szal oda viszi át

2010. júl. 4. 17:40
Hasznos számodra ez a válasz?
 2/7 anonim ***** válasza:
bocsi az egyenlőség jel után a második sorban kihagytam ezt a jelet: &
2010. júl. 4. 17:41
Hasznos számodra ez a válasz?
 3/7 anonim ***** válasza:

Nem igazán értem mit akarsz...

...

<a href='index.php?page=letoltesek'>

...


...

$a = array( 'index', 'letoltesek', 'mittomenmi' );

<?php

if ( isset($_GET['page']) )

{

$p = $_GET['page'];

if ( in_array( $a, $_GET['page'] ) )

{

require_once( $_GET['page'] . '.php' );

}

}

2010. júl. 4. 18:12
Hasznos számodra ez a válasz?
 4/7 A kérdező kommentje:
Utolsónak köszi, valami ilyesmire gondoltam, de ha el is magyaráznád azt megköszönném. Ha pl: van 5 oldalam, azt hogy tudom a switch -el így kiválasztani?
2010. júl. 4. 19:27
 5/7 anonim ***** válasza:

Amit én írtam nem switch-el van, szerintem így egyszerűbb...

A következőképpen használd:

Van az $a változód, amely egy tömb. Ebbe belerakod az összes oldal nevét a végén lévő .php nélkül. (pl. belerakod a következőket: 'fooldal','letoltesek', stb. Az összes oldalad nevét bele kell raknod.

(Amit nem fogsz belerakni nem fog működni. Erre azért van szükség, mert másképp biztonsági rést készítesz az alatta lévő kóddal, alább elmagyarázom.)


Ezután ott van az if struktúra, ami az $_GET-ből szedi ki a "page" nevű elemet. (Az $_GET-ről bármilyen PHP-t tanitó oldalon találsz segítséget.)


Az $_GET-ben lévő dolgokat a felhasználó nagyon egyszerűen tudja modifikálni, így ha nem lenne a tömb, amivel ellenőrzöd, hogy jó-e, akár a saját PHP programját is elindíthatná a te szervereden, elérhetővé téve számára mindent.


Ezután, ha az if jónak találta (azaz benne van az általad készített oldalak között. Az in_array azt vizsgálja, hogy benne van-e valami a tömbben.) a kért oldalt, akkor behívja (require_once) a kért oldalt. Az oldal neve mellé automatikusan hozzáadja a ".php" véget, különben a linked így nézne ki: "index.php?page=valami.php" és ez igencsak csúnya.


Az oldalakat a következőképpen éred el:

pl. A "letoltesek.php" oldalt: [link]

Vagy egyszerűen: index.php?page=letoltesek


(A kódot még modifikálhatod, pl. egy asszociatív tömbbel, úgy a felhasználó nem látná a kért oldal nevét.

pl.

$a = ( 'letoltesek' => 'aletoltesekoldalneve.php', 'ize' => 'jajnekem.php' );

Ebben az esetben a hívásod is egyszerűbb lenne:

if ( isset( $a[ $_GET['page'] ] ) )

require_once( $a[ $_GET['page'] ] );

Meg az else ágban meghívhatod a főoldalt...)

2010. júl. 4. 20:13
Hasznos számodra ez a válasz?
 6/7 A kérdező kommentje:

Köszi így már mindent értek, és sikerült is megcsinálni, de megint egy kis hibába ütköztem. Hova rakjam ezt a kódot? Mert ha az index legelejére rakom, akkor be jön a linkelt oldal, de az index tetejére. Tehát ha lejjebb görgetek ott van a főoldal is. Az oldalaimat úgy építettem föl, hogy minden oldalba include-oltam a main.php -t ,és a foother.php -t. Ezekben írtam meg az indexet két részletbe. Valahogy így néz ki:


<?php

include('main.php'); //Ebben van az index első fele

?>


<!-- Itt a főoldalam tartalma -->


<?php

include('foother.php');//Ebben van az index második fele

?>

2010. júl. 4. 21:07
 7/7 A kérdező kommentje:

Köszi sikerült minden:)

Az else ágba raktam az fooldal.php -t, és az index.php csak ezt a kódot tartalmazza.

2010. júl. 4. 22:02

További kérdések:




Minden jog fenntartva © 2024, www.gyakorikerdesek.hu
GYIK | Szabályzat | Jogi nyilatkozat | Adatvédelem | Cookie beállítások | WebMinute Kft. | Facebook | Kapcsolat: info(kukac)gyakorikerdesek.hu

A weboldalon megjelenő anyagok nem minősülnek szerkesztői tartalomnak, előzetes ellenőrzésen nem esnek át, az üzemeltető véleményét nem tükrözik.
Ha kifogással szeretne élni valamely tartalommal kapcsolatban, kérjük jelezze e-mailes elérhetőségünkön!