abonnement Unibet Coolblue
  woensdag 17 augustus 2011 @ 16:13:06 #276
137776 boem-dikkie
Jedi Mind Baby!
pi_100857032
Zo. Geregeld. PHP 5.2.4.
Ik weet niks van Hindoes. Wel van Samoerai en andere dingen.
  woensdag 17 augustus 2011 @ 16:13:57 #277
137776 boem-dikkie
Jedi Mind Baby!
pi_100857067
quote:
14s.gif Op woensdag 17 augustus 2011 16:06 schreef KomtTijd... het volgende:
Dat je je provider moet schoppen, als'ie nog steeds PHP4 draait.
Je kon het kiezen. Ik ben daar al een tijd klant en mensen die voor een bepaalde datum al klant waren blijven PHP4 draaien tot je dat zelf aanpast.
Ik weet niks van Hindoes. Wel van Samoerai en andere dingen.
  woensdag 17 augustus 2011 @ 16:14:21 #278
137776 boem-dikkie
Jedi Mind Baby!
pi_100857093
quote:
0s.gif Op woensdag 17 augustus 2011 16:11 schreef Pakspul het volgende:

[..]

Pleur error_reporting(E_ALL); ook nog even aan, want je definieert eerst variabelen zonder hoofdletter en roept dan met hoofdletter aan (zie regel: 6,7)
Al gedaan, thanks. Ik had E_ALL ook al aan trouwens, die gaf over die variabelen geen fouten.
Ik weet niks van Hindoes. Wel van Samoerai en andere dingen.
  woensdag 17 augustus 2011 @ 16:15:33 #279
75592 GlowMouse
l'état, c'est moi
pi_100857159
quote:
14s.gif Op woensdag 17 augustus 2011 16:06 schreef KomtTijd... het volgende:
Dat je je provider moet schoppen, als'ie nog steeds PHP4 draait.
Nee, stmmen met je voeten is weglopen naar een ander.
eee7a201261dfdad9fdfe74277d27e68890cf0a220f41425870f2ca26e0521b0
pi_100857250
quote:
14s.gif Op woensdag 17 augustus 2011 16:14 schreef boem-dikkie het volgende:

[..]

Al gedaan, thanks. Ik had E_ALL ook al aan trouwens, die gaf over die variabelen geen fouten.
Krom, zou die wel moeten doen. Ander punt volgens mij is je klasse opbouw ook niet helemaal goed. Een gastenboek als class hebben betekent dat je meerdere gastenboeken hebt. Maar jij hebt een gastboek met daarin meerdere berichten. Dus je class moet GasteboekBericht heten o.i.d. In de gastenboek class komen dingen als AantalBerichten (totaal) en Berichten per pagina etc.
  woensdag 17 augustus 2011 @ 16:21:33 #281
137776 boem-dikkie
Jedi Mind Baby!
pi_100857426
quote:
0s.gif Op woensdag 17 augustus 2011 16:17 schreef Pakspul het volgende:

[..]

Krom, zou die wel moeten doen. Ander punt volgens mij is je klasse opbouw ook niet helemaal goed. Een gastenboek als class hebben betekent dat je meerdere gastenboeken hebt. Maar jij hebt een gastboek met daarin meerdere berichten. Dus je class moet GasteboekBericht heten o.i.d. In de gastenboek class komen dingen als AantalBerichten (totaal) en Berichten per pagina etc.
Ja oké. Maar de namen hier zijn meer om even te testen of het werkt. Ben pas net aan het inlezen over OOP en het één en ander aan het proberen.
Ik weet niks van Hindoes. Wel van Samoerai en andere dingen.
pi_100857632
quote:
7s.gif Op woensdag 17 augustus 2011 16:15 schreef GlowMouse het volgende:

[..]

Nee, stmmen met je voeten is weglopen naar een ander.
Dat is stemmen met je portemonnee :P
  woensdag 17 augustus 2011 @ 16:44:01 #283
25889 Sitethief
Fulltime Flapdrol
pi_100858392
1
2
3
4
5
6
7
8
9
10
11
12
13
14
<?php

$res 
mysql_query($sql$dbe);
if (
$res && mysql_num_rows($res) > 0) {
            
$i 0;
            while(
$row mysql_fetch_array($resMYSQL_ASSOC)){
                foreach(
$row as $key => $value){
                    
$output[$i][$key] = $value;    
                }
                
$i++;
            }
        }

?>

Kan dit performance wise sneller? Ik heb het gevoel dat ik iets verkeerd doe.....
Stroek: Sitethief, die is heel groot en sterk :Y.
Faat: *zucht* zoals gewoonlijk hoor Sitethief weer in de bocht &gt;:)
  woensdag 17 augustus 2011 @ 16:45:16 #284
75592 GlowMouse
l'état, c'est moi
pi_100858437
$output[$i] = $row. En je if is wel zinloos.
eee7a201261dfdad9fdfe74277d27e68890cf0a220f41425870f2ca26e0521b0
pi_100858560
quote:
0s.gif Op woensdag 17 augustus 2011 16:44 schreef Sitethief het volgende:

[ code verwijderd ]

Kan dit performance wise sneller? Ik heb het gevoel dat ik iets verkeerd doe.....
Volgens mij heb je het al aardig minimalistisch.

Heb nog paar verbeteringen gemaakt.
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
<?php

$res 
mysql_query($sql$dbe);

if ( 
is_resource($res) === true )
{
    if ( 
mysql_num_rows($res) > )
    {
        
$outputArray = array();
        
        while(
$row mysql_fetch_assoc($res))
        {
            
$outputArray[] = $row;
        }
    }
}
else
{
    die(
mysql_error());
}

?>
  woensdag 17 augustus 2011 @ 16:50:34 #286
25889 Sitethief
Fulltime Flapdrol
pi_100858640
Dank je, ik was helemaal uit vorm omdat ik steeds een API gebruikte voor queries etc, en nu moet ik opeens weer zonder :X .
Stroek: Sitethief, die is heel groot en sterk :Y.
Faat: *zucht* zoals gewoonlijk hoor Sitethief weer in de bocht &gt;:)
  woensdag 17 augustus 2011 @ 17:15:48 #287
137776 boem-dikkie
Jedi Mind Baby!
pi_100859644
Om aan te geven of ik een error of een goedkeuring heb bij het toevoegen van een bericht heb ik dit stukje.

1
2
3
4
5
<?php
if (!mysql_query($sql))  {$this->melding  "<p>Error.</p>";}
            else {
$this->melding  "<p>Bericht is succesvol toegevoegd.</p>";}
        }
?>

Buiten de class spreek ik dit aan doormiddel van:
1<?php if (!empty($Gastenboek->melding)) { echo $Gastenboek->melding; }    ?>

Hij laat nu echter altijd "Bericht is succesvol toegevoegd" zien boven het formulier in plaats wanneer ik iets heb toegevoegd.
Ik weet niks van Hindoes. Wel van Samoerai en andere dingen.
pi_100860265
quote:
9s.gif Op woensdag 17 augustus 2011 17:15 schreef boem-dikkie het volgende:
Om aan te geven of ik een error of een goedkeuring heb bij het toevoegen van een bericht heb ik dit stukje.
[ code verwijderd ]

Buiten de class spreek ik dit aan doormiddel van:
[ code verwijderd ]

Hij laat nu echter altijd "Bericht is succesvol toegevoegd" zien boven het formulier in plaats wanneer ik iets heb toegevoegd.
Als er iets misgaat bij invoeren van het bericht kun je ook een Exception gooien die je dan buiten de class kunt opvangen.
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
<?php
try
    {
        
$gastboek->BerichtToevoegen();

        
// als alles is goed gegaan dan gaat hij hier verder
    
}
    catch( 
Exception $ex)
    {
        echo 
"<h1>Er is iets heel ergs gebeurd!</h1>";
        
        echo 
$ex->getMessage();
        
        exit;
    }
    
    
// in het gastenboek
    
class Gastenboek
    
{
        function 
BerichtToevoegen()
        {
            
$result mysql_query($query);
            
            if ( 
$result === false )
            {
                throw new 
Exception(mysql_error());
            }
        }
    }
?>
  woensdag 17 augustus 2011 @ 19:22:50 #289
137776 boem-dikkie
Jedi Mind Baby!
pi_100864384
quote:
0s.gif Op woensdag 17 augustus 2011 17:31 schreef Pakspul het volgende:

[..]

Als er iets misgaat bij invoeren van het bericht kun je ook een Exception gooien die je dan buiten de class kunt opvangen.
[ code verwijderd ]

Oké, maar dan alsnog vraag ik me af waarom hij mijn '!empty' niet pakt terwijl hij dat in mijn 'oude' code (niet OOP) wel gewoon doet.
Ik weet niks van Hindoes. Wel van Samoerai en andere dingen.
pi_100865207
quote:
14s.gif Op woensdag 17 augustus 2011 19:22 schreef boem-dikkie het volgende:

[..]

Oké, maar dan alsnog vraag ik me af waarom hij mijn '!empty' niet pakt terwijl hij dat in mijn 'oude' code (niet OOP) wel gewoon doet.
Hoe en waar heb je '$this->melding' gedeclareerd?
pi_100866301
quote:
14s.gif Op woensdag 17 augustus 2011 19:22 schreef boem-dikkie het volgende:

[..]

Oké, maar dan alsnog vraag ik me af waarom hij mijn '!empty' niet pakt terwijl hij dat in mijn 'oude' code (niet OOP) wel gewoon doet.
Gooi eens wat meer code hier neer, want doe je de formulier afhandeling (aanname <form action="post">) achter de volgende ifstatement.

1
2
3
4
5
6
<?php
if ( $_SERVER['REQUEST_METHOD'] == 'POST' )
{
     
// hier formulier afhandeling
}
?>
  woensdag 17 augustus 2011 @ 21:31:40 #292
63192 ursel
"Het Is Hier Fantastisch!
pi_100870017
Hoe kan ik een Soap XML het gemakkelijskte omzetten naar een Data object?
Ja, ik weet dat met een soap call je dit automatisch kan aanroepen, maar heb een aantal xml's per file toegestuurd gekregen
pi_100871009
quote:
0s.gif Op woensdag 17 augustus 2011 21:31 schreef ursel het volgende:
Hoe kan ik een Soap XML het gemakkelijskte omzetten naar een Data object?
Ja, ik weet dat met een soap call je dit automatisch kan aanroepen, maar heb een aantal xml's per file toegestuurd gekregen
Met SimpleXMLElement kun je eenvoudig een XML bestand omzetten naar een array. Volgens mij moet het daarna een eitje zijn om je object te vullen.
  woensdag 17 augustus 2011 @ 21:55:11 #294
63192 ursel
"Het Is Hier Fantastisch!
pi_100871162
quote:
0s.gif Op woensdag 17 augustus 2011 21:52 schreef Pakspul het volgende:

[..]

Met SimpleXMLElement kun je eenvoudig een XML bestand omzetten naar een array. Volgens mij moet het daarna een eitje zijn om je object te vullen.
Ja, was daar ondertussen al half. Soms zit je gewoon ff in de verkeerde hoek te zoeken. :')
pi_100871219
quote:
0s.gif Op woensdag 17 augustus 2011 21:55 schreef ursel het volgende:

[..]

Ja, was daar ondertussen al half. Soms zit je gewoon ff in de verkeerde hoek te zoeken. :')
Laatste tijd zelf met XML bezig geweest en kwam hier na een tijdje achter. Zat eerst dagen met XML reader/writers te kloten en dit is velen malen makkelijker aangezien ik het ook zo wilde hebben :P
  donderdag 18 augustus 2011 @ 10:35:39 #296
25889 Sitethief
Fulltime Flapdrol
pi_100887435
Ik ben nu bezig een PDO class te bouwen, is het aanbevolen om de connect meteen in de construct af te handelen?

Heeft iemand wat voorbeelden van PDO classes, heb zelf al wat gegoogled, maar echt heel helder wordt het niet.
Stroek: Sitethief, die is heel groot en sterk :Y.
Faat: *zucht* zoals gewoonlijk hoor Sitethief weer in de bocht &gt;:)
pi_100887714
99% van de tijd werk je toch maar met 1 database per website en daarom heb ik er voor gekozen om ene singleton class te maken waarin ik gebruik maak van PDO

Hier nog meer over singleton pattern: http://en.wikipedia.org/wiki/Singleton_pattern

Voorbeeld:
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
<?php

final class DataBase
{
    private static 
$_Instance;

    private 
$_ID// hier komt de PDO class in te staan

    
public $_onnectionString;

    protected function 
__construct
    
{
        
// niet public omdat dat nodig is in singleton pattern
    
}

    public function 
ExecuteQuery($Query)
    {
        
// hier wordt de SELECT query uitgevoerd
    
}

    public function 
ExecuteNonQuery($Query)
    {
        
// hier worden INSERT, UPDATE, DELETE queries uitgevoerd
    
}

    public function 
Open()
    {
        
// openen van de database connectie (moet je dus wel connection string hebben)
    
}

    public function 
Close()
    {
        
// spreekt voor zich
    
}

    
// kun je gebruiken bij ISERTR query om nieuwe ID nummer op te halen (a
    
public function LastInsertID()
    {
        return (int) 
$this->_ID->lastInsertID();
    }

    public function 
BeginTransaction()
    {
        
$this->_ID->beginTransaction();
    }

    public function 
Commit()
    {
        
$this->_ID->Commit();
    }
        
    public function 
Rollback()
    {
        
$this->_ID->Rollback();
    }

    final static public function 
GetInstance()
    {
        if ( 
self::$_Instance === null )
        {
            
self::$_Instance = new DataBase();
        }
        
        return 
self::$_Instance;
    }

    final public function 
__Clone()
    {
        throw new 
Exception("Ain't allowed to clone this object");
    }
}

?>
  donderdag 18 augustus 2011 @ 11:20:43 #298
25889 Sitethief
Fulltime Flapdrol
pi_100888725
Thanks Pakspul :).


Nu nog prepared statements uitvogelen :D :X .
Stroek: Sitethief, die is heel groot en sterk :Y.
Faat: *zucht* zoals gewoonlijk hoor Sitethief weer in de bocht &gt;:)
pi_100888851
Een wat :? Hoe je het moet aanroepen?

Waar je ook bent, maakt niet uit hoe diep in de code kun je het volgende doen.

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
<?php

// ergens in het begin van je code
$db DataBase::GetInstance();
$db->ConnectionString "localhost;balblablablabla";

$db->Open();

// om query uit te voeren
$db DataBase::GetInstance();
$db->ExecuteQuery("query hier invullen");

// afsluiter
$db DataBase::GetInstance();
$db->Close();

?>

Als open en close in zelfde functie zitten dan hoef je uiteraard niet weer $db = DataBase::GetInstance(); te doen.
  donderdag 18 augustus 2011 @ 11:30:49 #300
25889 Sitethief
Fulltime Flapdrol
pi_100889101
PDO::prepare en PDO::exec bedoel ik dan hé.
Stroek: Sitethief, die is heel groot en sterk :Y.
Faat: *zucht* zoals gewoonlijk hoor Sitethief weer in de bocht &gt;:)
abonnement Unibet Coolblue
Forum Opties
Forumhop:
Hop naar:
(afkorting, bv 'KLB')