Hey Tom,
ich danke dir, dass du dir so viel mühe gibst. Ich glaube ich habe vorhin auch schon was im Archiv gefunden und eben noch einmal aufgegriffen. Der Beitrag war auf diese Webseite verlinkt. Ich habe versucht ein wenig durch das Script durchzusteigen, aber dafür sind meine Kenntnisse einfach zu schlecht. Funktionieren tut es jedoch. Das ist doch schon mal was schönes :-).
Die Formel in der Datenbank war übrigens nicht (LEVEL*2.3)² sondern (LEVEL*2.3)*(LEVEL*2.3), da ich ja nun schon die Tücken von PHP kenne, keine Hochzahlen umzusetzten ;-).
Hier noch mal das Script, welches ich ein angepasst habe. Wäre schön, wenn ihr mir noch die Schönheitsfehler sagen könntet oder falls ich doch etwas falsch gemacht habe :-).
$vars = array("LEVEL" => 2);
$formula = $skill_info['steady'];
$regex = '/\[[a-zA-Z0-9]*\]/';
preg_match_all($regex,$skill_info['steady'],$matches);
foreach($matches[0] as $matchkey => $matchvalue){
$varname = str_replace(']','',str_replace('[','',$matchvalue));
$varvalue = $vars[$varname];
$skill_info['steady'] = str_replace($matchvalue,$varvalue,$skill_info['steady']);
}
$result = '';
$skill_info['steady'] = "\$skill_info['steady'] = ".$skill_info['steady'].";";
eval($skill_info['steady']);
Das Ergebniss stimmt auf jeden fall ^^.
Liebe Grüße, Olli