Re: there must be better way to handle "Null" undefined variables

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



YES! I am working on another php script to connect to MS SQL Server!

I need all the clues I can get to get it working!

Great clues searching php.net site!

Meanwhile I get the hokey error in my boxes

I did fix the problem but my code is gloating!





--- On Mon, 12/8/08, justin <justin@xxxxxxxxxxxx> wrote:

> From: justin <justin@xxxxxxxxxxxx>
> Subject: Re:  there must be better way to handle "Null" undefined variables
> To: fredsilsbee@xxxxxxxxx
> Cc: php-windows@xxxxxxxxxxxxx
> Date: Monday, December 8, 2008, 5:00 PM
> This is more a matter of a php.ini setting.  Check the
> values of 
> error_reporting in both your php.ini on the Windows and
> Linux boxes.   
> My guess is your windows value is E_ALL.
> 
> -Justin
> 
> Fred Silsbee wrote:
> > Problem with the code below
> >
> > Works perfectly under Linux Fedora 9 however
> >
> > Under windows, the first page has an error <br
> /><b>Notice</b>:  Undefined variable:
> ExercisePrice in
> <b>C:\Inetpub\wwwroot\new_black_scholes.php</b>
> on line <b>198</b><br />
> >
> > stuck in the entry slot for every variable.
> >
> > I did correct the first slot with some PHP code!
> >
> > Is there a better way?
> >
> >
> > <?php
> > define( "ITMAX",100);
> > define( "EPS",3.0e-7);
> >     // If the submit button has been pressed
> >     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<br />";
> >                 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<br />";
> > }
> > function gammp($a,$x)
> > {
> >
> >         if ($x < 0.0 || $a <= 0.0) {
> >                 echo "Invalid arguments in
> routine GAMMP<br />";
> >                 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<br />";
> >         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)));
> > }
> >
> > ?>
> >
> > <form action="new_black_scholes.php"
> method="post">
> >     <p>
> >         Black Scholes Option Price Calculator:<br
> />
> >             temp website under Redhat Fedora 9
> Linux:<br />
> >             the first 5 boxes require input(try 100.
> 100. .12 .1 365.):<br />
> >     </p>
> >     <p>
> >         StockPrice (required):<br />
> >         <input type="text"
> size="20" maxlength="40"
> name="StockPrice"
> >         value="<?php
> >     if (IsSet($StockPrice))
> >     {
> >         echo $StockPrice;
> >     }
> >     else
> >     {
> >         echo " ";
> >     }
> >     ?>" />
> >     </p>
> >     <p>
> >         ExercisePrice (required):<br />
> >         <input type="text"
> size="20" maxlength="40"
> name="ExercisePrice"
> >         value="<?php echo $ExercisePrice;
> ?>" />
> > </p>
> >     <p>
> >         Risk Free Rate of Interest(required):<br
> />
> >         <input type="text"
> size="20" maxlength="40"
> name="RiskFreeRateInterest"
> >         value="<?php echo
> $RiskFreeRateInterest; ?>" />
> >     </p>
> >     <p>
> >         Instantaneous Variance Rate of Stock's
> Return (required):<br />
> >         <input type="text"
> size="20" maxlength="40"
> name="InstantaneousVarianceRateStocksReturn"
> >         value="<?php echo
> $InstantaneousVarianceRateStocksReturn; ?>" />
> > </p>
> >     <p>
> >         Time to Expiration of the Option(days)
> (required):<br />
> >         <input type="text"
> size="20" maxlength="40"
> name="TimetoExpirationOption"
> >         value="<?php echo
> $TimetoExpirationOption; ?>" />
> > </p>
> >     <p>
> >         Values of the Call Option :<br />
> >         <input type="text"
> size="20" maxlength="40" 
> name="ValueCallOption"
> >             VALUE="<?php echo
> $ValueCallOption; ?>" />
> > </p>
> > </p>
> >     <p>
> >         Values of the Put option :<br />
> >         <input type="text"
> size="20" maxlength="40" 
> name="ValuePutOption"
> >             VALUE="<?php echo $ValuePutOption;
> ?>" />
> > </p>
> >     <p>
> >         Delta(calls):<br />
> >         <input type="text"
> size="20" maxlength="40" 
> name="DeltaCalls"
> >             VALUE="<?php echo $DeltaCalls;
> ?>" />
> > </p>
> >     <p>
> >         Delta(puts):<br />
> >         <input type="text"
> size="20" maxlength="40" 
> name="DeltaPuts"
> >             VALUE="<?php echo $DeltaPuts;
> ?>" />
> > </p>
> >     <button type="submit" name =
> "submit" value="Calculate!"
> >     style="color:maroon font:18pt Courier;
> font-weight:bold ">Calculate
> >     </button>
> >     <button type="submit" name =
> "reset" value="Demo!"
> >     style="color:red font:18pt Courier;
> font-weight:bold ">Demo
> >     </button>
> > </form>
> >
> >
> >
> >
> >
> >       
> >
> >
> >


      


-- 
PHP Windows Mailing List (http://www.php.net/)
To unsubscribe, visit: http://www.php.net/unsub.php


[Index of Archives]     [PHP Home]     [PHP Users]     [PHP Database Programming]     [PHP Install]     [Kernel Newbies]     [Yosemite Forum]     [PHP Books]

  Powered by Linux