De laatste paar weken ben ik bezig met een template class en een information class om makkelijk dynamische sites te maken. Nu wil ik in mijn config-file de waarde van een resultaat van een query kunnen bewerken, bijv. als er uit een query komt ID = 32 dan wil ik met een eval kunnen zeggen, als ID = 32 dan ID = 0, of zoiets dergelijks.
Een voorbeeld uit mijn config file:
'18' => Array (
'sqlname' => 'gzip',
'templatename' => 'ht_gzip',
'table' => 'httpdvhosts',
'process_show' => 'if (\$val == 0) \$e_val = 500; '),
Het belangrijke gedeelte hiervoor uit mijn template class:
$e_val = "Testing";
$val = mysql_result($result,$i, $columns[$x][sqlname]);
eval ("\$columns[$x][process_show];");
echo "<h1>E_val:" . $e_val . "</h1>";
Het werkt dus als volgt, in $val komt een waarde uit een row te staan, deze waarde wordt vervolgens bewerkt in process_show en wordt daarna verder gebruikt. Het vreemde is nu echter dat de eval niet schijnt te werken. Ik echo $e_val maar er komt niks te staan (null). Er zit dus ergens een fout in mijn eval-statement neem ik aan. Ik heb ook een initialisatiewaarde aan $e_val gegeven in mijn template-class en toen na eval() ge-echod maar toen kreeg ik nog steeds de init-waarde.. Iemand enig id misschien ?
Een voorbeeld uit mijn config file:
'18' => Array (
'sqlname' => 'gzip',
'templatename' => 'ht_gzip',
'table' => 'httpdvhosts',
'process_show' => 'if (\$val == 0) \$e_val = 500; '),
Het belangrijke gedeelte hiervoor uit mijn template class:
$e_val = "Testing";
$val = mysql_result($result,$i, $columns[$x][sqlname]);
eval ("\$columns[$x][process_show];");
echo "<h1>E_val:" . $e_val . "</h1>";
Het werkt dus als volgt, in $val komt een waarde uit een row te staan, deze waarde wordt vervolgens bewerkt in process_show en wordt daarna verder gebruikt. Het vreemde is nu echter dat de eval niet schijnt te werken. Ik echo $e_val maar er komt niks te staan (null). Er zit dus ergens een fout in mijn eval-statement neem ik aan. Ik heb ook een initialisatiewaarde aan $e_val gegeven in mijn template-class en toen na eval() ge-echod maar toen kreeg ik nog steeds de init-waarde.. Iemand enig id misschien ?