• Login
  • Register
  • Zoek
This Thread
  • Everywhere
  • This Thread
  • This Forum
  • Articles
  • Pages
  • Forum
  • Filebase Entry
  • More Options

ICTscripters

Dé plek voor IT

Dé plek voor IT

Login

Geavanceerde opties
  1. Home
  2. Forum
    1. Alle berichten
    2. Recente activiteiten
  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
  9. Goedkope domeinnamen
  1. Home
  2. Forum
    1. Alle berichten
    2. Recente activiteiten
  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
  9. Goedkope domeinnamen
  1. Home
  2. Forum
    1. Alle berichten
    2. Recente activiteiten
  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
  9. Goedkope domeinnamen
  1. Dé plek voor IT - ICTscripters
  2. Forum
  3. Scripting & programmeren
  4. PHP + SQL

Forum

  • Beta-testers gezocht voor Crypto-oefenplatform

    Syntax 29 januari 2026 om 16:11
  • Na 15 jaar terug van weggeweest: iCriminals.nl is terug (BETA)!

    Syntax 19 januari 2026 om 09:34
  • Developer Gezocht

    Mikevdk 10 januari 2026 om 18:57
  • Op zoek naar de legends

    Syntax 5 januari 2026 om 13:50
  • [FREE] WeFact Hosting module

    Jeroen.G 13 oktober 2025 om 14:09
  • Help testers nodig voor android app Urgent

    urgentotservices 26 september 2025 om 10:21
  • Versio vervanger

    Jeroen.G 25 augustus 2025 om 15:56
  • Afspraken systeem met planbeperking

    Lijno 1 augustus 2025 om 23:04

Marktplaats

  • 321 Nieuwe Domeinnamen December 2025

    shiga 1 januari 2026 om 10:26
  • Meerdere mafia game template te koop

    Syntax 26 december 2025 om 00:07
  • Van een pixelige afbeelding naar een strakke, moderne website

    Syntax 21 december 2025 om 17:05

Fout connection.php

  • FrankY
  • 13 januari 2015 om 18:09
  • FrankY
    Another one bites the dust.
    Ontvangen Reacties
    3
    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();
        }
    }
    ?>
    Toon Meer

    Zou iemand hier mij mee kunnen helpen?

    met vriendelijke groet,

    Frank sijbom

    Bezig met cms:)

  • Guest, wil je besparen op je domeinnamen? (ad)
  • WHMCSAddons
    Master
    Ontvangen Reacties
    88
    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.
    Ontvangen Reacties
    3
    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
    Ontvangen Reacties
    37
    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.
    Ontvangen Reacties
    3
    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();
            }
        
        }
        
    
    
    }
    ?>
    Toon Meer


    Met vriendelijke groet,

    Frank sijbom

    Bezig met cms:)

  • Luc
    Software Engineer
    Ontvangen Reacties
    44
    Berichten
    1.986
    • 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();
        	}
    }
    }
    ?>
    Toon Meer

    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.
    Ontvangen Reacties
    3
    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>
    Toon Meer

    Met vriendelijke groet,

    Frank sijbom

    Bezig met cms:)

  • Luc
    Software Engineer
    Ontvangen Reacties
    44
    Berichten
    1.986
    • 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();
            }
        }    
    }
    ?>
    Toon Meer

    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.
    Ontvangen Reacties
    3
    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
    Intermediate
    Ontvangen Reacties
    21
    Berichten
    463
    • 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>
    Toon Meer

    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
    Intermediate
    Ontvangen Reacties
    23
    Berichten
    413
    • 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
    Ontvangen Reacties
    52
    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();
            }
        }
    }
    Toon Meer

    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.
    Ontvangen Reacties
    3
    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
    Ontvangen Reacties
    197
    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.
    Ontvangen Reacties
    3
    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
    Ontvangen Reacties
    196
    Articles
    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
    Intermediate
    Ontvangen Reacties
    21
    Berichten
    463
    • 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.

Participate now!

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

Maak een account aan Login

ICT Nieuws

  • Fijne feestdagen

    tcbhome 28 december 2025 om 13:55
  • Kritieke update voor Really Simple Security-plug-in

    K.Rens 16 november 2024 om 16:12
  • ING Nederland streeft naar ondersteuning van Google Pay tegen eind februari

    K.Rens 2 november 2024 om 16:09

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
  1. Marktplaats
  2. Design
  3. Voorwaarden
  4. Ons team
  5. Leden
  6. Geschiedenis
  7. Regels
  8. Links
  9. Privacy Policy
ICTscripters ©2005 - 2026 , goedkope hosting door DiMoWeb.com, BE0558.915.582
Sponsors: Beste kattenhotel provincie Antwerpen | Beste Zetes eid kaartlezer webshop
Style: Nexus by cls-design
Stylename
Nexus
Manufacturer
cls-design
Licence
Commercial styles
Help
Supportforum
Visit cls-design