0

我的 php 代码中有一个表格。在表格的第二列,通常会显示“---”,点击提交按钮后,会在同一页面显示计算结果。

例如,

<table>
<tr><td>1</td><td>---</td></tr>
<tr><td>2</td><td>---</td></tr>
<tr><td>3</td><td>---</td></tr>
</table>

并且在同一页面中,它应该接收变量

$var1 = $_POST['variable1'];

我不确定使用哪种方式,ajax 或 javascript 或只是 css?

你有什么想法?

谢谢

4

2 回答 2

1

如果你想在客户端使用计算,你可以使用Javascript,如果你想在服务器端使用PHP。从你的问题我猜你想要它在服务器端。

只需将表单提交到同一页面:action = "your_page.php". 测试页面是否通过您的表单提交,然后显示结果(包含结果的表格),当然,在您计算之后。否则像现在一样显示页面。

使用 JavaScript,您可以在通过 JavaScript 计算结果后,使用 DOM 选择您想要结果的确切 td 并在那里显示它们。

第三种选择..ajax,优点是可以实时计算结果(无需按下提交按钮)。

在使用其中一种方法之前,您必须确定您想要什么,每种方法都有一些优点和一些缺点。

于 2010-06-01T09:04:44.490 回答
0

你可以只用 php 和 css 来实现这一点,但 ajax 会让它变得光滑。我会使用 JSON 将数据从 .js 解析到 .php 并返回。jQuery 让这变得非常简单(使用$.post

$(document).ready(function() {
$.post('calculate.php', { value: $('td') }, //posts value to php
 function(data) {
  if(data.success) {
   alert(data.result); //gets the value $result from php
  }
 else {
  alert('error');
 }
}, 'json');
});

这会将 td 的值发布到 calculate.php,它可以计算并回显 JSON 数据

$value = $_POST['value'];//assign value from js to $value
.....
$data['success'] = true; //there was no error
$data['result'] = $result; //where $result is calculated within php
echo json_encode($data);

您可以在 js 和 php 文件之间传递尽可能多的变量。你甚至可以动画你的结果。

这些链接可能会有所帮助

http://davidwalsh.name/animated-ajax-jquery

http://www.9lessons.info/2009/08/jquery-and-ajax-best-demos-part-3.html

http://www.noupe.com/ajax/30-fresh-ajax-tutorials-and-techniques.html

于 2010-06-01T09:19:16.437 回答