-1

我在计算器的 div 中显示输入时遇到问题。它不显示任何内容。我究竟做错了什么?我对PHP很陌生,所以请尽可能多地解释,以便我可以从中学习。如果可能,那么该变量应该不断刷新,使其始终是最新的输入。这是我的代码,问题可以在代码的PHP部分找到:

HTML:

<!DOCTYPE HTML>
<html>
    <head>
        <title>Calculator</title>

        <link rel="stylesheet" type="text/css" href="stylesheet.css">


        <script src="http://code.jquery.com/jquery-2.0.2.min.js"></script>
        <script src="http://code.jquery.com/color/jquery.color.plus-names-2.1.2.min.js"></script>
        <script src="http://code.jquery.com/ui/1.10.3/jquery-ui.js"></script>       
        <script src="http://ricostacruz.com/jquery.transit/jquery.transit.min.js"></script>
        <script type="text/javascript" src="script.js"></script>

    </head>

    <body>
        <div id="device">

            <div class="row">
                <div id="C" class="button">
                    C
                </div>

                <div id="MCR" class="button">
                    MCR
                </div>

                <div id="M+" class="button">
                    M+
                </div>

                <div id="M-" class="button">
                    M-
                </div>
            </div>

            <div class="row">
                <div id="7" class="button" >
                    7
                </div>

                <div id="4" class="button">
                    4
                </div>

                <div id="1" class="button">
                    1
                </div>

                <div id="0" class="button">
                    0
                </div>
            </div>

            <div class="row">
                <div id="8" class="button">
                    8
                </div>

                <div id="5" class="button">
                    5
                </div>

                <div id="2" class="button">
                    2
                </div>

                <div id="." class="button">
                    .
                </div>
            </div>

            <div class="row">
                <div id="9" class="button">
                    9
                </div>

                <div id="6" class="button">
                    6
                </div>

                <div id="3" class="button">
                    3
                </div>

                <div id="=" class="button">
                    =
                </div>
            </div>

            <div class="row">
                <div id="+" class="button">
                    +   
                </div>

                <div id="-" class="button">
                    -
                </div>

                <div id="x" class="button">
                    x
                </div>

                <div id="/" class="button">
                    /
                </div>

                <div id="display">
                        <?php 
                            var $input = "0";

                            function showInput()    {
                                echo $input;
                            };

                            while () {
                                showInput();
                            };
                        ?>
                </div>
            </div>
        </div>
    </body>
</html>

CSS:

body, html {
    height: 100%;
    width: 100%;
    padding: 0;
    margin: 0;
}

#device {
    width: 450px;
    height: 400px;
    background-color: #AB988B;
    margin: 150px;
    margin-top: 50px;
    padding: 30px;
    border-radius: 25px;
    border: solid 10px #B06A3B;
    padding-top: 100px;
}

#display    {
    width: 450px;
    height: 75px;
    background-color: #D4E7ED;
    margin: auto;
    border-radius: 5px;
    margin-bottom: 30px;
    top: 80px;
    left: 190px;
    position: absolute;
    color:  #B06A3B;
    font-size: 25px;
    line-height: 75px;
}

.button {
    width: 65px;
    height: 75px;
    background-color: #7195A3;
    border: solid 2px #EB8540;
    color:  #B06A3B;
    font-size: 25px;
    line-height: 75px;
    margin-top: 15px;
    margin-right: 17.5px;
    text-align: center;
    font-weight: 900;
    font-family: arial;
    -webkit-user-select: none;
    -khtml-user-select: none;
    -moz-user-select: none;
    -o-user-select: none;
    user-select: none; 
    cursor: pointer;
}

.row    {
    display: inline-block;
}

jsFiddle:

http://jsfiddle.net/D9gWF/

4

5 回答 5

0

对于 PHP,您需要一个 php 环境,如 apache 和 php(对于初学者:使用“xampp”)

该文件通常需要以文件结尾的 .php ,因此服务器端解析器可以解析文件中的 php 代码。

于 2013-07-29T12:58:56.963 回答
0
 <?php 
      $input = "0";

      function showInput($input)    {
          echo $input;
      };

      while () {
          showInput($input);
     };
 ?>

var在 PHP 中声明变量时不要使用。只是$。并了解“范围”。您试图在函数中使用您在函数外部声明的变量。这是行不通的。所以在我的代码中,我将该变量作为要在函数内部使用的参数传递。

我给了你很多关键词和一个基本的解释,让你做更多的挖掘。

编辑:而且我认为那个while循环不会做任何事情。虽然什么?这些括号内需要有一些东西。你在循环什么?

于 2013-07-29T13:05:01.093 回答
0

在这里,我从您的代码中获取了片段。

        <div id="display">
                <?php 
                    var $input = "0";

                    function showInput()    {
                        echo $input;
                    };

                    while () {
                        showInput();
                    };
                ?>
        </div>

只需在下面用我的代码更改您的代码。

            <div id="display">
                    <?php 
                        $input = "0";
                        echo $input;
                    ?>
            </div>

让我解释一下。

$input = "0";

上面一行只是初始化我们输入变量的值,你可以用你喜欢的任何值更改 0。

echo $input;

这将在上面的 PHP 代码的第一行中回显保存在我们输入变量中的值。如果您声明了另一个变量,您也可以回显,只需在 $ 符号后更改变量名。$ 符号让 PHP 知道它的变量名正在启动。

于 2013-07-29T13:12:43.400 回答
0

将这些部分更正为这些部分,您的代码将起作用

            <div class="row">
            <div id="9" class="button">
                9
            </div>

            <div id="6" class="button">
                6
            </div>

            <div id="3" class="button">
                3
            </div>

            <div id="equal" class="button">
                =
            </div>
        </div>

        <div class="row">
            <div id="plus" class="button">
                +   
            </div>

            <div id="minus" class="button">
                -
            </div>

            <div id="multiply" class="button">
                x
            </div>

            <div id="divide" class="button">
                /
            </div>

            <div id="display">
                <?php

                function showInput() {
                    $input = "0";

                    echo $input;
                }
               ?>
            </div>
        </div>
于 2013-07-29T13:14:46.980 回答
0

您尚未在while循环中设置参数。While究竟是什么?您还需要查找变量范围。函数不能访问不包含在函数中的变量,在这种情况下将它们解析。例如

<?php
    $input = "0";

    function showInput($input)
    {
        echo $input;
    };

    showInput($input);

?>

这是您的代码与我的编辑一起使用的示例http://phpfiddle.org/main/code/1nh-wda

于 2013-07-29T13:21:26.063 回答