2012-10-04 13 views

Odpowiedz

7

Jest po prostu inny sposób łączenia się z bazą danych. Jeśli użyjesz mysqli_init(), najpierw zainicjujesz obiekt mysqli. Następnie za pomocą obiektu zadzwonisz pod numer real_connect(), aby połączyć się z bazą danych. Ale kiedy używasz new mysqli(), inicjujesz obiekt mysqli, przekazując wartości połączeń jako parametry, więc inicjalizuje się i łączy w tym samym czasie.

Uwaga: Wywołanie konstruktora bez parametrów jest takie samo jak wywołanie mysqli_init().

W pierwszym przypadku uzyskuje się obiekt połączenia jako wartość zwracaną, ponieważ wywołujemy konstruktor o parametrach: mysqli(). Możesz więc uruchamiać na nim zapytania. Ale w drugim przypadku trzeba przechowywać połączenie takiego,

$con = $this->_Con->real_connect($this->_DB['Server'],$this->_DB['User'],$this->_DB['Pass'],$this->_DB['DB']); 

Następnie uruchom zapytań na $con

+0

Więc to znaczy, że mój $ this -> _ Con będą takie same metody z tych 2 ?? Ale gdy próbuję użyć drugiej metody, domyślam się, że moja instrukcja insert nie wstawia nowego wiersza. Czy masz jakiś pomysł, dlaczego? –

+0

sprawdź moją edycję !! – Deepak

+1

@ user1650716 Generalnie używasz * albo * obiektu z 'nowej mysqli()' * lub * struktury z 'mysql_init()'. Nie oba. – staticsan

Powiązane problemy