Beste,

Ik heb al enkele tuts ivm OOP gevolgd maar het wil mij nog steeds niet lukken.
Ik heb al zitten zoeken en kijken naar oop scripts maar ik geraak er maar niet aan uit. Kan iemand mij misschien een klein scriptje tonen met OOP en zonder OOP dat net hetzelfde doet dan kan ik daar verder uit leren.

Alvast bedankt!

Mvg
Sowieso is het belangrijk dat als je OOP wilt doen, dat je de achterliggende gedachte snapt. Kan jij dus uitleggen hoe dat zit? Zo ja, dan is het een kwestie van dat je het lastig vind om van gedachte in code te komen. Zo nee, dan is het handig om dat eerst uit te vinden.
Ik heb een tut gelezen over he je 'OOP moet denken', dus alle zelfstandige naamwoorden zijn objecten.
Lees anders de tut van blanche nog even? Daarna moet je in staat zijn om een klasse te schrijven. Misschien niet direct in perfect OO. Maar je bent dan i.i.g op weg.
heb hem al 3x gelezen, maar ik ben eigenlijk op zoek naar een script, gewoon in PHP geschreven en dan hetzelfde script in de OOP variant.

Mvg
PHP jasper op 01/12/2010 19:19:10

Ik heb een tut gelezen over he je 'OOP moet denken', dus alle zelfstandige naamwoorden zijn objecten.


Naja, dat is wel een beetje kort door de bocht...

een beetje kort door de bocht...


<?php
class Test
{
private $var;
public function __construct()
{
$this->var = 'test';
}
public function getVar( )
{
return $this->var;
}
}

$class = new Test();
echo $class->getVar();
?>
'Normaal php'
<?php
echo 'test';
?>
en hoe vorm je dit dan?

<?php

###############################################
# #
# --- Query 2.0 --- #
# #
# Author: Jasper De Smet #
# Email: [email protected] #
# Website: www.jasperdesmet.be #
# Last edited: 12 November 2010 #
# Version: 2.0 #
# thx: noppes @ PHP-hulp #
# #
###############################################

// zet dit bovenaan het script

// errors weergeven
ini_set('display_errors',1); // 1 == aan , 0 == uit
error_reporting(E_ALL | E_STRICT);

// sql debug
define('DEBUG_MODE',true); // true == aan, false == uit

// functie voor sql debug
function showSQLError($sql,$error)
{
echo '<pre>Error: '.$error.'<br />'.$sql.'</pre>';
}


// start van het script
// zet dit waar je query moet

// de query
// let op sql-injectie -> mysql_real_escape_string()
$sql = "SELECT id
FROM ...
WHERE ... = '...'
";

// Check query
if (($result = mysql_query($sql)) === false)
{
// als de query fout is -> foutafhandeling
echo 'Fout met database.';

// geef de error via de functie (bovenaan script)
if (DEBUG_MODE)
{
showSQLError($sql,mysql_error());

}
}
else
{
// De query is gelukt
}
?>
De lol van OOP is juist dat je veel meer semantiek, meer dingen die voor jou betekenis hebben in je code introduceert. Iets "dat dingen doet met sql en errors" kan je moeilijk omzetten in objecten. Je kan SQL en errors wel modelleren in objecten, maar dat helpt je niet naar een oplossing voor dat wat je probeert te maken.
hmm, ik snap het nut dus nog steeds niet.. xs
Ok, wat wil je maken?

Reageren