Szukam kogoś kto przyjąłby takie zlecenie (cena do uzgodnienia):
Zmieniam konto hostingowe - przenoszę serwis na mój serwer i mam błąd niezgodności dostępu do bazy danych mysql
Poprzedni hosting to debian5 + baza percona5.5 + php5.6.4 a mój obecny to ubuntu 20 + mysql5.7 + php5.6.4 (niestety nie da się zainstalować percona5.5 na ubuntu 20 co by rozwiązało problem).
Mam taki błąd
[12-Jan-2023 23:19:26 Europe/Warsaw] PHP Warning: mysql_num_rows() expects parameter 1 to be resource, boolean given in /var/www/site1/home/users/public_html/zgloszenia/core/database/mysql.class.php on line 51
A kod wygląda tak:
<?php
// Klasa do obsługi baz danych MySQL
class mysql {
// metoda ustanowiająca połączenie z bazą danych
public function connect($param)
{
$link = mysql_pconnect($param['database']['host'], $param['database']['user'], $param['database']['pass']);
//$link = mysql_connect($param['database']['host'], $param['database']['user'], $param['database']['pass']);
//$link = mysqli_connect("p:".$param['database']['host'], $param['database']['user'], $param['database']['pass']);
//$link = mysqli_pconnect($param['database']['host'], $param['database']['user'], $param['database']['pass']);
// $link = function mysql_pconnect($param['database']['host'], $param['database']['user'], $param['database']['pass']){
// return $link = mysqli_connect("p:".$param['database']['host'], $param['database']['user'], $param['database']['pass']);
$flag = mysql_select_db($param['database']['db']);
if (!$link || !$flag)
die ("Błąd: Nie mogę połączyć się z bazą danych. Odpowiedź serwera: ".mysql_error());
mysql_query("SET NAMES utf8");
}
public function disconnect()
{
mysql_close();
}
public function query($query)
{
return mysql_query($query);
}
public function fetch($sql)
{
return mysql_fetch_array($this->query($sql));
}
function fetchAll($sql, $mode=FALSE)
{
if (!$mode)
$mode = 'ARRAY';
$query = mysql_query($sql);
if (mysql_num_rows($query) != 0) //////////////////////////////////////////////TO JEST LINIA 51
{
$rows = array();
if ($mode == 'ARRAY')
{
while(($row = mysql_fetch_array($query)) != null)
{
$rows[] = $row;
}
}
if ($mode == 'ASSOC')
{
while(($row = mysql_fetch_assoc($query)) != null)
{
$rows[] = $row;
}
}
if ($mode == 'OBJECT')
{
while(($row = mysql_fetch_object($query)) != null)
{
$rows[] = $row;
}
}
return $rows;
}
else
return false;
}
public function fetchOne($sql)
{
$result = mysql_fetch_array($this->query($sql));
return $result[0];
}
public function filter($text)
{
return mysql_real_escape_string($text);
}
public function num_rows($sql)
{
return mysql_num_rows($this->query($sql));
}
public function last_id()
{
return mysql_insert_id();
}
public function fetchAsArray($sql)
{
$query = mysql_query($sql);
if (mysql_num_rows($query) != 0)
{
$rows = array();
while(($row = mysql_fetch_array($query)) != null)
{
$rows[] = $row[0];
}
return $rows;
}
else
return false;
}
public function startTransaction()
{
mysql_query('set autocommit=0;');
mysql_query('start transaction;');
}
public function commit()
{
mysql_query('commit;');
mysql_query('set autocommit=1;');
}
public function rollback()
{
mysql_query('rollback;');
mysql_query('set autocommit=1;');
}
}
?>