客户端代码名称类似calc.php
<html>
<head>
</head>
</body>
<form action="TESTC.php" method="POST">
<input type="text" name="num1">
<select name="operator">
<option value="+">+</option>
<option value="-">-</option>
<option value="*">*</option>
<option value="/">/</option>
</select>
<input type="text" name="num2">
<input type="submit">
</form>
</body>
</html>
运行php代码的服务器端是TESTC.php
<?php
if(isset($_POST['num1']) && isset($_POST['num2']) && isset($_POST['operator'])) {
$num1 = $_POST['num1'];
$num2 = $_POST['num2'];
$operator = $_POST['operator'];
if (!empty($num1) && !empty ($num2) && !empty($operator)) {
echo 'ok';
} else {
echo 'Fill in all fields. ';
}
}
if ($operator=='+'){
echo $num1."+".$num2."=<b>".($num1+$num2)."</b>";
}
if ($operator=='-'){
echo $num1."-".$num2."=<b>".($num1-$num2)."</b>";
}
if ($operator=='/'){
echo $num1."/".$num2."=<b>".($num1/$num2)."</b>";
}
if ($operator=='*'){
echo $num1."*".$num2."=<b>".($num1*$num2)."</b>";
}
?>
我已经完成了这项工作,但我只能在服务器端输出这段代码。我不正确地理解如何在客户端页面"newCalc.php"上输出num1和num2中的两个表单的输出。有人能解释一下,一旦表单提交,我如何在一个页面上输出它,而不是向TESTC.php射击?我可以使用html代码和php在一个页面上获得html表单和php计算器代码。有人能帮忙吗?谢谢。
对不起,这正是你必须做的。
php不是客户端服务。如果您想在不向服务器发布和呈现新页面的情况下更新html,则需要javascript。
示例:
// form_template.php
<html><!-- show your form on this page -->
<form action="calc.php">
<?php if ($result) echo $result; ?>
// calc.php
<?php // get your POST stuff
$result = $whatever;
require_once('form_template.php');
// form.php
<?php // Do defaults here
$result = false;
require_once('form_template.php');
很抱歉地告诉您,但这不是它的工作方式,您应该做的是向php脚本发送一个ajax请求,更新将返回您查询和回复的答案。一开始可能看起来很难,但ajax可能是我学过的最有用的"语言"。尽管我非常讨厌w3schools.com
,但他们确实有一个关于ajax及其与PHP关系的非常好的教程,你可以在这里找到它