影响函数的按钮 - PHP

时间:2017-01-09 00:11:55

标签: php function button

方案: 我试图让我的页面的一部分继续运行一个函数,当单击上面的按钮时,该函数会受到影响。 按钮调用主/常量函数内的函数;主($选择)。

这是我尝试过的。 的index.php:

<? session_start();
require("inc.ini.php");

?>
<!doctype html>
<html>
<head>
<link rel="stylesheet" type="text/css" href="styles.css">
<meta charset="utf-8">
<title>Buttons to funtions</title>
</head>

<body>
    <main>
        <header>
                <form method="post"  action="<?=$_SERVER['php_self']?>">
                    <button type="submit" name="change" value="insert, <?$selected = "func1";?>">Func 1</button>
                    <button type="submit" name="change" value="insert, <?$selected = "func2";?>">Func 2</button>
                </form>
        <!--
        I want to press a button and when it is pressed it calls the function selected and gives it the value of which the button represents.
        -->
        </header>
        <figure>
            <?
            if($_POST['change']){
                echo $selected;
                master($selected);
            }
            ?>
        </figure>
    </main>
</body>
</html>

inc.ini.php:

<? session_start();

function master($selected){
    if($selected == "func1"){
        function func1(){
            echo "func 1";
        }
    }
    if($selected == "func2"){
        function func2(){
            echo "func 2";
        }
    }
}
?>

另一个问题。我是否需要执行这些if语句,$ selector可以直接跳转到新函数。

1 个答案:

答案 0 :(得分:1)

Php是一种服务器端语言,这意味着需要将请求发送到服务器以使代码运行。

此外,当表单提交所有相关的子项时,也无法区分哪些已被点击。

话虽如此:

<?php
    session_start();
    require("inc.ini.php");
?>
<!doctype html>
<html>
<head>
<link rel="stylesheet" type="text/css" href="styles.css">
<meta charset="utf-8">
<title>Buttons to funtions</title>
</head>

<body>
    <main>
        <header>
                <form method="post"  action="<?=$_SERVER['php_self']?>">
                    <button type="submit" name="change" value="Func1">Func 1</button>
                </form>
                <form method="post"  action="<?=$_SERVER['php_self']?>">
                    <button type="submit" name="change" value="Func2">Func 2</button>
                </form>
        </header>
        <figure>
            <?php
                if (isset($_POST['change'])) {
                    echo $_POST['change'];
                    master($_POST['change']);
                }
            ?>
        </figure>
    </main>
</body>
</html>

如果您使用2个表单,则会获得相同名称的不同值。

查看您的inc.ini.php文件,您似乎根据输入的输入定义了功能。我建议不要这样做,但如果你的心脏已经确定就好了。

如果您需要更多帮助,请在此帖子中添加评论。

希望这有帮助。