Stránka: 1 z 1
| [ Príspevkov: 11 ] | |
| Autor | Správa |
|---|
Registrovaný: 16.11.10 Prihlásený: 09.07.11 Príspevky: 18 Témy: 4 | 4 |
Potreboval by som zistiť ako spraviť index.php?site=news myslím tým ako spravím to za indexom ?site=news ? ďakujem vopred za odpovede.
|
|
Registrovaný: 01.05.05 Príspevky: 13557 Témy: 1483 | 1483 Bydlisko: Bratislava |
Kód: if (isset($_GET[site])==news) { ....news.... } ..else { ....ostatne.... }
asi takto ak sa nemylim... 
_________________ Streacom DA2 | SilverStone Titanium SX800-LTI 800W | ASRock X299E-ITX/ac | Intel Core i9-9980XE & be quiet! Dark Rock TF | Kingston HyperX Impact 64 GB DDR4 2666 MHz | NVIDIA Titan RTX 24 GB | Intel SSD Optane 905P 480 GB NVMe U.2 & Intel SSD 750 1,2 TB NVMe U.2 & Intel SSD 660p 2 TB NVMe M.2 & Seagate BackUp Plus Portable 56 TB USB | 55" 4K OLED Dell Alienware AW5520QF | Ergotron LX Wall Mount Keyboard Arm | Logitech Craft | Logitech G603 | Logitech F710 | Harman Kardon Sabre SB 35 & Sennheiser RS 175 | Microsoft Windows 11 Enterprise | APC Back-UPS BE-850 VA | Lenovo ThinkPad X1 Carbon | SilverStone ML05B Milo | Corsair SF600 SFX 600W | ASRock X99E-ITX/ac | Intel Xeon E5-2683 v4 & NOCTUA NH-L12S | Kingston HyperX Savage 32 GB DDR4 2400 MHz | NVIDIA GeForce GT 710 1 GB | Intel SSD Optane Memory 32 GB NVMe M.2 & Intel SSD 730 240 GB SATA & Samsung SSD 860 1 TB | Ubuntu 24.04 LTS | Dell Wyse 3040 | Intel Atom x5-Z8350 | 2 GB DDR3 1600 MHz | 16 GB eMMC | 24" EIZO FlexScan EV2451 | Alpine Linux + XFCE4 |
|
Registrovaný: 14.11.10 Prihlásený: 22.09.17 Príspevky: 129 Témy: 27 | 27 |
JanoF píše: asi takto ak sa nemylim... 
tymto len testuje ci premenna site v URL ma hodnotu news, ale takto tu URL neupravi
ja som to robil tak ze som zmenil cielovy odkaz suboru:
Kód: <a href="index.php?site=news">novinky</a>
ale toto URL zmeni az po kliknuti na html odkaz, hned po otvoreni stranky tam bude len index.php. Ale tiez by som rad vedel ako tu URL zmenit hned 
|
|
Registrovaný: 16.11.10 Prihlásený: 09.07.11 Príspevky: 18 Témy: 4 | 4 |
venom2 je to takto:
Kód: <?php if(!isset($site)) $site="news"; $invalide = array('\\','/','/\/',':','.'); $site = str_replace($invalide,' ',$site); if(!file_exists($site.".php")) $site = "news"; include($site.".php"); ?>
hodíš do indexu pričom sa vytvorí index.php?site=news a číta to z news.php
|
|
Registrovaný: 01.12.09 Prihlásený: 20.01.25 Príspevky: 862 Témy: 26 | 26 Bydlisko: Žilina |
Kód: <?php $stranka = $_GET['site']; if($stranka = 'news') include('news.php'); else include('404.php'); ?>
shaggy: tento kód je nefunkčný a zle napísaný, jeho používaním si môžete uškodiť.
_________________ PC :ASUSTeK M2A-VM, AMD Phenom X3 8650 AM2 @ 2,3 Ghz, 4 GB RAM DDR2 1800 MHz, SAPPHIRE HD 6770 VAPOR-X 1GB DDR5, 400W Zdroj, 500 GB HDD, Windows Vista 64 bit
Notebook : Asus EEEPC 1201NL, intel Atom N270 512 KB L2 Cache 533 MHz FSB @ 1,6 Ghz, 1 GB DDR2 RAM, nVidia ION, 320 GB HDD, Windows XP 32 bit
Iná technika : LG P500 (806 Mhz, Android 2.3.3 Gingerbread, root, JIT), Koss Pathfinder, kedysi iPhone =( |
|
Registrovaný: 11.08.07 Príspevky: 4088 Témy: 34 | 34 Bydlisko: Brno |
Bajzik, vies, ze tvoj kod vyhodi chybu E_NOTICE, ak v query stringu nebude parameter site? A co je horsie, ze tvoj kod stale includne news.php, bez ohladu na hodnotu premennych? 
|
|
Registrovaný: 14.11.10 Prihlásený: 22.09.17 Príspevky: 129 Témy: 27 | 27 |
shaggy píše: shaggy: tento kód je nefunkčný a zle napísaný, jeho používaním si môžete uškodiť.Kód: <?php $stranka = $_GET['site']; if($stranka = 'news') include('news.php'); else include('404.php'); ?>
shaggy prosim ta preco tento kod moze byt skodlivy? kvoli dovodom o ktorych pisal duri o prispevok nizsie alebo je to cele principialne zle? lebo ja som to riesil podobne: Kód: if(isset($_GET['p'])) { $stranka=(string)$_GET['p']; if($stranka=="2" or $stranka=="3" or $stranka=="4" or $stranka=="5" ) { include ($stranka.".php"); } else include ("1.php"); } else include ("1.php");
viem aj o moznosti if(file_exists()), ale kedze mam malo suborov, riesil som to takto
|
|
Registrovaný: 11.08.07 Príspevky: 4088 Témy: 34 | 34 Bydlisko: Brno |
venom2, robis dobre, ze kontrolujes $stranka na pripustne hodnoty. Najjednoduchsie by to bolo mozno nejako takto:
Kód: $povolene = array('uvod', 'jedna', 'dva', 'tri', 'styri'); $stranka = (isset($_GET['p']) and in_array($_GET['p'], $povolene)) ? $_GET['p'] : 'uvod'; include $stranka.'.php';
|
|
Registrovaný: 20.10.08 Prihlásený: 21.06.22 Príspevky: 2602 Témy: 31 | 31 Bydlisko: Bratislava |
venom2 pretoze, on v podmienke neporovnava (==), ale priraduje hodnotu do premennej (=).
ja by som to principialne riesil takto:
Kód: <?php
$site = htmlspecialchars($_GET['site']); // pripadne este lepsie vlastny filter, ktory tam ponechava len a-z_
$include = '';
switch($site) { case 'news': $include = $site; break; case 'articles': $include = $site; break; default: $include = 'default'; break; }
if( file_exists("/priecinok/file_$include.php") ) include("/priecinok/file_$include.php"); else die('error');
?>
S vlastnym filtrom je to uplne bezpecne, kedze tam nenatlacis nic co tam nema co hladat..
_________________ Desktop: iMac 21" CPU: i5 2.7GHz RAM: 4 GB DDR3 1333MHz GPU: AMD Radeon HD 6770M 512MB RAM HDD: 1TB 7200 rpm OS: Mac OS X Lion Desktop: CPU: AMD Phenom II x4 BE 955 3.2@3.6GHz 1.35@1.30V CPU Cooler: Gelid Tranquillo rev.2 MB: Gigabyte 880GM-UD2H RAM: 2x2 GB Kingston 1333MHz GPU: MSI HD 6850 Cyclone 1GB PSU: Seasonic S12II-620 620W HDD: Seagate Barracuda 7200.12 1TB Case: CoolerMaster Elite 333 LCD: 22" LG flatron W2261VP Keyboard: Microsoft Comfort Curve 2000 Mouse: Microsoft Wireless Mobile Mouse 4000 OS: Windows 8 Notebook: Macbook Pro 13" CPU: i5 2.4GHz RAM: 4 GB DDR3 1333MHz GPU: Intel HD Graphics 3000 384MB RAM HDD: 500GB 5400 rpm OS: Mac OS X Lion Tablet: iPad 2 64GB 3G Phone: HTC Desire S Phone: iPhone 8GB |
|
Registrovaný: 21.02.06 Prihlásený: 08.12.14 Príspevky: 5403 Témy: 30 | 30 Bydlisko: Bratislava |
venom2 - ja som nenapísal, že je škodlivý, ale že si môžete uškodiť = proste s tým môžete mať viac problémov, ako osohu. Bajzik proste opäť raz poradil niečo, čo je iba z časti funkčné.
_________________ Neradím a nekomunikujem cez SS, ak niečo potrebujete, máte iné možnosti: Ak vám zmizla téma, alebo sa vám niečo nepáči. Ak potrebujete nahlásiť príspevok/človeka, reportujte ho. Ak máte s niečim problém, riešte to v danej téme. |
|
Registrovaný: 14.11.10 Prihlásený: 22.09.17 Príspevky: 129 Témy: 27 | 27 |
oki dakujem za odpovede a duri velmi dobre riesenie 
|
|
Stránka: 1 z 1
| [ Príspevkov: 11 ] | |
|