Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: [PHP][MYSQL] PHP 4 -> PHP 5 oraz Baza Danych z 4.1 -> 5.0
Forum PHP.pl > Forum > Przedszkole
Carveth
Na moim serwerze planują zmienić oprogramowanie. Mój silnik jest na PHP 4 a baza na 4.1. Chcą oni przełączyć serwer na PHP 5 a bazę na 5.0

Teraz moje pytanie - jaka jest różnica między PHP 4 a PHP 5? Czy wystarczy końcówki .php zmienić na .php5 i będzie działać? Nigdy nie miałem doczynienia z php 5. Są jakieś programy które ułatwią mi to?

Teraz 2 sprawa dot. bazy. Jaki program posłuży do przekonwertowania bazy danych z 4.1 na 5.0 ?
Skie
Co do bazy to już nie pamiętam, ale jeśli chodzi o PHP4 -> PHP5 to w moim przypadku praktycznie nie było różnicy. Musiałem zmienić raptem kilka linijek skryptu i wszystko ładnie działało. Jak będziesz miał serwer z obsługą PHP5 to wystarczy zapisywać pliki jako .php
Carveth
Kilka linijek skryptu... dużo mi to mówi dry.gif a jak z bazą danych?
mike
Cytat(Carveth @ 24.07.2008, 10:17:48 ) *
Kilka linijek skryptu...
Zmian jest bardzo dużo. Różnice są również bardzo duże a o wszystkim poczytaj sobie sam:
Migrating from PHP 4 to PHP 5
Migrating from PHP 5.0.x to PHP 5.1.x
Migrating from PHP 5.1.x to PHP 5.2.x
revyag
Przejście powinno być w większości przypadków bezbolesne. Strona powinna normalnie chodzić, jeśli chodzi o bazę do też będzie ok. Jakby było przejście z 4.0 na 5.0 to pewnie miałbyś zabawę z kodowaniem.
Jeśli bardzo się martwisz to postaw sobie ten zestaw php5 i mysql5 lokalnie i przetestuj smile.gif
Gngr Dogg
No niby przejście z php4 na php5 ma być bezbolesne, jednak zawaliło coś u mnie ze skryptami, że wcale się nie odpalają...
Chodzi mi przede wszystkim o skrypt menu, a używam coś takiego:
Cytat
<?php

$menu_lewe = array(index=>'Index', gry=>'Gry');

foreach($menu_lewe as $key => $value) {
echo "<a href=\"http://www.adres.pl/index.php?d=$key\">$value</a><br />\n";
}

?>


A tego używam do wyświetlenia zawartości strony:
Cytat
<?php
$go = $_GET['d'];
$team = $_GET['e'];

if(!empty($go) and empty($team)) {

if(is_file("index/$d.html")) include "index/$d.html";
else echo "<br />Nie ma takiej strony :-(";
}
elseif(!empty($go) and !empty($team)) {

if(is_file("index/inne/$e.html")) include "index/inne/$e.html";
else echo "<br />Nie ma takiej strony :-(";
}
else include "index/index.html";
?>


Czy trzeba coś w/w przemienić?? Trzeba zastosować coś w ogóle innego??
nowotny
No i widzisz... prawie dobrze... widzę, że zmienne globalne potrafisz używać ale jakoś niekonsekwentnie...

  1. <?php
  2. $go = $_GET['d'];
  3. $team = $_GET['e'];
  4.  
  5. if(!empty($go) and empty($team)) { 
  6.  
  7. if(is_file('index/'.$_GET['d'].'.html')) include 'index/'.$_GET['d'].'.html';
  8. else echo '<br />Nie ma takiej strony :-('; 
  9. } 
  10. elseif(!empty($go) and !empty($team)) { 
  11.  
  12. if(is_file('index/inne/'.$_GET['e'].'.html')) include 'index/inne/'.$_GET['e'].'.html';
  13. else echo '<br />Nie ma takiej strony :-('; 
  14. } 
  15. else include 'index/index.html';
  16. ?>


Poza tym nie ma to nic wspólnego z różnicami między php4 i php5... jest to oczywista sprawa register_globals... na 4 były włączone na 5 są wyłączone... i tyle...

Z resztą kod jaki przedstawiłeś nie należy do najbezpieczniejszych i kwalifikuje się do poprawki...
Gngr Dogg
Ok, tamten kod dobrze działa, a ten jak przerobić??
Cytat
<?php

$menu_lewe = array(index=>'Index', gry=>'Gry');

foreach($menu_lewe as $key => $value) {
echo "<a href=\"http://www.adres.pl/index.php?d=$key\">$value</a><br />\n";
}

?>
nowotny
A po co go przerabiać...? przecież jest dobrze...
Gngr Dogg
No tak, ale na stronce ten kod nie działa sad.gif
nowotny
"Nie działa" nie jest precyzyjnym określeniem problemu...
Gngr Dogg
Rzeczywiście, problem jest chyba z include
Cytat
<? include("http://www.adres.pl/inc/cos.php");?>

Wiesz, jak to poprawić??
nowotny
Poza tym, że powinieneś tam podać ścieżkę względną a nie adres, nie ma tu co za dużo poprawiać... :/
Gngr Dogg
Dzięki za pomoc, ale problem już rozwiązany, po prostu zrobiłem cały plik index.php od nowa i wszystko teraz działa, widocznie coś w kodzie było nie tak, jeszcze raz dzięki smile.gif
To jest wersja lo-fi głównej zawartości. Aby zobaczyć pełną wersję z większą zawartością, obrazkami i formatowaniem proszę kliknij tutaj.
Invision Power Board © 2001-2025 Invision Power Services, Inc.