Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> Zmiana wersji php
daredevil_sn
post 27.03.2008, 17:56:01
Post #1





Grupa: Zarejestrowani
Postów: 5
Pomógł: 0
Dołączył: 12.07.2007

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


Wczoraj na moim serwerze zmienili wersje php z 4 na 5 (nareszcie). Lecz co ciekawe spowodowalo to ze stronka ktora wczoraj dzialala dzis dzialac juz nie chce. Objawia sie to tym ze obojetnie jaka wartosc id bedzie w url to zawsze ladowana bedzie strona tak jakby id byl pusty lub wynosil 1...


Poniewaz tworzenie tej stronki bylo moim pierwszym spotkaniem z php wyszlo mi tylko cos takiego:

  1. <?php 
  2.  
  3. if(empty($id) or $id=="1") {
  4. include("start.html"); }
  5. if($id=="2") {
  6. include("pierwsza.html"); }
  7. if($id=="3") {
  8. include("druga.html"); }
  9. if($id=="4") {
  10. include("trzecia.html"); }
  11. if($id=="5") {
  12. include("czwarta.html"); }
  13. ?>


znalazlem cos o zmianie dzialania funkcji empty() w php5 ale czy moglo by to miec az taki wplyw na dzialanie strony?

Ten post edytował daredevil_sn 27.03.2008, 17:56:34
Go to the top of the page
+Quote Post
 
Start new topic
Odpowiedzi (1 - 11)
Maciekbjw
post 27.03.2008, 18:21:05
Post #2





Grupa: Zarejestrowani
Postów: 217
Pomógł: 23
Dołączył: 2.12.2007
Skąd: Warszawa

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


Wątpie, by to miało jakieś znaczenie, bo ten skrypt w PHP4 i PHP5 powinien działać. Rozumiem,że $id to zmienna przekazywana w adresie($_GET)

W takim razie spróbuj:
  1. <?php
  2.  
  3. if($_GET['id']=='1')
  4. {
  5. include 'pierwsza.html';
  6. }
  7. elseif($_GET['id']=='2')
  8. {
  9. include 'druga.html';
  10. }
  11. ...//
  12. ?>


--------------------
Masz swoje mieszkanie i chcesz je wynająć? Sprawdź ofertę Zarzadządzanie Najmem

WRONA.IT - pozycjonowanie stron
www.ecyklopedia.pl
Go to the top of the page
+Quote Post
nevt
post 27.03.2008, 18:26:37
Post #3





Grupa: Przyjaciele php.pl
Postów: 1 595
Pomógł: 282
Dołączył: 24.09.2007
Skąd: Reda, Pomorskie.

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


poszukaj w manualu (albo pogoogluj) PHP5 register globals
dopisz na starcie
  1. <?php
  2. $id = isset($_GET['id'] ? $_GET['id'] : NULL);
  3. ?>


--------------------

-
Oh no, my young coder. You will find that it is you who are mistaken, about a great many things... -
Go to the top of the page
+Quote Post
Trobin
post 27.03.2008, 18:54:26
Post #4





Grupa: Zarejestrowani
Postów: 82
Pomógł: 6
Dołączył: 23.03.2008
Skąd: Szczecin

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


Warto by też zmienić ten kawałek kodu w nieco mniejszy:
  1. <?php
  2. $go=$_GET['go'];
  3. if (IsSet($go))
  4. {
  5. if (file_exists($go.".php"))
  6. $open=$go.".php";
  7. include ($open);
  8. ?>


--------------------
Pracuję na: Apache 2.2.4, MySQL 5.0.20a, PHP 5.3.0
Go to the top of the page
+Quote Post
l0ud
post 27.03.2008, 19:07:53
Post #5





Grupa: Zarejestrowani
Postów: 1 387
Pomógł: 273
Dołączył: 18.02.2008

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


Cytat
Warto by też zmienić ten kawałek kodu w nieco mniejszy:


Chyba jednak nie... Lepiej przewidzieć jakie podstrony mają być, niż pozwolić na takie cuda jak wczytanie się skryptu przez samego siebie w pętli.

Ten post edytował l0ud 27.03.2008, 19:20:17


--------------------
XMPP: l0ud@chrome.pl
Go to the top of the page
+Quote Post
qrees
post 27.03.2008, 19:29:15
Post #6





Grupa: Zarejestrowani
Postów: 275
Pomógł: 44
Dołączył: 23.11.2007

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


Cytat(Trobin @ 27.03.2008, 18:54:26 ) *
Warto by też zmienić ten kawałek kodu w nieco mniejszy:
  1. <?php
  2. $go=$_GET['go'];
  3. if (IsSet($go))
  4. {
  5. if (file_exists($go.&#092;".php\"))
  6. $open=$go.&#092;".php\";
  7. include ($open);
  8. ?>

1. isset($go) zawsze będzie true, bo wcześniej coś na niego przypisujesz...
2. masz gdzieś taki skrypt wgrany? pobawiłbym się tongue.gif
Go to the top of the page
+Quote Post
Trobin
post 27.03.2008, 19:48:39
Post #7





Grupa: Zarejestrowani
Postów: 82
Pomógł: 6
Dołączył: 23.03.2008
Skąd: Szczecin

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


Hmm, oczywiście nie jest to skrypt do "kopiuj&wklej" (a szczególnie to isset($go) tongue.gif ), ale przy odpowiednich zabiezpieczeniach chyba będzie ok winksmiley.jpg . Jak masz 4 podstrony na krzyż to pewnie lepiej przewidzieć (w takim razie przydałby się jeszcze jakiś else z wyświetlaniem błędu winksmiley.jpg ). Pewnie macie racje tongue.gif . Tylko powiedzcie, czy odpowiednio zabezpieczone "takie coś" będzie ok.
Cytat
masz gdzieś taki skrypt wgrany? pobawiłbym się

only localhost, sorry tongue.gif

I sorry za lekkie zejście z tematu winksmiley.jpg


--------------------
Pracuję na: Apache 2.2.4, MySQL 5.0.20a, PHP 5.3.0
Go to the top of the page
+Quote Post
l0ud
post 27.03.2008, 19:51:02
Post #8





Grupa: Zarejestrowani
Postów: 1 387
Pomógł: 273
Dołączył: 18.02.2008

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


Trobin, a wpisz sobie jako $go 'index' (albo inne, jeżeli nazwa tego skryptu includującego jest inna). Ja bym sobie nie pozwolił na taki 'efekt' winksmiley.jpg


--------------------
XMPP: l0ud@chrome.pl
Go to the top of the page
+Quote Post
Trobin
post 27.03.2008, 19:55:51
Post #9





Grupa: Zarejestrowani
Postów: 82
Pomógł: 6
Dołączył: 23.03.2008
Skąd: Szczecin

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


Jasne, że zostawienie tego w takiej formie jest złe, to już ustaliliśmy winksmiley.jpg (powyższy kod był pisany jako "kierunek" a nie "cel drogi" smile.gif ) ale chodzi mi raczej o to, jak coś takiego ew. zabezpieczyć, bo jak robi Ci się za dużo podstron a nie masz dostępu do bazy to robi się bajzel winksmiley.jpg

Edit
Cytat
Trobin, zawsze możesz użyć pliku tekstowego. Ale chyba za bardzo odbiegamy od tematu winksmiley.jpg

Chyba masz rację winksmiley.jpg

Ten post edytował Trobin 27.03.2008, 19:58:29


--------------------
Pracuję na: Apache 2.2.4, MySQL 5.0.20a, PHP 5.3.0
Go to the top of the page
+Quote Post
l0ud
post 27.03.2008, 19:56:43
Post #10





Grupa: Zarejestrowani
Postów: 1 387
Pomógł: 273
Dołączył: 18.02.2008

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


Trobin, zawsze możesz użyć pliku tekstowego. Ale chyba za bardzo odbiegamy od tematu winksmiley.jpg


--------------------
XMPP: l0ud@chrome.pl
Go to the top of the page
+Quote Post
vtuner
post 27.03.2008, 20:10:03
Post #11





Grupa: Zarejestrowani
Postów: 220
Pomógł: 10
Dołączył: 23.08.2005
Skąd: Łódź

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


może podziała za pomocą switch" title="Zobacz w manualu PHP" target="_manual.
Go to the top of the page
+Quote Post
daredevil_sn
post 27.03.2008, 21:25:16
Post #12





Grupa: Zarejestrowani
Postów: 5
Pomógł: 0
Dołączył: 12.07.2007

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


Dzieki wielkie Panowie za odpowiedz! Strona ruszyla sama z siebie wiec wyglada ze poprostu ciagle trwala migracja serwa z php4 na php5 (czemu nic mi nie powiedzieli...). Mimo to z przyjemnoscia biore sie do zmieniania bo tyle ifow mi sie nie podobalo, wiec dzieki wielkie @vtuner za info o switchu (niemialem pojecia ze w php tez jest. i to dokladnie tak samo jak w AS biggrin.gif ) Ha! czegos sie nowego nauczylem o php rolleyes.gif
Go to the top of the page
+Quote Post

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

 



RSS Wersja Lo-Fi Aktualny czas: 14.08.2025 - 04:26