0

これは単純に聞こえるかもしれませんが、おそらく私が見逃しているものだと思いますが、ここで何が起こっていますか. 除算してから別の変数で乗算する必要がある 2 つの変数があります。分割された 2 つの変数は完全に出てきますが、その合計に次の変数を掛けると、ひどく間違った結果になります (少なくとも私には)。

$horiFOV = 20;
$distObj = 35;

$sensorWidth = mysql_query("SELECT camlist.width FROM camlist WHERE camlist.camera = '$camSelect'");

$lensCalc = $distObj / $horiFOV;
$lensCalcA = $lensCalc * $sensorWidth;

このように分割して、それぞれの結果を反映できるようにしました。また、mysql クエリの結果は 4.80 ですが、これらすべての結果は 12.25 になり、8.4 のようになるはずです。

これはすべて、私が Web 上で再作成している Excel スプレッドシートに基づいていることに注意してください。

4

3 に答える 3

0
$result = mysql_query("SELECT camlist.width FROM camlist WHERE camlist.camera = '$camSelect'");
$row=mysql_fetch_array($result);
$sensorWidth=floatval($row["width"]);//as mbsurfer suggested

$lensCalc = $distObj / $horiFOV;
$lensCalcA = $lensCalc * $sensorWidth;

そして、将来使用しないでください。mysql_*それらは減価償却され、メンテナンスもサポートもされていません。代わりに、2 つの代替拡張機能がありますpdo。詳細mysqli: http://news.php.net/php.internals/53799

于 2013-04-25T20:14:44.027 に答える