Een class maken voor een database verbinding.

Overzicht Reageren

Sponsored by: Vacatures door Monsterboard

Richard

Richard

24/04/2006 23:47:00
Quote Anchor link
Ik probeer een class te maken voor een database verbinding, maar ik loop flink vast.
Op de server draait PHP4.

Dit is mijn eerste class (expiriment)!
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
<?php
class connect {

        var
$host;
        var
$db;
        var
$user;
        var
$pass;
                        
        function
setConnect(){
            $this->host = "localhost";
            $this->db = "database";
            $this->user = "gebruiker";
            $this->pass = "wachtwoord";
        }
        
        function
Connect(){
            $link = mysql_connect($this->host,$this->user,$this->pass);
            mysql_select_db($this->db) or die("verbinding mislukt");
            echo "$link";
        }
    
}

?>


En zo roep ik hem aan!

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
<?php
include ("classes/mysql_class.inc.php");

echo "<html>\n";
echo "<head>\n";
echo "<title>Welkom op onze website</title>\n";
echo "</head>\n";
echo "<body>\n";

$actions = new connect;
$actions->setConnect();
$actions->Connect();



echo "</body>\n";
echo "</html>\n";
    
?>


Het resultaat is Verbinding Mislukt. (Uiteraard heb ik even de database login codes fictief gemaakt).

Wat doe ik hier niet goed!

Ik wil graag een beetje inzicht in classes krijgen
maar voorlopig is het hard werken!!

Iedereen vast bedankt voor jullie Reacties.
 
PHP hulp

PHP hulp

20/11/2024 03:45:05
 
Jelmer -

Jelmer -

25/04/2006 07:47:00
Quote Anchor link
Ik zou ten eerste de gegevens die je aan setConnect() mee zou moeten geven (dus de waarden niet hardcoded in je klasse zetten) direct meegeven aan Connect. Reden: dat scheelt je 2 overbodige regels.

Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
6
7
8
9
<?php
class Connect {
   var
$link;
   function
Connect($host, $user, $pass, $database) {
      $this->link = mysql_connect($host,$user,$pass);
      mysql_select_db($database) or trigger_error("verbinding mislukt");
   }
}

?>


Gegevens als usser, host, password heb je niet meer nodig nadat je de link hebt opgezet, dus is het nutteloos die gegevens op te slaan.

Dit is mijn (PHP5) klasse, misschien nuttig als voorbeeld.
 
Jelmer -

Jelmer -

25/04/2006 10:05:00
Quote Anchor link
En die roep je dan zo aan:
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
6
7
8
<?php
$db
= new Connect('localhost', 'root', '', 'test);

//Voorbeeld:

$query_id = $db->query('
SELECT * FROM test');
print_r($db->fetchArray($query_id));
?>

Moet je uiteraard wel die functies nog maken. Ik zou hem trouwens 'Database' ipv 'Connect' noemen. Connect is nogal algemeen, Database zegt al veel meer.
 
Richard

Richard

25/04/2006 10:40:00
Quote Anchor link
Bedankt voor je voorbeelden ik ben er meteen mee aan de slag gegaan!
 



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.