方案: 我试图让我的页面的一部分继续运行一个函数,当单击上面的按钮时,该函数会受到影响。 按钮调用主/常量函数内的函数;主($选择)。
这是我尝试过的。 的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可以直接跳转到新函数。
答案 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文件,您似乎根据输入的输入定义了功能。我建议不要这样做,但如果你的心脏已经确定就好了。
如果您需要更多帮助,请在此帖子中添加评论。
希望这有帮助。