Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> Ustawianie danych połączeniowych bazy z formularza.
szubi95
post 22.09.2014, 22:11:49
Post #1





Grupa: Zarejestrowani
Postów: 30
Pomógł: 0
Dołączył: 3.06.2012

Ostrzeżenie: (0%)
-----


Witam wszystkich!

Jakiś czas temu, pytałem który format jest lepszy do przechowywanie danych połączeniowych z bazą: json, xml, ini, czy zwykły php.
Dzisiaj na szybko naskrobałem pseudo klasę(zarys, bez sprawdzania poprawności danych i kilku innych rzeczy). Czy mógłby mi ktoś powiedzieć, czy pomysł jest dobry, czy można by w jakiś inny sposób zapisywać same dane np. do istniejącej już tablicy. tzn:

Mamy plik config.php a w nim:

  1. <?php
  2.  
  3. $data['host'] = ' ';
  4. $data['user'] = ' ';


i teraz w miejsce pustych apostrofów dodawać bezpośrednio dane konfiguracyjne.

Cała koncepcja tyczy się, tak jak wspomniałem w temacie instalacji jakiegoś systemu ze strony poprzez formularz, bez grzebania w plikach.

A tak napisałem obecnie(cały plik nadpisywany jak widać):

  1.  
  2. <?php
  3.  
  4. class DbData
  5. {
  6. private $fileName;
  7. private $host;
  8. private $user;
  9. private $password;
  10. private $database;
  11. private $config;
  12.  
  13. public function __construct($host, $user, $password, $database)
  14. {
  15. $this->setHost($host);
  16. $this->setUser($user);
  17. $this->setPassword($password);
  18. $this->setDatabase($database);
  19. $this->createArray();
  20. $this->setToFile('config.php');
  21. }
  22.  
  23. private function setToFile($fileName)
  24. {
  25. $this->fileName = $fileName;
  26. if (file_exists($this->fileName)) {
  27. file_put_contents($this->fileName, $this->config, FILE_TEXT | LOCK_EX);
  28. }
  29. }
  30.  
  31. private function createArray()
  32. {
  33. $this->config = '<?php $data = [
  34. \'host\' => \''.$this->host.'\',
  35. \'user\' => \''.$this->user.'\',
  36. \'password\' => \''.$this->password.'\',
  37. \'database\' => \''.$this->database.'\',
  38. ];';
  39. }
  40.  
  41. protected function setHost($host)
  42. {
  43. $this->host = $host;
  44. }
  45.  
  46. protected function setUser($user)
  47. {
  48. $this->user = $user;
  49. }
  50.  
  51. protected function setPassword($password)
  52. {
  53. $this->password = $password;
  54. }
  55.  
  56. protected function setDatabase($database)
  57. {
  58. $this->database = $database;
  59. }
  60. }
  61.  
  62. $a = new DbData('localhost', 'root', '', 'db');
  63.  



Pozdrawiam,
szubi
Go to the top of the page
+Quote Post

Posty w temacie


Reply to this topicStart new topic
1 Użytkowników czyta ten temat (1 Gości i 0 Anonimowych użytkowników)
0 Zarejestrowanych:

 



RSS Wersja Lo-Fi Aktualny czas: 18.07.2025 - 23:59