• Inloggen
  • Registreer
  • Zoeken
Dit topic
  • Overal
  • Dit topic
  • Dit forum
  • Artikelen
  • Pagina's
  • Forum
  • Downloads
  • Meer opties

ICTscripters

Dé plek voor IT

Dé plek voor IT

Aanmelden

Geavanceerde opties
  1. Home
  2. Forum
    1. Alle berichten
    2. Recente activiteiten
    3. Onopgeloste topics
  3. ICT Nieuws
  4. Blog
  5. Marktplaats
    1. Werk
    2. Advertenties
    3. Domeinnamen
    4. Websites
    5. Design & lay-outs
    6. Scripts
    7. Overige
  6. Design
  7. Leden
    1. Actieve bezoekers
    2. Team
    3. Leden zoeken
  8. Downloads
  1. Home
  2. Forum
    1. Alle berichten
    2. Recente activiteiten
    3. Onopgeloste topics
  3. ICT Nieuws
  4. Blog
  5. Marktplaats
    1. Werk
    2. Advertenties
    3. Domeinnamen
    4. Websites
    5. Design & lay-outs
    6. Scripts
    7. Overige
  6. Design
  7. Leden
    1. Actieve bezoekers
    2. Team
    3. Leden zoeken
  8. Downloads
  1. Home
  2. Forum
    1. Alle berichten
    2. Recente activiteiten
    3. Onopgeloste topics
  3. ICT Nieuws
  4. Blog
  5. Marktplaats
    1. Werk
    2. Advertenties
    3. Domeinnamen
    4. Websites
    5. Design & lay-outs
    6. Scripts
    7. Overige
  6. Design
  7. Leden
    1. Actieve bezoekers
    2. Team
    3. Leden zoeken
  8. Downloads
  1. Dé plek voor IT - ICTscripters
  2. Forum
  3. Scripting & programmeren
  4. PHP + SQL

Forum

  • Externe testers gezocht — Saphaxis AI Chat Organizer 0.1.59

    FreelanceAP 4 november 2026 om 07:42
  • nieuwe game

    tigermaffia 2 november 2026 om 15:21
  • Criminolz

    qevanto 31 oktober 2026 om 20:52
  • [Beta] Ottomaan: gratis browserspel met een echte, levende stad. Feedback gezocht!

    frio 27 oktober 2026 om 12:22
  • Port Father: beta van een browsergame in Antwerpen 1931, feedback welkom

    Jeroen.G 26 oktober 2026 om 10:33
  • Maffia Hotel: een browsergame waarin je van lobbygast naar spil van het hotel groeit

    eeyk 22 oktober 2026 om 18:43
  • Crime Club volledig herschreven vanaf nul

    frio 19 oktober 2026 om 23:57
  • Malavita (nieuwe maffia game, van 0)

    jos 19 oktober 2026 om 23:18

Marktplaats

  • [Aanbod] Stadskaart voor je browsergame: van menu naar klikbare stad, vanaf €200

    frio 29 oktober 2026 om 18:17
  • [Verkoop] G4G (Gangsters 4 Gangsters): volledige broncode, nieuw gebouwd in PHP 8.3 | € 30 per domein

    frio 27 oktober 2026 om 18:54
  • [TE KOOP] Malavita.be [Maffiaspel, gebaseerd op omicidio.nl, unieke code]

    Dpm_x 26 oktober 2026 om 00:22

Fout connection.php

  • FrankY
  • 13 januari 2015 om 18:09
  • FrankY
    Another one bites the dust.
    Berichten
    598
    • 13 januari 2015 om 18:09
    • #1

    Hallo,

    ik heb het volgende script van het internet gehaald om een connectie met het database te leggen. Echter krijg ik alleen een wit scherm, ik heb Error_reporting aangezet en krijg niks.

    Ik weet zeker dat het aan dit stukje code ligt aangezien ik gewoon mijn form krijg als ik de include weg haal.

    het script:

    PHP
    <?php
    class Connection {
    
    
        public $connection;
        public $query;
    
    
        public $host;
        public $user;
        public $pass;
        public $database;
    
    
        public function __construct($host, $user, $pass, $database){
            $this->host = $host;
            $this->user = $user;
            $this->pass = $pass;
            $this->database = $database;
        }
        
        try {
            $this->connection = new PDO("mysql:host=". $this->host .";dbname=". $this->database ."", $this->user, $this->pass);
            $this->connection->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION);
        }
        catch (PDOException $e) {
            $e->getMessage();
            die();
        }
    }
    ?>
    Meer tonen

    Zou iemand hier mij mee kunnen helpen?

    met vriendelijke groet,

    Frank sijbom

    Bezig met cms:)

  • Gast, wil je besparen op je domeinnamen? (ad)
  • WHMCSAddons
    Meester
    Berichten
    2.411
    • 13 januari 2015 om 18:15
    • #2

    Volgens mij zou de try { } binnen de __construct moeten staan.

    Verder kan je host de error_reporting() uit hebben gezet, een kleine fix is.

    PHP
    <?php ini_set("display_errors","on"); error_reporting(E_ALL);  ?>
  • FrankY
    Another one bites the dust.
    Berichten
    598
    • 13 januari 2015 om 18:37
    • #3

    Hallo.

    Heb het aangepast en nog steeds het zelfde. Alleen een wit beeld.

    Met vriendelijke groet,

    Frank sijbom

    Bezig met cms:)

  • J.Rijdes
    Elite members
    Berichten
    1.581
    • 13 januari 2015 om 18:43
    • #4

    De try moet inderdaad in de construct staan. Want nu zeg je nergens waar die uitgevoerd moet worden, staat namelijk niet in een function.

    Of maak er een aparte functie van of je moet hem in de construct zetten.

    Daarnaast moet de catch als volgt zijn:

    PHP
    <?php
    catch (PDOException $e) {
    return $e->getMessage();
    		die();
    	}
    ?>

    Hoop dat je er wat mee kan.

  • FrankY
    Another one bites the dust.
    Berichten
    598
    • 13 januari 2015 om 18:49
    • #5

    Hallo.

    Ook dit heb ik aangepast, het script ziet er nu als volgt uit:

    PHP
    <?php
    error_reporting(E_ALL);
    class Connection {
    
    
        public $connection;
        public $query;
    
    
        public $host;
        public $user;
        public $pass;
        public $database;
    
    
        public function __construct($host, $user, $pass, $database){
            $this->host = $host;
            $this->user = $user;
            $this->pass = $pass;
            $this->database = $database;
            
            try {
                $this->connection = new PDO("mysql:host=". $this->host .";dbname=". $this->database ."", $this->user, $this->pass);
                $this->connection->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION);
            }
            catch (PDOException $e) {
                return $e->getMessage();
                die();
            }
        
        }
        
    
    
    }
    ?>
    Meer tonen


    Met vriendelijke groet,

    Frank sijbom

    Bezig met cms:)

  • Luc
    Software Engineer
    Berichten
    1.989
    • 13 januari 2015 om 18:51
    • #6

    die die() is nergens voor nodig.

    PHP
    <?php
    class Connection {
    
    
    	private $connection;
    	private $query;
    
    
    	private $host; 
    	private $user;
    	private $pass;
    	private $database;
    
    
    	public function __construct($host, $user, $pass, $database){
       		$this->host = $host; 
       		$this->user = $user;
       		$this->pass = $pass;
       		$this->database = $database;
    	}
    
    
    public function Connect()  {
    	
        	try {
           		$this->connection = new PDO("mysql:host=". $this->host .";dbname=". $this->database ."", $this->user, $this->pass);
           		$this->connection->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION);
        	}
        	catch (PDOException $e) {
              		return $e->getMessage();
        	}
    }
    }
    ?>
    Meer tonen

    aanroepen:

    $db = new Connection();
    $db->Connect();

    Waarom wil je host, user etc public hebben? Dat betekend dat andere instanties/classes die mogen/kunnen uitlezen iets wat je om veiligheidsredenen niet wil. Heb ze nu op private gezet.

    Website: https://devimo.nl
    Skype: https://join.skype.com/invite/dJyYILTt7Eqh

  • FrankY
    Another one bites the dust.
    Berichten
    598
    • 13 januari 2015 om 18:58
    • #7

    Hallo.
    Heb het wederom even aagepast, bedankt voor het aangeven dat het private had moeten zijn. Ik heb dit script van het internet en heb dus nog niks aangepast.

    Heb nog steeds een wit scherm en ik roep nog niks aan. Dit is mijn index.php:

    PHP
    <?php
    ini_set("display_errors","on"); 
    error_reporting(E_ALL);
    include_once "connection.php";
    ?>
    
    
    <html>
        <head></head>
    
    
        <body>
            <?php
            if(isset($_POST['submit']))    {
                
    
    
            }
            ?>
            <form method="POST">
                Gebruikersnaam: <input type="text" name="login" /><br />
                Wachtwoord: <input type="password" name="pass" /><br />
                <input type="submit" name="submit" value="login" />
            </form>
        </body>
    </html>
    Meer tonen

    Met vriendelijke groet,

    Frank sijbom

    Bezig met cms:)

  • Luc
    Software Engineer
    Berichten
    1.989
    • 13 januari 2015 om 19:23
    • #8

    Maybe deze?

    PHP
    <?php
    class Connection {
        private $connection;
        private $query;
        private $host;
        private $user;
        private $pass;
        private $database;
        
        public function __construct($host, $user, $pass, $database) {
            $this->host = $host;
            $this->user = $user;
            $this->pass = $pass;
            $this->database = $database;
    
    
            try {
                $this->connection = new PDO('mysql:host='.$this->host.';dbname='.$this->database.','.$this->user.','.$this->pass, 
                array(
                    PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION,
                    PDO::ATTR_PERSISTENT => true,
                    PDO::MYSQL_ATTR_INIT_COMMAND => "SET NAMES utf8"
                ));
            }
            catch (PDOException $e) {
                return $e->getMessage();
            }
        }    
    }
    ?>
    Meer tonen

    Anders staat er op de concurrent een andere pdo classe die minimalistisch is.

    Website: https://devimo.nl
    Skype: https://join.skype.com/invite/dJyYILTt7Eqh

  • FrankY
    Another one bites the dust.
    Berichten
    598
    • 13 januari 2015 om 20:32
    • #9

    Hallo,

    nee werkt nog steeds niet. Ik zal even kijken:)

    Alvast bedankt,

    Frank sijbom

    Bezig met cms:)

  • A.Ruter
    Gevorderd
    Berichten
    460
    • 13 januari 2015 om 22:10
    • #10
    Citaat van FrankY

    Hallo.
    Heb het wederom even aagepast, bedankt voor het aangeven dat het private had moeten zijn. Ik heb dit script van het internet en heb dus nog niks aangepast.

    Heb nog steeds een wit scherm en ik roep nog niks aan. Dit is mijn index.php:

    PHP
    <?php
    ini_set("display_errors","on"); 
    error_reporting(E_ALL);
    include_once "connection.php";
    ?>
    
    
    <html>
        <head></head>
    
    
        <body>
            <?php
            if(isset($_POST['submit']))    {
                
    
    
            }
            ?>
            <form method="POST">
                Gebruikersnaam: <input type="text" name="login" /><br />
                Wachtwoord: <input type="password" name="pass" /><br />
                <input type="submit" name="submit" value="login" />
            </form>
        </body>
    </html>
    Meer tonen

    Met vriendelijke groet,

    Frank sijbom

    Citaat

    ini_set("display_errors","on");
    error_reporting(E_ALL);

    Je roept hier ook tot 2x error reporting. Tegenwoordig kan je alleen al door je ini aante roepen de fouten laten weergeven.

  • SC-Webmedia
    Gevorderd
    Berichten
    416
    • 14 januari 2015 om 02:01
    • #11

    Verander:

    Code
    ini_set("display_errors","on");


    naar:

    Code
    ini_set("display_errors",1);

    Vertel dan eens welke fouten er worden weergeven.

  • Patrick
    Back in the game
    Berichten
    1.417
    • 14 januari 2015 om 08:32
    • #12
    PHP
    <?php
    class database {
        
        public static $dbObj = null;
        protected $dbData = array();
        protected static $dbCon = null;
        
        // Because of singleton structure we do not allow direct acces to class
        private function __construct() { }
        private function __clone() { }
        private function __sleep() { }
        
        public static function getInstance() {
            if (!self::$dbObj instanceof self) {
                self::$dbObj = new self();
            } 
            return self::$dbObj;
        }
        
        public function init($hostname, $username, $password = null, $database, $options = null) {
            $this->dbData['hostname'] = $hostname;
            $this->dbData['username'] = $username;
            $this->dbData['password'] = (is_null($password) ? '' : $password);
            $this->dbData['database'] = $database;
            
            if (!is_null($options)) {
                if (!is_array($options)) {
                    trigger_error('Options value is not an array');
                    
                    return;
                } else {
                    $this->dbData['options'] = $options;
                }
            }
            
            try {
                self::$dbCon = new PDO('mysql:host='.$this->dbData['hostname'].';dbname='.$this->dbData['database'].','.$this->dbData['username'].','.$this->dbData['password'], $this->dbData['options']);
            } catch (PDOException $e) {
                return $e->getMessage();
            }
        }
    }
    Meer tonen

    en dan mijn versie van de database class zoals weergegeven :-)!
    aanroepen doe je door:

    Code
    <php
    $db = database::getInstance();
    $db->init(hostname, username, password, database, array(options));

  • FrankY
    Another one bites the dust.
    Berichten
    598
    • 14 januari 2015 om 11:03
    • #13

    Hallo.

    Ik ben het lijstje even afgegaan, en tot nu toe heb ik nog steeds een wit scherm. Ik heb error_reporting weggehaalt en het zo gedaan zo als SC-scripting het aangaf. Heb echter weer geen fouten.
    Heb het script van Patrick ook geprobeerd en ook aangeroepen in index.php. Wederom een wit scherm.

    Zou het probleem niet aan de host kunnen liggen? Ik heb een webhosting bij one.com.

    Ik heb ook even phpinfo() online gezet misschien kunnen jullie hier wat vinden..

    phpinfo()

    Bij voorbaat dank,

    Frank sijbom

    Bezig met cms:)

  • Thisguyisgone
    Elite members
    Berichten
    7.880
    • 14 januari 2015 om 11:15
    • #14

    Staat je pdo extentie op de host aan? Zit nu op gsm dus kan je phpinfo niet zien.

  • FrankY
    Another one bites the dust.
    Berichten
    598
    • 14 januari 2015 om 11:17
    • #15

    @Ferhat :

    PDO

    PDO supportenabled
    PDO drivers mysql, sqlite

    pdo_mysql

    PDO Driver for MySQLenabled
    Client API version mysqlnd 5.0.8-dev - 20102224 - $Id: 731e5b87ba42146a687c29995d2dfd8b4e40b325 $

    DirectiveLocal ValueMaster Value
    pdo_mysql.default_socket/var/run/sockproxy.sock/var/run/sockproxy.sock

    Volgens mij wel.

    Ik het ook even gekeken via PDO:getAvailableDrivers(); en daar kwam dit uit:
    Array ( [0] => mysql [1] => sqlite )

    Naar mijn idee hoort dit goed te zijn?

    Edit:
    Ik heb het eens anders geprobeerd, heb nu geen classes meer en nu werkt het wel. Het is niet hoe ik het wou maar goed het moet dan maar zo.

    Iedereen bedankt!

    Met vriendelijke groet,

    Frank sijbom

    Bezig met cms:)

  • FangorN
    Professional
    Artikelen
    2
    Berichten
    737
    • 14 januari 2015 om 16:18
    • #16

    Vergeet ook vooral niet een character encoding in te stellen. Dat voorkomt echt een hele hoop problemen met in het ergste geval corrupte data in je database.

    Vanaf PHP versie 5.3.6 kun je deze meegeven aan je Data Source Name (DSN - je "connectie string") via de charset-parameter. Oudere PHP-versies negeren deze parameter. In die gevallen zou je de character encoding via de (connectie)optie PDO::MYSQL_ATTR_INIT_COMMAND moeten instellen.

    Tevens:
    * Persistente connecties... Ik weet niet of dat enige meerwaarde heeft.
    * Daarnaast kan het iets sneller zijn om voor de host altijd een IP op te geven, dat scheelt je weer een lookup.

    Citaat

    Je roept hier ook tot 2x error reporting. Tegenwoordig kan je alleen al door je ini aante roepen de fouten laten weergeven.

    Nope. Met display_errors geef je aan of je fouten wilt weergeven. Dit is een PHP_INI_ALL instelling en mag je dus overal neerzetten. Met error_reporting() geef je aan welke fouten worden weergegeven. Dit zijn twee verschillende dingen.

  • A.Ruter
    Gevorderd
    Berichten
    460
    • 17 januari 2015 om 06:31
    • #17
    Citaat van FangorN

    Vergeet ook vooral niet een character encoding in te stellen. Dat voorkomt echt een hele hoop problemen met in het ergste geval corrupte data in je database.


    Vanaf PHP versie 5.3.6 kun je deze meegeven aan je Data Source Name (DSN - je "connectie string") via de charset-parameter. Oudere PHP-versies negeren deze parameter. In die gevallen zou je de character encoding via de (connectie)optie PDO::MYSQL_ATTR_INIT_COMMAND moeten instellen.

    Tevens:
    * Persistente connecties... Ik weet niet of dat enige meerwaarde heeft.
    * Daarnaast kan het iets sneller zijn om voor de host altijd een IP op te geven, dat scheelt je weer een lookup.

    Nope. Met display_errors geef je aan of je fouten wilt weergeven. Dit is een PHP_INI_ALL instelling en mag je dus overal neerzetten. Met error_reporting() geef je aan welke fouten worden weergegeven. Dit zijn twee verschillende dingen.

    Oh, ja daar heb ik inderdaad niet aan gedacht. Ik ging er vanuit dat zodra je je .ini aanroept hij alle geselecteerde foutmeldingen oppakte.

Registratie

Nog geen account? Registreer je nu en word deel van onze community!

Nu registreren Aanmelden

ICT Nieuws

  • PHP waarschuwt voor twee ernstige bugs die makkelijk uit te buiten lijken

    Aaron 22 oktober 2026 om 22:19

Blogs

  • Functioneel ontwerp

    Dees 28 december 2014 om 12:38
  • Access Control List implementatie in PHP/MySQL - deel 1/2

    FangorN 28 december 2018 om 12:35
  • Access Control List implementatie in PHP/MySQL - deel 2/2

    FangorN 29 december 2018 om 12:37

Gebruikers die dit topic bekijken

  • 4 Gasten
  1. Marktplaats
  2. Design
  3. Voorwaarden
  4. Ons team
  5. Leden
  6. Geschiedenis
  7. Regels
  8. Links
  9. Privacyverklaring
  10. Contact
ICTscripters ©2005 - 2026 , goedkope hosting door DiMoWeb.com, BE0558.915.582
Sponsors: Beste kattenhotel provincie Antwerpen
Style: Nexus by cls-design
Stylename
Nexus
Manufacturer
cls-design
Licence
Commercial styles
Help
Supportforum
Visit cls-design