Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

 
Reply to this topicStart new topic
> [PDO] połączenie z bazą za pomocą config.php
Zielonkawy18
post
Post #1





Grupa: Zarejestrowani
Postów: 152
Pomógł: 4
Dołączył: 4.10.2012

Ostrzeżenie: (10%)
X----


Witam

Gdy używałem w pliku config.php poleceń z rodziny mysql ( przestarzała ) mogłem się łączyć bez problemu, ale gdy korzystam z biblioteki programistycznej PDO:

  1. <?php session_start();
  2. $connection = new PDO('mysql:host=mysql.xxx.pl;dbname=xxxx', 'xxxx', 'xxxxxx');
  3. ?>


Niestety nie chce mnie połączyć, czego brakuje tutaj?? Rozumiem, że tutaj jest stworzona instancja pewnej klasy więc muszę wykonać jeszcze jakieś zapytanie??
  1. $execute=$connection->query($my_query);


(IMG:style_emoticons/default/questionmark.gif)

Ten post edytował Zielonkawy18 30.10.2012, 10:54:23
Go to the top of the page
+Quote Post
CuteOne
post
Post #2





Grupa: Zarejestrowani
Postów: 2 958
Pomógł: 574
Dołączył: 23.09.2008
Skąd: wiesz, że tu jestem?

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


  1.  
  2. try {
  3. $connection = new PDO('mysql:host=mysql.xxx.pl;dbname=xxxx', 'xxxx', 'xxxxxx');
  4. }
  5. catch(PDOException $e) {
  6.  
  7. echo $e->getMessage();
  8. }


ps. włącz raportowanie błędów
Go to the top of the page
+Quote Post
Zielonkawy18
post
Post #3





Grupa: Zarejestrowani
Postów: 152
Pomógł: 4
Dołączył: 4.10.2012

Ostrzeżenie: (10%)
X----


Logowanie już przeszło, ale teraz funkcja, która sprawdza uprawnienia:

  1.  
  2. function checkChmod($actuallyLogin)
  3. {
  4. $query = "SELECT chmod FROM admins WHERE login='$actuallyLogin'";
  5. $execute = $connection->query($query);
  6. $result=$execute->fetch();
  7. if($result['chmod']==777) return true;
  8. else return false;
  9. }


Nie działa, po włączeniu obsługi wszystkich błędów i załączeniu do owej strony ( config.php ) mam oto to:

Notice: Undefined variable: connection in /virtual/hosting/moja_strona.php on line 80

Fatal error: Call to a member function query() on a non-object in /virtual/dhosting/moja_strona.php on line 80

generalnie wiem o co tutaj chodzi aczkolwiek nie wiem czemu nie wykrywa zmiennej $connection, która jest zdeklarowana w pliku config.php
Go to the top of the page
+Quote Post
nospor
post
Post #4





Grupa: Moderatorzy
Postów: 36 559
Pomógł: 6315
Dołączył: 27.12.2004




Cytat
generalnie wiem o co tutaj chodzi aczkolwiek nie wiem czemu nie wykrywa zmiennej $connection, która jest zdeklarowana w pliku config.php
Zasięg zmiennych
http://pl1.php.net/manual/pl/language.variables.scope.php
Go to the top of the page
+Quote Post
Zielonkawy18
post
Post #5





Grupa: Zarejestrowani
Postów: 152
Pomógł: 4
Dołączył: 4.10.2012

Ostrzeżenie: (10%)
X----


dodałem w pliku config.php aby zmienna connection była globalna ale to nic nie dało.
Go to the top of the page
+Quote Post
nospor
post
Post #6





Grupa: Moderatorzy
Postów: 36 559
Pomógł: 6315
Dołączył: 27.12.2004




W linku do którego cię odesłałem masz wszystko jasno napisane. GLOBAL ma być gdzieś jeszcze...... Masz tam nawet przyłady.... czemu wy nie czytacie co dostajecie?
Go to the top of the page
+Quote Post
Zielonkawy18
post
Post #7





Grupa: Zarejestrowani
Postów: 152
Pomógł: 4
Dołączył: 4.10.2012

Ostrzeżenie: (10%)
X----


Do każdej funkcji także dodałem global $connection ( czytałem (IMG:style_emoticons/default/smile.gif) ) ale popełniłem literówkę i stąd drugi bezsensowny post (IMG:style_emoticons/default/smile.gif) działa po poprawce.

Ten post edytował Zielonkawy18 30.10.2012, 12:17:31
Go to the top of the page
+Quote Post

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

 



RSS Aktualny czas: 2.10.2025 - 21:32