Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> Zmiana wersji php
daredevil_sn
post
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
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. ?>
Go to the top of the page
+Quote Post
nevt
post
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. ?>
Go to the top of the page
+Quote Post
Trobin
post
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. ?>
Go to the top of the page
+Quote Post
l0ud
post
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
Go to the top of the page
+Quote Post
qrees
post
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ę (IMG:http://forum.php.pl/style_emoticons/default/tongue.gif)
Go to the top of the page
+Quote Post
Trobin
post
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) (IMG:http://forum.php.pl/style_emoticons/default/tongue.gif) ), ale przy odpowiednich zabiezpieczeniach chyba będzie ok (IMG:http://forum.php.pl/style_emoticons/default/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 (IMG:http://forum.php.pl/style_emoticons/default/winksmiley.jpg) ). Pewnie macie racje (IMG:http://forum.php.pl/style_emoticons/default/tongue.gif) . Tylko powiedzcie, czy odpowiednio zabezpieczone "takie coś" będzie ok.
Cytat
masz gdzieś taki skrypt wgrany? pobawiłbym się

only localhost, sorry (IMG:http://forum.php.pl/style_emoticons/default/tongue.gif)

I sorry za lekkie zejście z tematu (IMG:http://forum.php.pl/style_emoticons/default/winksmiley.jpg)
Go to the top of the page
+Quote Post
l0ud
post
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' (IMG:http://forum.php.pl/style_emoticons/default/winksmiley.jpg)
Go to the top of the page
+Quote Post
Trobin
post
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 (IMG:http://forum.php.pl/style_emoticons/default/winksmiley.jpg) (powyższy kod był pisany jako "kierunek" a nie "cel drogi" (IMG:http://forum.php.pl/style_emoticons/default/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 (IMG:http://forum.php.pl/style_emoticons/default/winksmiley.jpg)

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

Chyba masz rację (IMG:http://forum.php.pl/style_emoticons/default/winksmiley.jpg)

Ten post edytował Trobin 27.03.2008, 19:58:29
Go to the top of the page
+Quote Post
l0ud
post
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 (IMG:http://forum.php.pl/style_emoticons/default/winksmiley.jpg)
Go to the top of the page
+Quote Post
vtuner
post
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
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 (IMG:http://forum.php.pl/style_emoticons/default/biggrin.gif) ) Ha! czegos sie nowego nauczylem o php (IMG:http://forum.php.pl/style_emoticons/default/rolleyes.gif)
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: 6.10.2025 - 07:16