1

php / mysql Select クエリ内でグローバル変数を機能させるのに問題があります。

現時点でのコードは次のとおりです。データベースから値を返しません。

<HTML>
<HEAD>
<SCRIPT type="text/javascript">
window.onload = function()
{
    document.getElementById('wall').innerHTML="<?php zoomLevelOne();?>";
}
</SCRIPT>
<?php
$startBrick = rand (1, 4);
function zoomLevelOne()
{
    global $startBrick;
    $brickNo = rand (1, 4);
    $con = mysql_connect("localhost","root","password");
    if(!$con){die('Could not connect: ' . mysql_error());}
    mysql_select_db("wall", $con);
    $result = mysql_query("SELECT * FROM bricks WHERE BrickNo=$startBrick");
    $brick = mysql_fetch_array($result);
    mysql_close($con);
    echo $brick['year'];
}
?>
</HEAD>
<BODY>
<DIV id='wall'>
</DIV>
</BODY>
</HTML>

選択クエリの末尾を次のように変更すると:

WHERE BrickNo=$brickNo");

したがって、コード全体は次のとおりです。

<HTML>
<HEAD>
<SCRIPT type="text/javascript">
window.onload = function()
{
    document.getElementById('wall').innerHTML="<?php zoomLevelOne();?>";
}
</SCRIPT>
<?php
$startBrick = rand (1, 4);
function zoomLevelOne()
{
    global $startBrick;
    $brickNo = rand (1, 4);
    $con = mysql_connect("localhost","root","password");
    if(!$con){die('Could not connect: ' . mysql_error());}
    mysql_select_db("wall", $con);
    $result = mysql_query("SELECT * FROM bricks WHERE BrickNo=$brickNo");
    $brick = mysql_fetch_array($result);
    mysql_close($con);
    echo $brick['year'];
}
?>
</HEAD>
<BODY>
<DIV id='wall'>
</DIV>
</BODY>
</HTML>

私がしているのはローカル変数をグローバル変数に変更することだけなので、私には正しいように思えますが、うまくいかないので、何か間違っているか、コーディングが不十分である可能性があります。

誰でも私を助けることができますか?

4

1 に答える 1