Zmiana mysql na mysqli


(rycerz2000) #1

Aktualnie do łączenia z bazą danych używam takiego kodu:

$link = mysql_connect($host, $user, $pass) or die("Nie można nawiązać połączenia z bazą danych!");
mysql_select_db($db, $link) or die("Nie odnalleziono bazy danych!");

function connect_select($sql)
{
   return @mysql_fetch_assoc(mysql_query($sql));
}
   
function connect_update($sql)
{
   return mysql_query($sql);
}

Ale muszę zmienić mysql na mysqli i w tym problem. Nie mam pojęcia jak to powinno wyglądać, przeglądałem przykłady próbował łączyć się za pomocą mysqli ale nic z tego nie wyszło (nie mogę sobie poradzić nawet z zwykłym połączeniem z bazą a co dopiero z zrobieniem do tego funkcji). Czy coś takiego jest w ogóle możliwe? Jeśli tak to jak to powinno wyglądać?


(hindus) #2

Wszystko jest ładnie opisane w manualu. 

http://php.net/manual/en/mysqli.quickstart.statements.php

W pierwszym przykładowym kodzie pokazane są przykłady wykonania po sobie kolejnych zapytań (DROP, CREATE, INSERT), użyj tak jak tam pokazano mysqli->query i już.


(rycerz2000) #3

Ok. Trochę się nad tym pomęczyłem ale w końcu się udało (okazało się że rozwiązanie jest prostsze niż myślałem). Oto rozwiązanie:

<?php
$link = mysqli_connect($host, $user, $pass, $db);
if (mysqli_connect_errno()) 
	echo "Wystąpił błąd: ".mysqli_connect_error();

function connect_select($sql)
{
	global $link;
	return @mysqli_fetch_array(mysqli_query($link, $sql));
}
   
function connect_update($sql)
{
	global $link;
	return mysqli_query($link, $sql);
}
?>