0

私はオンライン見積もりシステムに (ゼロから) 取り組んでいますが、PHP フッターの何かが原因で例外が発生しています。

ユーザーが [送信] をクリックすると、次の図のように SQL データベースへの呼び出しのブロックがコメント アウトされている場合にのみ、MMJS/MPJS/DPJS ドキュメント (以下のコードの末尾付近) 内の関数への呼び出しが実行されます。そうしないと、それらのドキュメントの関数が未定義であるという例外が発生します。

このコード ブロックにより、後で呼び出されるドキュメント内の関数にアクセスできなくなるのはなぜですか?

コード:

        <div id="results"></div>

        </div><!-- #wrapper -->

        <script src="//ajax.googleapis.com/ajax/libs/jquery/1.9.0/jquery.min.js"></script>
        <script>window.jQuery || document.write('<script src="<?PHP echo $relpath; ?>js/vendor/jquery-1.9.0.min.js"><\/script>')</script>
        <script src="<?PHP echo $relpath; ?>js/plugins.js"></script>
        <script src="<?PHP echo $relpath; ?>js/main.js"></script>

        // <script type="text/javascript">
            // <?PHP
                // $stmt = $mysqli->prepare("SELECT * FROM `Fixed Quoter Prices` WHERE 1");
                // $stmt->bind_result($db_DPbaseRate, $db_MPbaseRate, $db_MMbaseRate, $db_raidRate, $db_boxRate, $db_metaRate, $db_sanRate,$db_hbaRate, $db_twoTB, $db_threeTB, $db_fourTB, $db_switchUpgrade, $db_tenRate, $db_taxRate);
                // $stmt->execute();
                // $stmt->fetch();

                // echo "var DPbaseRate = $db_DPbaseRate;";
                // echo "var MPbaseRate = $db_MPbaseRate;";
                // echo "var MMbaseRate = $db_MMbaseRate;";
                // echo "var raidRate = $db_raidRate;";
                // echo "var boxRate = $db_boxRate;";
                // echo "var metaRate = $db_metaRate;";
                // echo "var sanRate = $db_sanRate;";
                // echo "var hbaRate = $db_hbaRate;";
                // echo "var twoTB = $db_twoTB;";
                // echo "var threeTB = $db_threeTB;";
                // echo "var fourTB = $db_fourTB;";
                // echo "var switchUpgrade = $db_switchUpgrade;";
                // echo "var tenRate = $db_tenRate;";
                // echo "var taxRate = $db_taxRate;";
            // ?>

        // </script>

        <?PHP if($title == 'Media Master') : ?>
        <script type="text/javascript" src="../js/MMJS.js"></script>
        <?PHP elseif($title == 'Media Pro') : ?>
        <script type="text/javascript" src="../js/MPJS.js"></script>
        <?PHP elseif($title == 'Desk Pro') : ?>
        <script type="text/javascript" src="../js/DPJS.js"></script>
        <?PHP endif; ?>

    </body>
</html>
4

1 に答える 1

0

理解した!最初の SQL データベース接続を忘れました。

blockquote に行を追加して内部スクリプトを修正しました。

<script type="text/javascript">
            <?PHP

$mysqli = new mysqli('12.34.56.78','someuser','somepass','foo');

                $stmt = $mysqli->prepare("SELECT * FROM `Fixed Quoter Prices` WHERE 1");
                $stmt->bind_result($db_DPbaseRate, $db_MPbaseRate, $db_MMbaseRate, $db_raidRate, $db_boxRate, $db_metaRate, $db_sanRate,$db_hbaRate, $db_twoTB, $db_threeTB, $db_fourTB, $db_switchUpgrade, $db_tenRate, $db_taxRate);
                $stmt->execute();
                $stmt->fetch();

                echo "var DPbaseRate = $db_DPbaseRate;";
                echo "var MPbaseRate = $db_MPbaseRate;";
                echo "var MMbaseRate = $db_MMbaseRate;";
                echo "var raidRate = $db_raidRate;";
                echo "var boxRate = $db_boxRate;";
                echo "var metaRate = $db_metaRate;";
                echo "var sanRate = $db_sanRate;";
                echo "var hbaRate = $db_hbaRate;";
                echo "var twoTB = $db_twoTB;";
                echo "var threeTB = $db_threeTB;";
                echo "var fourTB = $db_fourTB;";
                echo "var switchUpgrade = $db_switchUpgrade;";
                echo "var tenRate = $db_tenRate;";
                echo "var taxRate = $db_taxRate;";
            ?>
        </script>
于 2013-03-31T00:22:21.420 に答える