Seite 2 von 2

Verfasst: 20.12.2008 12:07
von Dungeonwatcher
Moin, moin mein PHP Genie! 8)
Dungeonwatcher hat geschrieben:Nun muss ich halt mal beobachten ob die Verzinsung auch tatsächlich mit den Nachkommastellen arbeitet, bzw. ob die Aktienkurse diese auch berücksichtigen. :)
Leider werden die Nachkommastellen bei der Berechnung des neuen Preises nicht berücksichtigt. :-?

Dh. irgendwo in diesem Code der funktions_vault.php fehlt noch etwas:

Code: Alles auswählen

	$exchange = $db->sql_fetchrowset($result);
	for($i = 0; $i < count($exchange); $i++)
	{
		if ( $vault_general['stock_min_change'] > $vault_general['stock_max_change'] )
		{
			$vault_general['stock_min_change'] = $vault_general['stock_max_change'];
		}
		$variation = rand($vault_general['stock_min_change'] , $vault_general['stock_max_change']);
		$hazard = rand(1,2);
		if ( $hazard == '2' )
		{
			$variation = - $variation ;
		}
		$new_price = ceil($exchange[$i]['stock_price'] * ( 1 + ( $variation / 100 )));
		$old_price = $exchange[$i]['stock_price'] ;
		$best_price = ( $new_price > $exchange[$i]['stock_best_price'] ) ? $new_price : $exchange[$i]['stock_best_price'];
		$worst_price = ( $new_price < $exchange[$i]['stock_worst_price'] ) ? $new_price : $exchange[$i]['stock_worst_price'];

		$sql = "UPDATE " . VAULT_EXCHANGE_TABLE ."
			SET stock_price = $new_price ,
			stock_previous_price = $old_price ,
			stock_best_price = $best_price ,
			stock_worst_price = $worst_price
			WHERE stock_id = ".$exchange[$i]['stock_id'];
		$result = $db->sql_query($sql);
		if( !$result )
		{
			message_die(GENERAL_ERROR, "Couldn't update stock exchange", "", __LINE__, __FILE__, $sql);
		}
	}
	$new_time = $board_config['stock_last_change'] +  $board_config['stock_time'];
	$lsql= "UPDATE ". CONFIG_TABLE . " SET config_value = $new_time WHERE config_name = 'stock_last_change' ";
	if ( !($lresult = $db->sql_query($lsql)) ) 
	{ 
		message_die(GENERAL_ERROR, $lang['Vault_update_error'] , "", __LINE__, __FILE__, $lsql); 
	}
Welche Änderung muss ich noch wie einfügen?

Bye

Re:

Verfasst: 12.01.2009 19:09
von Dungeonwatcher
'n Abend! 8)
Dungeonwatcher hat geschrieben:Leider werden die Nachkommastellen bei der Berechnung des neuen Preises nicht berücksichtigt. :-?
Ich habe die Ursache hierfür nun endlich gefunden. :roll:

Suche in der funktions_vault.php nach:

Code: Alles auswählen

$new_price = ceil($exchange[$i]['stock_price'] * ( 1 + ( $variation / 100 )));
und ersetze es durch:

Code: Alles auswählen

$new_price = round(($exchange[$i]['stock_price'] * ( 1 + ( $variation / 100 ))), 2);
Nun wird endlich mit den Nachkommastellen gerechnet.

Bye

Re: Vault Mod: keine Nachkommastellen?

Verfasst: 07.03.2009 23:22
von fantreff
Ich stelle sicher mal wieder ne blöde Frage wie immer, aber wo finde ich den "number_format" und was muss ich dort genau ändern ? Danke schonmal im Vorraus

Re: Vault Mod: keine Nachkommastellen?

Verfasst: 08.03.2009 11:56
von Dungeonwatcher
Moin! 8)
fantreff hat geschrieben:Ich stelle sicher mal wieder ne blöde Frage wie immer, aber wo finde ich den "number_format" und was muss ich dort genau ändern ? Danke schonmal im Vorraus
Ähm, diese Frage wird genau eine Nachricht drüber beantwortet. :wink:

Bye

Re: Vault Mod: keine Nachkommastellen?

Verfasst: 08.03.2009 17:08
von fantreff
Danke