Database connection doesn't work

Overzicht Reageren

Sponsored by: Vacatures door Monsterboard

Mohsen Amrolahi Bioki

Mohsen Amrolahi Bioki

09/10/2017 18:16:12
Quote Anchor link
Hoi allemal,

Ik ben nieuw in OOP.
Ik heb zo juist mijn eerste OOP code geschreven maar hij werkt niet.
Kunnen jullie aub naar mijn code kijken en de fout aanwijzen?

Alvast bedankt



Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
<?php

require_once("config.php");

class MySQLDatabase {

   private $connection;

   function
__construct(){
      $this->open_connection();
   }


   public function open_connection() {
      // $this->connection = mysql_connect();
      $this->connection = mysqli_connect(DB_SERVER, DB_USER, DB_PASS);
      if (!$this->connection)
      {

         // die("Database connection failed: " . mysql_error());
         die("Database connection failed: " . mysqli_error());
      }

      else
      {
         // $db_select = mysql_select_db(DB_NAME, $this->connection);
         $db_select = mysqli_select_db(DB_NAME, $this->connection);
         if (!$db_select)
         {

            // die("Database selection failed: " . mysql_error());
            die("Database selection failed: " . mysqli_error());
         }
      }
   }

}



$database = new MySQLDatabase();


?>
 
PHP hulp

PHP hulp

22/11/2024 20:49:25
 
- Ariën  -
Beheerder

- Ariën -

09/10/2017 18:20:53
Quote Anchor link
Wat gaat er mis? Wat gebeurt er?

En nog een goede tip: Gebruik gewoon de MySQLi-versie met OOP. die() is niet netjes, hiervoor zijn exceptions bedoeld.

Nog mooier is een wrapper waarin je al je nodige MySQLi-objecten aanroept, zodat je eenvoudig een andere databasedriver kan implementeren.
Gewijzigd op 09/10/2017 18:22:36 door - Ariën -
 
John D

John D

09/10/2017 18:23:08
Quote Anchor link
Ik ben niet into OOP maar misschien:
$DB_SERVER, $DB_USER, $DB_PASS ??
Gewijzigd op 09/10/2017 18:23:23 door John D
 
Mohsen Amrolahi Bioki

Mohsen Amrolahi Bioki

09/10/2017 18:26:15
Quote Anchor link
Hoi Ariën,

Bedankt voor je tips.

In config.php heb ik mijn wachtwoorden staan (DB_SERVER, DB_USER, DB_PASS, DB_NAME).
In de index.php heb ik een kleine test gedaan of er een connection is met database. Maar hij reageert niet.


if (isset($database))
{
echo 'True';
}
else
{
echo 'False';
}
 
- Ariën  -
Beheerder

- Ariën -

09/10/2017 18:35:31
Quote Anchor link
John D op 09/10/2017 18:23:08:
Ik ben niet into OOP maar misschien:
$DB_SERVER, $DB_USER, $DB_PASS ??

Nee, hij gebruikt constantes.
 
Mohsen Amrolahi Bioki

Mohsen Amrolahi Bioki

09/10/2017 18:49:22
Quote Anchor link
Ik heb dat gevonden!

FOUT:
$db_select = mysqli_select_db(DB_NAME, $this->connection);

CORRECT:
$db_select = mysqli_select_db($this->connection, DB_NAME);


Bedankt jongens voor tips.
 



Overzicht Reageren

 
 

Om de gebruiksvriendelijkheid van onze website en diensten te optimaliseren maken wij gebruik van cookies. Deze cookies gebruiken wij voor functionaliteiten, analytische gegevens en marketing doeleinden. U vindt meer informatie in onze privacy statement.