Witam mam stworzony projekt uczelniany w bazie danych MySQL. Mam pytanie ,gdyż stworzyłem plik config.php gdzie zawarte jest "połączenie" z bazą danych. Do 80% projektu jest wykorzystane połączenie za pomocą mysqli. Tworząc ostatni skomplikowany formularz doszedłem do wniosku ,że lepiej sie go zrobi za pomocą PDO. Dodałem dodakowe połącznie PDO w config.php i zrobiłem ostatni formularz obiektowo. Mam pytanie czy takie rozwiązanie jest akceptowalne ? Wszystko działa ale 80% projektu jest wykonane za pomocą mysqli a 20% obiektowo.
Mam pytanie ,gdyż stworzyłem plik config.php gdzie zawarte jest "połączenie" z bazą danych.
Co masz na myśli pisząc "połączenie"? W pliku config nie powinno być żadnego łączenia z bazą, tylko same dane autoryzacyjne (username, password, host, nazwa bazy, itp.)
Mam pytanie czy takie rozwiązanie jest akceptowalne ?
Nie widzę kodu, nie mam zielonego pojęcia jak to wygląda.
doszedłem do wniosku ,że lepiej sie go zrobi za pomocą PDO
Co masz na myśli poprzez lepiej
?
Mam pytanie czy takie rozwiązanie jest akceptowalne ?
IMO lepiej jest mieć średnio (mysqli), lecz jednolicie.
```<?php
// baza danych
define('SERWER', 'localhost');
define('UZYTKOWNIK', 'root');
define('HASLO', '');
define('NAZWA_BAZY', 'baza');
// polączenie
$link = mysqli_connect(SERWER, UZYTKOWNIK, HASLO, NAZWA_BAZY);
// sprawdzenie połączenia
if($link === false){
die("ERROR: Could not connect. " . mysqli_connect_error());
}
?>
<?php
// klasa dostępu do bazy danych
class Db
{
// połączenie
private $connection;
// konstruktor
function __construct($host, $dbName, $login, $password)
{
// utworzenie połączenia
$this->connection = new PDO("mysql:host=$host;dbname=$dbName;charset=utf8", $login, $password);
$this->connection->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION);
}
Mam jakby dwa połączenia i 80% projektu jest realizowane za pomocą mysqli a 20 za pomocą pdo.
Po pierwsze ja bym zmienił sposób przechowywania configu. Nie jest to dobre. Możesz zrobić sobie zrobić klasę DbConfig, czy coś, i wrzuć tam to do constów. Albo nalepiej stwórz sobie dwa pliki z configiem, jeden z szablonem, wrzucany do repo, a drugi z prawdziwym configiem, który będzie ignorowany w repo.