backed up to PHP 5.2.6...only phpinfo.php works...help!
am 01.09.2009 20:54:17 von Fred Silsbeeretreated to 5.2.6...phpinfo.php works
cannot connect to SQL Server 2008 (once worked for months)
doc_root =
cgi.force_redirect = 0 (recommended turned off for IIS)
extension_dir = "C:\PHP\ext"
I uncommented ALL the extensions like:
extension=php_mssql.dll
IIS 5.1 properties->home directory->configuration-> .php php5isapi.dll
I removed cgi 1.5 (trying to return to the state where everything worked)
My easy standalone (below) also quit working when I select demo
I get:
The page cannot be displayed
There is a problem with a program on the page you are trying to reach, and the page cannot be displayed.
------------------------------------------------------------ --------------------
Please try the following:
Open the 207.254.225.224:8080 home page, and then look for links to the information you want.
Click the Refresh button, or try again later.
HTTP 403.1 Forbidden: Execute Access Forbidden
Internet Information Services
------------------------------------------------------------ --------------------
Technical Information (for support personnel)
Background:
You have attempted to execute a CGI, ISAPI, or other executable program from a directory that does not allow programs to be executed.
More information:
Microsoft Support
http://207.254.225.224:8080/new_black_scholes.php
define( "ITMAX",100);
define( "EPS",3.0e-7);
// If the submit button has been pressed
$StockPrice = $ExercisePrice = $RiskFreeRateInterest = $InstantaneousVarianceRateStocksReturn = "";
$TimetoExpirationOption = $ValueCallOption = $ValuePutOption = $DeltaCalls = $DeltaPuts = "";
if (isset($_POST['reset']))
{
$m_s = 100.;
$m_e = 100.;
$m_rf = .12;
$m_sigma = .1;
$m_time = 365.;
Black_Scholes_Main($m_s, $m_e, $m_rf, $m_sigma,$m_time, $m_c, $m_p, $m_deltacalls, $m_deltaputs);
$StockPrice = $m_s;
$ExercisePrice = $m_e;
$RiskFreeRateInterest = $m_rf;
$InstantaneousVarianceRateStocksReturn = $m_sigma;
$TimetoExpirationOption = $m_time;
$ValueCallOption = $m_c;
$ValuePutOption = $m_p;
$DeltaCalls = $m_deltacalls;
$DeltaPuts = $m_deltaputs;
}
elseif (isset($_POST['submit']))
{
$m_s = $_POST['StockPrice'];
$m_e = $_POST['ExercisePrice'];
$m_rf = $_POST['RiskFreeRateInterest'];
$m_sigma = $_POST['InstantaneousVarianceRateStocksReturn'];
$m_time = $_POST['TimetoExpirationOption'];
Black_Scholes_Main($m_s, $m_e, $m_rf, $m_sigma,$m_time, $m_c, $m_p, $m_deltacalls, $m_deltaputs);
$StockPrice = $m_s;
$ExercisePrice = $m_e;
$RiskFreeRateInterest = $m_rf;
$InstantaneousVarianceRateStocksReturn = $m_sigma;
$TimetoExpirationOption = $m_time;
$ValueCallOption = $m_c;
$ValuePutOption = $m_p;
$DeltaCalls = $m_deltacalls;
$DeltaPuts = $m_deltaputs;
}
function Black_Scholes_Main($m_s, $m_e, $m_rf, $m_sigma, $m_time, &$m_c, &$m_p, &$m_deltacalls, &$m_deltaputs) {
$m_c = black_scholes($m_s, $m_e, $m_rf, $m_sigma, $m_time/365., $nd1, $nd2);
$m_p = $m_e / pow(1.+$m_rf, $m_time/365.) - $m_s + $m_c;
$m_deltacalls = $nd1;
$m_deltaputs = $nd1 - 1.;
}
function black_scholes( $s, $e, $rf, $sigma, $time, &$nd1, &$nd2) {
$num = log($s/$e)+$time*($rf+.5*$sigma*$sigma);
$d1 = $num/($sigma*sqrt($time));
$d2 = $d1 - $sigma*sqrt($time);
$c = $s*myerf($d1) - $e * myerf($d2) * exp(-$rf*$time);
$nd1 = myerf($d1);
$nd2 = myerf($d2);
return $c;
}
function gammln($xx)
{
$cof=array(76.18009173,-86.50532033,24.01409822,
-1.231739516,0.120858003e-2,-0.536382e-5);
$x=$xx-1.0;
$tmp=$x+5.5;
$tmp -= ($x+0.5)*log($tmp);
$ser=1.0;
for ($j=0;$j<=5;$j++) {
$x += 1.0;
$ser += $cof[$j]/$x;
}
return -$tmp+log(2.50662827465*$ser);
}
function gser( &$gamser, $a, $x, &$gln)
{
$gln=gammln($a);
if ($x <= 0.0) {
if ($x < 0.0) echo "x less than 0 in routine GSER";
$gamser=0.0;
return;
} else {
$ap=$a;
$sum=1.0/$a;
$del=$sum;
for ($n=1;$n<=ITMAX;$n++) {
$ap += 1.0;
$del *= $x/$ap;
$sum += $del;
if (abs($del) < abs($sum)*EPS) {
$gamser=$sum*exp(-$x+$a*log($x)-($gln));
return;
}
}
echo "a=$a too large, ITMAX = $itmax too small in routine GSER
";
return;
}
}
function gcf( &$gammcf,$a,$x,&$gln)
{
$gold=0.0;
$fac=1.0;
$b1=1.0;
$b0=0.0;
$a0=1.0;
$gln=gammln($a);
$a1=$x;
for ($n=1;$n<=ITMAX;$n++) {
$an=(double) $n;
$ana=$an-$a;
$a0=($a1+$a0*$ana)*$fac;
$b0=($b1+$b0*$ana)*$fac;
$anf=$an*$fac;
$a1=$x*$a0+$anf*$a1;
$b1=$x*$b0+$anf*$b1;
if ($a1) {
$fac=1.0/$a1;
$g=$b1*$fac;
if (abs(($g-$gold)/$g) < EPS) {
$gammcf=exp(-$x+$a*log($x)-($gln))*$g;
return;
}
$gold=$g;
}
}
echo "a too large, ITMAX too small in routine GCF
";
}
function gammp($a,$x)
{
if ($x < 0.0 || $a <= 0.0) {
echo "Invalid arguments in routine GAMMP
";
return 0.;
}
if ($x < ($a+1.0)) {
gser($gamser,$a,$x,$gln);
return $gamser;
} else {
gcf($gammcf,$a,$x,$gln);
return 1.0-$gammcf;
}
}
function gammq($a,$x)
{
if ($x < 0.0 || $a <= 0.0) echo "Invalid arguments in routine GAMMQ
";
if ($x < ($a+1.0)) {
gser($gamser,$a,$x,$gln);
return 1.0-$gamser;
} else {
gcf($gammcf,$a,$x,$gln);
return $gammcf;
}
}
function erfc($x)
{
return $x < 0.0 ? 1.0+gammp(0.5,$x*$x) : gammq(0.5,$x*$x);
}
function erf($x)
{
return $x < 0.0 ? -gammp(0.5,$x*$x) : gammp(0.5,$x*$x);
}
function myerf($argin) {
return .5*(1.+erf($argin/sqrt(2.0)));
}
?>
--
PHP Windows Mailing List (http://www.php.net/)
To unsubscribe, visit: http://www.php.net/unsub.php