Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: [PHP]Jak najszybciej przestawić się ze starszych wersji PHP 5 na 7.1 i wyższych?
Forum PHP.pl > Forum > Przedszkole
Malinaa
Pytanie jak w temacie.

Jak najszybciej przestawić się ze starszych wersji PHP 5 na 7.1 i wyższych?
Gdzie znajdę przykłady skryptów > PHP 7?

Od czegoś trzeba zacząć, np. jak bezpiecznie połączyć się z serwerem,
jaką metodę wybrać, dlaczego itd...

Proszę o informacje.
nospor
Cytat
jak bezpiecznie połączyć się z serwerem,

Z jakim serwerem?

Od czego zaczac? Zacznij od DEPRECATIONS ktore sie pojawily w kazdej nowej wersji 7.x i zacznij je wywalac w swoich starych kodach.
Chyba ze mowisz ze chcesz zaczac na czysto z php7? To zacznij od tego co jest nowego w nowych wersjach 7.x Na poczatek polecam typowanie.
A tak poza tym pracujesz z php jak pracowales do tej pory
Malinaa
Zainstalowałem XAMPP z PHP 7.3.7 i MySQL.
Chcę napisać nowa stronkę.

Połączenie z serwerem - kiedyś napisałem funkcje:
$bd_polacz = ConnectDB($bd_serwer, $bd_uzytkownik, $bd_haslo, $bd_nazwa, $bd_charset);
z mysql_connect() oraz mysql_select_db() i ją cały czas stosowałem,
ale czy teraz taka funkcja zadziała, jest bezpieczna itp.?
Co z PDO i MySQLi, kiedy jaką metodę wybrać?
Gdzie znajdę przykłady, dobre gotowce dla PHP > 7 i bazy danych?

viking
Rozszerzenia mysql nie ma i dużo wcześniej był o tym komunikat w dokumentacji. Twoja funkcja nie zadziała i nie jest bezpieczna. Można założyć że jeśli zaczniesz korzystać z PDO + bindowanie parametrów to będzie ok. Przykłady w dokumentacji. W stopce mam też artykuł na ten temat.
nospor
Na przyszlsoc pisz od razu ze mowisz o serwerze bazy danych a nie ogolnie "z serwerem". Naprawde myslisz ze baza danych to jedyny typ serwera na swiecie?

Cytat
ale czy teraz taka funkcja zadziała, jest bezpieczna itp.?
Jak juz mowilem: przejrzyj notki w oficjalnej dokumentacji co sie pozmienialo, co wylecialo co jest deprecated. mysql jak juz wspomnial viking wylecial juz dawno i to jest miedzy innymi tam napisane.
Malinaa
W pliku HTML mam kodowanie:

Kod
<!DOCTYPE html>
<html lang="pl">
<head>
<meta charset="utf-8"
...


baza w kodowaniu utf8_general_ci, tabele:

Kod
CREATE TABLE `abc` (
) ENGINE=InnoDB DEFAULT CHARSET=utf8;


próbowałem dodać COLLATE=utf8_polish_ci

ale cały czas nie ma polskich znaków.

Co jest nie tak, że nie wyświetla polskich znaków z ogonkami?
nospor
Problem nie ma zadnego zwiazku z php7. Naprawde musisz mieszac tematy?

Problem poruszany milion razy. Masz tu nawet przypiety temat
http://forum.php.pl/index.php?showtopic=11...t=0&start=0

W polaczeniu do bazy danych tez masz powiedziec, ze to bedzie utf8
Malinaa
#1 Sorki, że trochę jak na czacie, ale kiedyś dodawałem mysql_query("SET NAMES")
i jeśli nie było polskich znaków to po tym były.

Przeglądam forum i trafiam na stare wątki, ale jak to zrobić w PHP > 7 i porządnie,
żadnego przykładu nie trafiam?

#2 Ok, znalazłem jak to zrobić w PDO, $pdo -> exec("SET NAMES utf8");
i wszystko przerobiłem na utf-8 i utf8_polish_ci

Po dodaniu SET NAMES pewnie poszłoby też w utf8_general_ci
ale jeśli strona nie jest wielojęzyczna to chyba lepiej jak jest teraz
dla wyszukiwarki na stronie, ale czy jest tu jeszcze jakiś haczyk... Działa.

Dziękuje za pomoc.
viking
W zależności od tego jakie collation wybierzesz będziesz miał różną kolejność sortowania dla polskich znaków. Żebyś się potem nie zdziwił.
Tomplus
Nie ma czegoś takiego że z miejsca trafisz na PHP7. Wersja 7 to nie są zmiany takie że nagle PHP staje się innym językiem. PHP na 7 stał się lepszym językiem, ale prócz to co masz w manualu to tylko początek. Warto zacząć korzystać także ze standardów pisania kodu: https://www.php-fig.org/, PHP Framework Interop Group
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.