Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

 
Reply to this topicStart new topic
> Proste pytanko
mumiak
post
Post #1





Grupa: Zarejestrowani
Postów: 25
Pomógł: 0
Dołączył: 19.03.2003
Skąd: Piła

Ostrzeżenie: (0%)
-----


Mam nadzieje ze ktos mi pomoze, to jest chyba proste...


Kod
<?php



    $k=$_GET["dalej"];

    

if ($dalej=="")

        {

        include("baner1.htm");

        }





if ($dalej=="")

        {

        include(news/news.php");

        }

if ($dalej=="sonda")

        {

        include("sonda/pokaz.php");

        }

if ($dalej=="surf")

    {

    include("zawartosc/surf.htm");

    }

if ($dalej=="maile")

    {

    include("zawartosc/maile.html");

    }

if ($dalej=="inne")

    {

    include("zawartosc/inne.php");

    }

if ($dalej=="systemy")

    {

    include("zawartosc/systemy.php");

    }

.... etc...


Czy da sie zrobic tak zeby nie pisac tak dlugiego kodu i skrocic to jakos zeby sam pobieral nazwe z katalogu. powiedzmy mam takich 50 linijek z katalogiem zawartosc, mozna jakos to w funkcji napisac...

Z gory dziekuje bardzo za pomoc

pozdr
Go to the top of the page
+Quote Post
Omega
post
Post #2





Grupa: Zarejestrowani
Postów: 273
Pomógł: 0
Dołączył: 5.05.2003
Skąd: Mazury

Ostrzeżenie: (0%)
-----


Po pierwsze skożystaj z instrukcji switch... a po drugie powiedz o co ci dokładnie chodzi?(IMG:http://forum.php.pl/style_emoticons/default/questionmark.gif) :?
Go to the top of the page
+Quote Post
mumiak
post
Post #3





Grupa: Zarejestrowani
Postów: 25
Pomógł: 0
Dołączył: 19.03.2003
Skąd: Piła

Ostrzeżenie: (0%)
-----


hm jestem poczatkujace to po pierwsze.

a chodzi mi dokladnie o skrocenie tego kodu
zeby nie pisac ciagle tego
Kod
if ($dalej=="xxx")

   {

   include("zawartosc/xxx.php");

   }


a te "xxx" to zawartosc katalogu "zawartosc"

mozesz mi to napisac?(IMG:http://forum.php.pl/style_emoticons/default/questionmark.gif)
Go to the top of the page
+Quote Post
Omega
post
Post #4





Grupa: Zarejestrowani
Postów: 273
Pomógł: 0
Dołączył: 5.05.2003
Skąd: Mazury

Ostrzeżenie: (0%)
-----


Pierwsza sprawa:
pisz code zamykaj tak jak znaczniki HTML...

Druga sprawa, napisz po prostu:
[php:1:b822083736]<?php
include("zawartosc/$dalej.php");
?>[/php:1:b822083736]
i powinno działać...
Go to the top of the page
+Quote Post
mumiak
post
Post #5





Grupa: Zarejestrowani
Postów: 25
Pomógł: 0
Dołączył: 19.03.2003
Skąd: Piła

Ostrzeżenie: (0%)
-----


Cytat
Druga sprawa, napisz po prostu:
[php:1:fea8fe4ff0]<?php
include("zawartosc/$dalej.php");  
?>[/php:1:fea8fe4ff0]
i powinno działać...


No tak ale nadal moj kod bedzie dlugi.
Zmienna $dalej musi pobierac wartosc z katalogu "zawartosc" i musi byc w petli, mam racje? Tylko jak to napisac.

Dzieki juz mi pomogles (IMG:http://forum.php.pl/style_emoticons/default/biggrin.gif) :D:D Jeszcze tylko jak pobrac te nazwy z katalogu?(IMG:http://forum.php.pl/style_emoticons/default/questionmark.gif)
Go to the top of the page
+Quote Post
Omega
post
Post #6





Grupa: Zarejestrowani
Postów: 273
Pomógł: 0
Dołączył: 5.05.2003
Skąd: Mazury

Ostrzeżenie: (0%)
-----


[php:1:c610fed608]<?php
$katalog="./news/";
$uchwyt=opendir($katalog);
while($element = readdir($uchwyt))
{
if ($element!='.' and $element !='..')$elementy[] = $element;
}
closedir($uchwyt);
?>[/php:1:c610fed608]

Takim sposobem masz w tablicy $elementy wszystkie pliki z katalogu news...

Mam nadzieje że o to chodziło... (IMG:http://forum.php.pl/style_emoticons/default/biggrin.gif)
Go to the top of the page
+Quote Post
GeoS
post
Post #7





Grupa: Zarejestrowani
Postów: 602
Pomógł: 0
Dołączył: --
Skąd: W - WA -> GRO

Ostrzeżenie: (0%)
-----


Sprawdz to:

[php:1:0ebb619645]<?php

$k = $_GET['dalej'];
$dir = 'zawartosc/';

if(is_file($dir . $k) && !ereg('..',$k))
{
include($dir . $k);
}
else
{
include('baner1.htm');
include('news/news.php');
}

?>[/php:1:0ebb619645]

W tym wypadku zawsze dolaczy Ci ten plik co trzeba i bedziesz mial zabezpieczenie przed wychodzeniem do katalogow nadrzednych (IMG:http://forum.php.pl/style_emoticons/default/aaevil.gif)

Mam nadzieje, ze sie nigdzie nie pomylilem.
Go to the top of the page
+Quote Post
mumiak
post
Post #8





Grupa: Zarejestrowani
Postów: 25
Pomógł: 0
Dołączył: 19.03.2003
Skąd: Piła

Ostrzeżenie: (0%)
-----


Pisze tak:
[php:1:6bfa81d2ea]
<?php

$k = $_GET['dalej'];
$dir = 'zawartosc/';

if(is_file($dir . $k) && !ereg('..',$k))
{
include($dir . $k.htm);
}

if ($dalej=="")
{
include('baner1.htm');
include('http://192.168.1.111/~nowy%20folder/news/news.php');
}

?>[/php:1:6bfa81d2ea]

jak jest index.php newsy sie wyswietlaja baner tez, ale jak zmienie adres na np. index?dalej=kurs, gdzie kurs.htm znajduje sie w folderze zawartosc nic sie nie pojawia (IMG:http://forum.php.pl/style_emoticons/default/sad.gif)

Albo tez tak chodz to pewnie calkiem zle
[php:1:6bfa81d2ea]
<?php
$katalog="./news/";
$uchwyt=opendir($katalog);
while($element = readdir($uchwyt))
{
if ($element!='.' and $element !='..')$elementy[] = $element;
}
closedir($uchwyt);


$k = $_GET['dalej'];

if ($dalej=="")
{
include('baner1.htm');
include('http://192.168.1.111/~nowy%20folder/news/news.php');
}

if ($dalej=="$element")
(
include('zawartosc/$dalej.htm')
)
?>[/php:1:6bfa81d2ea]

i tutaj blad wyskakuje ze nie ma takiego pliku (IMG:http://forum.php.pl/style_emoticons/default/sad.gif) (IMG:http://forum.php.pl/style_emoticons/default/sad.gif)

Jesli nadal jestescie chetni mi pomoc bede wdzieczny
pozdr
Go to the top of the page
+Quote Post
borec
post
Post #9





Grupa: Zarejestrowani
Postów: 260
Pomógł: 0
Dołączył: 18.07.2003
Skąd: Tarnów

Ostrzeżenie: (0%)
-----


Sprobuj tak:

[php:1:de585195d2]<?php

$k = $_GET['dalej'];
$dir = 'zawartosc/';

if ($dalej=="")
{
include('baner1.htm');
include('http://192.168.1.111/~nowy%20folder/news/news.php');
}
else {
if(is_file($dir . $k.htm) && !ereg('..',$k)) { include($dir . $k.htm); }
else { echo "Nie można odnaleźć strony. Błąd 404."; }
}

?> [/php:1:de585195d2]
Go to the top of the page
+Quote Post
mumiak
post
Post #10





Grupa: Zarejestrowani
Postów: 25
Pomógł: 0
Dołączył: 19.03.2003
Skąd: Piła

Ostrzeżenie: (0%)
-----


No i wyswietla mi sie ten komunikat "Nie można odnaleźć strony. Błąd 404. "
Tak jakby nazw z katalogu nie pobieralo (IMG:http://forum.php.pl/style_emoticons/default/sad.gif) (IMG:http://forum.php.pl/style_emoticons/default/sad.gif)
Go to the top of the page
+Quote Post
borec
post
Post #11





Grupa: Zarejestrowani
Postów: 260
Pomógł: 0
Dołączył: 18.07.2003
Skąd: Tarnów

Ostrzeżenie: (0%)
-----


moze zly dir podales, sprobuj bezwzgledny
Go to the top of the page
+Quote Post
mumiak
post
Post #12





Grupa: Zarejestrowani
Postów: 25
Pomógł: 0
Dołączył: 19.03.2003
Skąd: Piła

Ostrzeżenie: (0%)
-----


dir jest raczej dobry bo jak zrobie zwykle
[php:1:e62e8df889]
if ($dalej=="cos");
(
include("zawartosc/cos.htm")
)
[/php:1:e62e8df889]
to wszystko dziala...
Go to the top of the page
+Quote Post
KaMeLeOn
post
Post #13





Grupa: Zarejestrowani
Postów: 680
Pomógł: 0
Dołączył: 1.10.2002
Skąd: Wrocław

Ostrzeżenie: (0%)
-----


Sprawdzaj bezpośrednio z superglobali, nie rób kopii zmiennych...
[php:1:0930464359]<?php
$katalog = 'zawartosc/';
if( isset($katalog . $_GET['dalej'] . '.htm') && file_exists($katalog . $_GET['dalej'] . '.htm') );
(
include $katalog . $_GET['dalej'] . '.htm';
)
?>[/php:1:0930464359]
Go to the top of the page
+Quote Post
Seth
post
Post #14





Grupa: Przyjaciele php.pl
Postów: 2 335
Pomógł: 6
Dołączył: 7.03.2002

Ostrzeżenie: (0%)
-----


borec: Twoj podpis nie jest zgodny z regulaminem. Prsze jak najszybciej go zmienic.
Go to the top of the page
+Quote Post
LeWaR
post
Post #15





Grupa: Zarejestrowani
Postów: 87
Pomógł: 1
Dołączył: 22.04.2002
Skąd: Szubin

Ostrzeżenie: (0%)
-----


Cytat
Pisze tak:
[php:1:7824815d89]
<?php

{
   include('baner1.htm');
   include('http://192.168.1.111/~nowy%20folder/news/news.php');
}

?>[/php:1:7824815d89]

includować to można z lokalnego dysku, a nie po ip czy przez http czy cokolwiek innego...
Go to the top of the page
+Quote Post
mumiak
post
Post #16





Grupa: Zarejestrowani
Postów: 25
Pomógł: 0
Dołączył: 19.03.2003
Skąd: Piła

Ostrzeżenie: (0%)
-----


Cytat
Sprawdzaj bezpośrednio z superglobali, nie rób kopii zmiennych...
[php:1:96729e4c4a]<?php
$katalog = 'zawartosc/';
if( isset($katalog . $_GET['dalej'] . '.htm') && file_exists($katalog . $_GET['dalej'] . '.htm') );
(
 include $katalog . $_GET['dalej'] . '.htm';
)
?>[/php:1:96729e4c4a]


Ok tylko tu jest blad w 3 linijce
Kod
Parse error: parse error, unexpected '.', expecting ',' or ')' in c:usrkrasnalwwwnowy folderindex.php on line 60

probuje wpisac nawias gdzies ale caly czas to samo, mozesz pomoc?(IMG:http://forum.php.pl/style_emoticons/default/questionmark.gif)

pozdr
Go to the top of the page
+Quote Post
LeWaR
post
Post #17





Grupa: Zarejestrowani
Postów: 87
Pomógł: 1
Dołączył: 22.04.2002
Skąd: Szubin

Ostrzeżenie: (0%)
-----


Cytat
[php:1:feea2b1b96]<?php
$katalog = 'zawartosc/';
if( isset($katalog . $_GET['dalej'] . '.htm') && file_exists($katalog . $_GET['dalej'] . '.htm') );
(
 include $katalog . $_GET['dalej'] . '.htm';
)
?>[/php:1:feea2b1b96]

Na początek nawiasy:
[php:1:feea2b1b96]<?php
$katalog = 'zawartosc/';
if( isset($katalog . $_GET['dalej'] . '.htm') && file_exists($katalog . $_GET['dalej'] . '.htm') );
{
include $katalog . $_GET['dalej'] . '.htm';
}
?>[/php:1:feea2b1b96]
Widzisz różnice?
Go to the top of the page
+Quote Post
KaMeLeOn
post
Post #18





Grupa: Zarejestrowani
Postów: 680
Pomógł: 0
Dołączył: 1.10.2002
Skąd: Wrocław

Ostrzeżenie: (0%)
-----


Na końcu 3 linijki jest niepotrzebny średnik... Ot literówka...
Go to the top of the page
+Quote Post

Reply to this topicStart new topic
2 Użytkowników czyta ten temat (2 Gości i 0 Anonimowych użytkowników)
0 Zarejestrowanych:

 



RSS Aktualny czas: 23.08.2025 - 22:51