PDO, server crash

Overzicht Reageren

Sponsored by: Vacatures door Monsterboard

Pagina: 1 2 volgende »

Mark moes

mark moes

21/05/2009 15:31:00
Quote Anchor link
Hoi,

Ik had een membersysteem ergens gevonden, maar er zit een fout in. Het gaat mis met het stukje PDO, waar ik weinig tot geen verstand van heb. Vandaar dit topic.

Hier gaat het fout:
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
6
7
<?php
$db
= array(
    'connection_string' => 'mysql:host=localhost;port=3306;dbname=membersystem;',
    'user' => 'root',
    'pass' =>  '*****
);

?>


Want namelijk als ik dan de pagina open, vliegt mijn lokale server er uit.
Als ik het laatste stukje weghaal: dbname=membersystem; blijft de server er wel in, alleen is er dan natuurlijk geen db geselecteerd, dus dat schiet ook niet echt op.

Roept u maar, als er meer code moet komen, ik heb geen idee...
 
PHP hulp

PHP hulp

16/05/2021 23:00:34
 
Hipska BE

Hipska BE

21/05/2009 15:44:00
Quote Anchor link
Dat is natuurlijk flauwe kul.

Je maakt enkel een array aan..
Daar kan je server helemaal niet van crashen.

Enigste opmerking is bij pass, daar staat een string niet tussen quotes.
 
Mark moes

mark moes

21/05/2009 16:08:00
Quote Anchor link
Nee, daar heb ik net even sterretjes heen gezet...

Als ik dat er weg haal, gaat het wel goed... Waar kan dat anders in zitten?
Dit is de rest van die code...

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
<?php
/**
 * Start session
 */

if( !isset($_SESSION) )
{

    session_start();
}


/**
 * Database info
 * @see http://www.php.net/PDO
 
 mysql:host=localhost;port=3306;dbname=membersystem;
 */

$db = array(
    'connection_string' => 'mysql:host=localhost;port=3306;dbname=membersystem;',
    'user' => 'root',
    'pass' =>  '0611491115'
);

/**
 * Used for cookie setting
 */

$domain_name = $_SERVER['SERVER_NAME'];
$script_path = str_replace($_SERVER['DOCUMENT_ROOT'], '', substr(dirname(__FILE__), 0, strrpos(dirname(__FILE__), DIRECTORY_SEPARATOR)));

if($script_path[0] != DIRECTORY_SEPARATOR)
{

    $script_path = DIRECTORY_SEPARATOR.$script_path;
}

if(substr($script_path, -1) != DIRECTORY_SEPARATOR)
{

    $script_path .= DIRECTORY_SEPARATOR;
}

?>
 
Hipska BE

Hipska BE

21/05/2009 16:31:00
Quote Anchor link
Dit is nog steeds een stukje code die enkel maar wat variabelen aanmaakt. Deze code voert nog niets uit.

Wat bedoel je trouwens met "vliegt mijn lokale server eruit"? Ik heb nog nooit een vliegende server gezien. Misschien mis ik wel iets.

En je vermeldt in je titel PDO. Ik heb je nog nergens PDO zien gebruiken.
 
Mark moes

mark moes

21/05/2009 16:35:00
Quote Anchor link
Sorry, volgens mij heb ik iets belangrijks niet laten zien...
Hier de code van het bestand 'start.php', waar de databaseconnectie wordt gemaakt. En met dat vliegen bedoel ik dat Apache er mee stopt, werkt niet meer, breekt af, alles behalve gewoon zijn werk.

Volgens mij gaat het mis op regel 39.

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
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
<?php

// ------------------------------------------------------------------------

error_reporting(E_ALL | E_STRICT);
ini_set('display_errors', 'On');


function
__autoload($classname)
{

    if(file_exists('classes/'.strtolower($classname).'.class.php'))
    {

        require_once 'classes/'.strtolower($classname).'.class.php';
    }
}


/**
 * Include classes
 */

require_once 'inc/config.inc.php';
require_once 'classes/exceptions.php';
require_once 'classes/template_lite/class.template.php';
require_once 'classes/template_lite/class.compiler.php';
require_once 'classes/template_lite/class.config.php';

// Create Registry class
$registry = Registry::GetInstance();
$registry -> script_path = $script_path;
$registry -> domain_name = $domain_name;

// Set timezone
date_default_timezone_set('Europe/Amsterdam');

/**
 * PDO connection to database (here: mysql)
 */

try
{
    $registry -> connection = new PDO($db['connection_string'], $db['user'], $db['pass']);
    $registry -> connection -> setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION);
    
    // The MySQL Driver for PDO is far from perfect
    if($registry -> connection -> getAttribute(PDO::ATTR_DRIVER_NAME) == 'mysql')
    {

        $registry -> connection -> setAttribute(PDO::ATTR_EMULATE_PREPARES, true);
        $registry -> connection -> setAttribute(PDO::MYSQL_ATTR_USE_BUFFERED_QUERY, true);
    }


    /**
     * Start the user session
     */

    $manager = new SessionManager($script_path, $domain_name);
    $registry -> session = $manager -> startSession();
}

catch(PDOException $e)
{

    die('Could not connect to database: '. $e->getMessage());
}

catch(Exception $e)
{

    die('Errors creating session:'. $e->getMessage());
}



// Init template
$registry -> template = new Template_Lite();
$registry -> template -> config_class = 'TplConfig';
$registry -> template -> template_dir = 'template';

$session_data = $registry -> session -> session_data;
$session_data['user'] = $registry -> session -> user -> userdata;
$registry -> template -> assign('session', $session_data);

?>
Gewijzigd op 01/01/1970 01:00:00 door mark moes
 
Steff   an

Steff an

21/05/2009 16:35:00
Quote Anchor link
PDO en crashes.. gebruik je XAMPP? Zoja dan, is het volgende misschien je probleem: http://www.apachefriends.org/f/viewtopic.php?f=16&t=34352
 
Mark moes

mark moes

21/05/2009 16:39:00
Quote Anchor link
hm van wat ik er zo gauw van snap ligt het dus aan een bug in xampp.... Die gebruik ik ja. Met vista, en ik krijg al foutmeldingen bij het openen van de mysql admin.

EDIT
Ik heb de tut gevolgd, en de bestanden gewijzigd, maar t mag geen verschil maken. Heb je nog meer nieuws m.b.t. xampp, pdo en vista? :P
Gewijzigd op 01/01/1970 01:00:00 door mark moes
 
Mark moes

mark moes

23/05/2009 19:14:00
Quote Anchor link
BUMP
Het is nog niet op gelost. Heeft iemand hier verder nog ervaring mee? Xampp en PDO?
 
Yearupie Achternaamloos

Yearupie Achternaamloos

23/05/2009 19:20:00
Quote Anchor link
ik denk dat je iets veranderd hebt wat je niet mocht veranderen.. Als ik het goed heb is dat het oop membersysteem van phpfreakz?
 
Daniel H

Daniel H

23/05/2009 19:22:00
Quote Anchor link
je kan toch gwn opnieuw mysql er opzetten? of een versie van Xampp pakken die dit niet heeft.
Gewijzigd op 01/01/1970 01:00:00 door Daniel H
 
Mark moes

mark moes

23/05/2009 19:24:00
Quote Anchor link
nee een battle op webmastercity... Zag er wel goed uit, was benieuwd hoe het werkte, kan ik altijd weer van leren... :D Ik zal xampp 1 dezer dagen wel even op nieuw installeren, wie weet wordt het daar beter van.

Zijn er verder nog problemen bekend van xampp vs. vista?
 
Mar cel

Mar cel

23/05/2009 21:31:00
Quote Anchor link
Wamp werkt iig correct icm Vista/ 7
 
Mathijs -

Mathijs -

23/05/2009 22:42:00
Quote Anchor link
apache//php error logs gecontroleerd? :P
 
Afra ca

Afra ca

24/05/2009 09:21:00
Quote Anchor link
Marcel schreef op 23.05.2009 21:31:
Wamp werkt iig correct icm Vista/ 7


xampp werkt op windows 7 en vista ook prima
 
Mar cel

Mar cel

24/05/2009 16:54:00
Quote Anchor link
Ok. Heb verder nooit Xampp gebruikt dus. Waar staat die X en die laatste P voor dan? Bij Wamp is het: Windows Apache MySQL, PHP toch?
 
- -

- -

24/05/2009 17:01:00
Quote Anchor link
XAMPP is een open-source project van ApacheFriends en bestaat onder andere uit de Apache-webserver, MySQL, PHP en Perl. XAMPP staat bekend om de eenvoudige installatie en de uitgebreide documentatie.

XAMPP bestaat al sinds 2002 komt voort uit het vroegere WAMPP (voor Windows) en LAMPP (voor Linux). XAMPP is inmiddels beschikbaar voor Linux, Windows, MacOS X en Solaris. Om deze reden is ook de naam gewijzigd van WAMPP/LAMPP naar XAMPP om de uitwisselbaarheid tussen de diverse platformen te benadrukken.

Bron: http://nl.wikipedia.org/wiki/XAMPP
 
Mar cel

Mar cel

24/05/2009 20:13:00
Quote Anchor link
Ah oke;)
 
Mark moes

mark moes

25/05/2009 19:17:00
Quote Anchor link
@ daniel,
welke versie heeft hier geen last van dan? volgens mij heb ik de nieuwste..

Maar ik zal m een dezer dagen even opnieuw installeren. Wie weet gaat het dan weer beter...
 
Ed

Ed

25/05/2009 21:59:00
Quote Anchor link
Toch wel zonde, dat er nog steeds niet vermeld is wat de error zijn in apache errorlog. Want je zegt server vliegt eruit, maar dat weet je niet eens, misschien wordt er wel een fatal gegooid, wat veel waarschijnlijker is, dan een seg fault op je apache.

Dus kijk in je error log, voordat je een configuratie van een server gaat aanpassen. Tis een beetje omgekeerde wereld, je config tunen om je script werkend te krijgen.
 
Mark moes

mark moes

26/05/2009 17:49:00
Quote Anchor link
Nou, hier dan de log van vandaag, zelfde handelingen als anders...
Ik open de eerder geposte index, dat is de eerste regel in de log, dan start ik de server handmatig op via Services van windows, en dan volgen dus de rest van de regels...

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
[Tue May 26 17:42:40 2009] [notice] Parent: child process exited with status 255 -- Restarting.
[Tue May 26 17:46:21 2009] [warn] pid file C:/xampp/apache/logs/httpd.pid overwritten -- Unclean shutdown of previous Apache run?
[Tue May 26 17:46:21 2009] [notice] Digest: generating secret for digest authentication ...
[Tue May 26 17:46:21 2009] [notice] Digest: done
[Tue May 26 17:46:23 2009] [notice] Apache/2.2.11 (Win32) DAV/2 mod_ssl/2.2.11 OpenSSL/0.9.8i mod_autoindex_color PHP/5.2.8 configured -- resuming normal operations
[Tue May 26 17:46:23 2009] [notice] Server built: Dec 10 2008 00:10:06
[Tue May 26 17:46:23 2009] [notice] Parent: Created child process 6244
[Tue May 26 17:46:24 2009] [notice] Digest: generating secret for digest authentication ...
[Tue May 26 17:46:24 2009] [notice] Digest: done
[Tue May 26 17:46:25 2009] [notice] Child 6244: Child process is running
[Tue May 26 17:46:25 2009] [notice] Child 6244: Acquired the start mutex.
[Tue May 26 17:46:25 2009] [notice] Child 6244: Starting 250 worker threads.
[Tue May 26 17:46:25 2009] [notice] Child 6244: Starting thread to listen on port 443.
[Tue May 26 17:46:25 2009] [notice] Child 6244: Starting thread to listen on port 80.
[Tue May 26 17:46:37 2009] [notice] Parent: child process exited with status 255 -- Restarting.


Ik kan er niet uit wijs worden...
 
Ed

Ed

26/05/2009 18:00:00
Quote Anchor link
Dit is een application log, waarin staat dat het process er vandoor is gegaan, dus een segfault.

Er moet ook nog een error.log zijn daar staat in wat er fout ging. En anders een test scriptje maken, met slecht de opbouw van je PDO object, kijken wat dat doet.
 

Pagina: 1 2 volgende »



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.