Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: [MySQL][PHP]Przeniesienie bazy danych na inny serwer
Forum PHP.pl > Forum > Przedszkole
tg555
Witam, nie będę ściemniał, że wiem cokolwiek o bazach danych itp. Mam poprostu problem z przeniesieniem bazy danych na nowy serwer i bardzo proszę o pomoc w jego rozwiązaniu. Do rzeczy. Niedawno wygasła mi subskrypcja na cba.pl gdzie miałem stronę ze skryptami i bazą danych do zabawy w typowanie meczów piłkarskich. Jako że nie chciałem już płacić cba.pl postanowiłem przenieść wszystkie pliki i bazę danych na darmowy serwer pl.000webhost.com. Zrobiłem wszystko (jak mi się wydawało) jak trzeba czyli skopiowałem wszystkie pliki po FTP (zmieniłem plik konfiguracyjny) oraz przeniosłem bazę danych. Niestety tu zaczęły się problemy. Nowo stworzona strona ciągle wyrzuca komunikaty, których nie rozumiem. Na ten moment wyglądają one jak poniżej, dodam tylko, że wszystko to działało bez problemu na cba.pl. Na FTP jest instrukcja instalacji w pliku INSTALL.TXT, a plikiem konfiguracyjnym jest systemvars.php. Strona to https://typer-bukmacherski.000webhostapp.com/.
Z racji na mój brak wiedzy i prawdopodobny brak jej rozwoju w przyszłości chciałbym pójść na łatwiznę i udostępnić login i hasło do strony osobie, która zdecydowałaby się mi pomóc i uruchomić tą bazę/stronę. Istnieje też możliwość, że zapłacę za taką usługę w rozsądnym wymiarze. Liczę na pomoc, poniżej co teraz pokazuje strona, pozdrawiam

PS. Żeby sobie ktoś nie pomyślał - to jest strona dla znajomych i absolutnie nie ma tam żadnego zarabiania pieniędzy czy cokolwiek, nazwa bukmacherska jest dlatego, że przy obstawianiu meczów nie otrzymujemy standardowych punktów z 1X2 tylko są one zbieżne z kursem bukmachera - jakby kogoś zainteresowało smile.gif

Warning: array_key_exists() expects parameter 2 to be array, null given in /storage/ssd1/612/14500612/public_html/sessiondata.php on line 18

Warning: session_start(): Cannot send session cookie - headers already sent by (output started at /storage/ssd1/612/14500612/public_html/sessiondata.php:18) in /storage/ssd1/612/14500612/public_html/sessiondata.php on line 29

Warning: session_start(): Cannot send session cache limiter - headers already sent (output started at /storage/ssd1/612/14500612/public_html/sessiondata.php:18) in /storage/ssd1/612/14500612/public_html/sessiondata.php on line 29

Warning: array_key_exists() expects parameter 2 to be array, null given in /storage/ssd1/612/14500612/public_html/sessiondata.php on line 35

Warning: array_key_exists() expects parameter 2 to be array, null given in /storage/ssd1/612/14500612/public_html/sessiondata.php on line 46

Fatal error: Call to undefined function session_unregister() in /storage/ssd1/612/14500612/public_html/sessiondata.php on line 50
kreatiff
Funkcja session_unregister() została usunięta z PHP wraz z wersją PHP 5.4.0.
Jeśli na nowym hostingu nie idzie ustawić starszej wersji to skrypt nie będzie działał.

Swoją drogą to musi być jakiś stary skrypt. Nie ma jego aktualnej wersji co działa na PHP 7?
Albo najlepiej poszukaj czegoś nowego, bo z tym co jest nie widzę przyszłości (tym bardziej za 000webhost, który pewnie zablokuje albo strasznie zwolni Ci stronę jak tylko wejdą na nią 3 osoby na raz).
Tomplus
Skorzystaj z jakiś lepszych narzędzi do typowania np.:

https://github.com/dev-labs-bg/sportify - tutaj masz możliwość podpięcia pobierania wyników bezpośrednio z football-data.org

tg555
Dzięki za zainteresowanie, ten web000 faktycznie jakiś lewy jest, ale wczoraj założyłem nową stronę na prv.pl i jest znacznie lepiej bo przynajmniej pojawiła się strona tylko, że nie mogę się zalogować na niej i wyskakują także błędy jak poniżej:

Warning: array_key_exists(): The second argument should be either an array or an object in /home/hosting/prv-hosting/wex.pl/i/k/typer-bukmacherski/sessiondata.php on line 18 Warning: session_save_path(): Unable to access in /home/hosting/prv-hosting/wex.pl/i/k/typer-bukmacherski/sessiondata.php on line 25 Warning: array_key_exists(): The second argument should be either an array or an object in /home/hosting/prv-hosting/wex.pl/i/k/typer-bukmacherski/sessiondata.php on line 35 Warning: array_key_exists(): The second argument should be either an array or an object in /home/hosting/prv-hosting/wex.pl/i/k/typer-bukmacherski/sessiondata.php on line 46
Warning: array_key_exists(): The second argument should be either an array or an object in /home/hosting/prv-hosting/wex.pl/i/k/typer-bukmacherski/sortfunctions.php on line 659

Jakby wam się chciało zerknąć to jest pod:
http://typer-bukmacherski.wex.pl/

Dzięki za pomysł z tym sportify, zobaczę czy sobie z tym poradzę, pozdrawiam
Tomplus
Bazując na bezpłatnych serwerach daleko nie zajedziesz.

Ale spójrz co masz za błędy:
- session_save_path() -> brak dostępu, wg mnie wykomentowanie tej funkcji powinno załatwić sprawę, ale stworzenie miejsca na koncie z poprawną ścieżką np.:
  1. ini_set('session.save_path', realpath(dirname($_SERVER['DOCUMENT_ROOT']) . '/sessions'));


- array_key_exists() -> drugi argument nie jest tablicą lub obiektem, sprawdź co dostarczasz do tej funkcji.


W ogóle, tag [mysql] w twoim zapytaniu jest zbędny, bo w żadnym miejscu problem nie dotyczy bazy danych.
gino
@tomplus to jest jasne co piszesz ale nie dla zainteresowanego, napisał przecież że nie ma żadnej wiedzy z tego tematu i raczej się to nie zmieni.
@tg555 wklej tutaj kod pliku sessiondata.php, żebyśmy mogli zerknąć i sprobowac pomóc.

gino
tg555
Dzięki za zainteresowanie, poniżej wklejam sesiondata.php:

<?php
/*********************************************************
* Author: John Astill ?
* Date : 30th Jan 2003
* File : sessiondata.php
* Desc : Data that is required during a logged in
* : session. Matters not if the session uses
* : cookies or PHP sessions.
********************************************************/

/*************************************************************
** Store User data in session information
** needs to be global
*************************************************************/
$User = new User;

$SID="";
if (array_key_exists("sid",$HTTP_GET_VARS)) {
$SID = $HTTP_GET_VARS["sid"];
}

// For some servers it is necessary to update the session file
// directory.
if ($sessionFileDir != "/home/hosting/prv-hosting/wex.pl/i/k/typer-bukmacherski") {
session_save_path($sessionFileDir);
}

if ($SID == "") {
session_start();
$SID = session_id();
} else {
session_start($SID);
}

if (array_key_exists("User",$HTTP_SESSION_VARS)) {
$User = $HTTP_SESSION_VARS["User"];
}

// These are needed to suppress warnings in the language files.
$userid = $User->userid;
$username = $User->username;
$email = "";
$password = "";

$ErrorCode = "";
if (array_key_exists("ErrorCode",$HTTP_SESSION_VARS)) {
$ErrorCode = $HTTP_SESSION_VARS["ErrorCode"];
}

session_unregister("ErrorCode");

/*************************************************************
** Store User data in session information
** needs to be global
*************************************************************/
function RegisterUser() {
global $User;
$_SESSION["User"] = $User;
if (FALSE == session_register("User")) {
die("Can't register User");
}
}

/*************************************************************
** Delete User data in session information
** needs to be global
*************************************************************/
function UnregisterUser() {
$HTTP_SESSION_VARS["USER"] = "";
session_unregister("User");
}

?>

Hej, wiem, że to super nieprofesjonalne ale nie mam nic do stracenia a może ktoś z Was mając chwilkę rzuci na to okiem i poprawi co trzeba to będę ogromnie wdzięczny, a więc panel do logowania to https://openid.pino.pl/app/konto-logowanie/site,prv i tam konto tg555@wp.pl hasło: Typer2013. Serwer do FTP typer-bukmacherski.wex.pl, login: typer-bukmacherski@wex.pl hasło: Typer2013 Dane do bazy danych znajdują się po zalogowaniu. Mam nadzieję, że podawanie takich danych nie jest zabronione smile.gif
nospor
Uzywaj bbcode dla wklejanego kodu.


Nie: $HTTP_GET_VARS
a: $_GET

Nie: $HTTP_SESSION_VARS
a: $_SESSION
tg555
Dzięki nospor, część błędów zniknęła ale zostały takie:

Warning: session_save_path(): Unable to access in /home/hosting/prv-hosting/wex.pl/i/k/typer-bukmacherski/sessiondata.php on line 25

Warning: array_key_exists(): The second argument should be either an array or an object in /home/hosting/prv-hosting/wex.pl/i/k/typer-bukmacherski/sortfunctions.php on line 659

no i nadal nie mogę się zalogować do bazy przez stronę i swoje konto sad.gif
gino
co do session_save_path napisał już @tomplus co masz zrobić, w pliku sortfunctions.php w linii 659 sprawdź co jest drugim parametrem w funkcji array_key_exists(), podejrzewam, że też zamiast $_GET masz $HTTP_GET_VARS, albo jakaś predefiniowana zmienna tablicową która została usunięta.

ps. podawanie danych, które podałeś nie jest przestępstwem, Twoja sprawa, tylko może przysporzyć Ci w przyszłości kłopotu. I tak, masz racje to jest nieprofesjonalne i nie jest ważne czy to jest dla zabawy czy innych celów. Kiedyś możesz się mocno zdziwić.

gino
viking
Zmieniłem ci zapis sesji do lokalnego tmp i poprawiłem drugi błąd. Tak czy inaczej licz się z tym że ktoś coś mógł wgrać.
tg555
Dzięki wielkie! będę zaraz sprawdzał czy funkcjonalność wróciła

Kurcze wszystko wygląda jak poprzednio ale nie mogę się zalogować na swoje konto ani utworzyć nowego loginu, nie chcę nadwyrężać Waszej cierpliwości ale czy można coś z tym zrobić?
Tomplus
Musisz przeanalizować kod.
Skoro wpisujesz poprawnie dane, to błąd musi być gdzie gdzie nie widzisz.
viking
Skoro podałeś oublicznie wszystkie loginy i hasła to co się dziwisz że ktoś to wykorzystał?
tg555
Narazie nikt się nie włamał, usunąłem bazę danych i wgrałem raz jeszcze, ustawiłem plik konfiguracyjny i nadal nie mogę operować ze strony www (nie mogę się zalogować). Wygląda jakby nie było połączenia z bazą userów. Nie mogę też stworzyć nowego usera. A już się witałem z gąską sad.gif Muszę poszukać gdzie może być błąd...
Tomplus
Jak nie ma połączenia z bazą, to sprawdź dlaczego go nie ma, inaczej nie stworzysz użytkownika, ani się nie zalogujesz.

Jak wygląda kod połączenia z bazą? Bo ma się rozumieć, że żadnego błędu nie ma?
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.