Dar*_*ria 7 php forms action function
我是网络技术的绝对初学者.我知道我的问题很简单,但我不知道怎么做.例如,我有一个功能:
function addNumbers($firstNumber, $secondNumber)
{
echo $firstNumber + $secondNumber;
}
Run Code Online (Sandbox Code Playgroud)
我有一个表格:
<form action="" method="post">
<p>1-st number: <input type="text" name="number1" /></p>
<p>2-nd number: <input type="text" name="number2" /></p>
<p><input type="submit"/></p>
Run Code Online (Sandbox Code Playgroud)
如何在我的文本字段中输入变量并通过按下按钮并按下我写入文本字段的参数来调用我的函数?例如,我写了5 - 第一个文本字段,10秒文本字段,然后我点击按钮,我在同一页面上得到结果15. 编辑 我试过这样做:
$num1 = $POST['number1'];
$num2 = $POST['number2'];
addNumbers($num1, $num2);
Run Code Online (Sandbox Code Playgroud)
但它不起作用,答案总是0.
Nic*_*ole 18
您拥有的"功能"是服务器端.服务器端代码在数据返回到浏览器之前和之后运行(通常显示为页面,但也可能是ajax请求).
您拥有的表单是客户端.此表单由您的浏览器呈现,并且不与您的服务器"连接",但可以将数据提交给服务器进行处理.
因此,要运行该功能,必须执行以下流程:
完成所有这些的示例PHP脚本:
<?php
function addNumbers($firstNumber, $secondNumber) {
return $firstNumber + $secondNumber;
}
if (isset($_POST['number1']) && isset($_POST['number2'])) {
$result = addNumbers(intval($_POST['number1']), intval($_POST['number2']));
}
?>
<html>
<body>
<?php if (isset($result)) { ?>
<h1> Result: <?php echo $result ?></h1>
<?php } ?>
<form action="" method="post">
<p>1-st number: <input type="text" name="number1" /></p>
<p>2-nd number: <input type="text" name="number2" /></p>
<p><input type="submit"/></p>
</body>
</html>
Run Code Online (Sandbox Code Playgroud)
请注意:
<?php ... ?>内容都由服务器执行(在这种情况下,echo创建此执行的唯一输出),而PHP标记之外的所有内容 - 特别是HTML代码 - 直接输出到HTTP响应.<h1>Result:...HTML代码在 PHP if语句中.这意味着第一次传递时不会输出该行,因为没有$result.action没有值,因此表单将提交到浏览器已在其上的同一页面(URL).尝试这个。
<?php
function addNumbers($firstNumber, $secondNumber)
{
if (isset($_POST['number1']) && isset($_POST['number2']))
{
$firstNumber = $_POST['number1'];
$secondNumber = $_POST['number2'];
$result = $firstNumber + $secondNumber;
echo $result;
}
}
?>
<form action="urphpfilename.php" method="post">
<p>1-st number: <input type="text" name="number1" /></p>
<p>2-nd number: <input type="text" name="number2" /></p>
<?php addNumbers($firstNumber, $secondNumber);?>
<p><?php echo $result; ?></p>
<p><input type="submit"/></p>
Run Code Online (Sandbox Code Playgroud)