2010-12-20 96 views
0

是否有可能使用php来计算一些东西,并使用jquery获取计算出的 值并将其显示回网页而无需提交表单。 我真的很难用客户端来计算使用数组的东西。所以我想让PHP做计算。如何连接php和jquery

    <input type="hidden" name=ids[] value="<?php $id; ?>"> 
        <input type="hidden" name=qoh[] value="<?php $qtyhand; ?>"> 

        <input type="hidden" name=dprice[] value="<?php $dsprice; ?>"> 
        <input type="hidden" name=sprice[] value="<?php $ssprice; ?>"> 

        <td>$qtyhand</td>"; 
        <td><input type="text" name=qbuys[] value="<?php echo $ssprice; ?>"></td> 
        <td><?php $ssprice; ?></td>"; 
        <td><input type="text" name=disc[] value=""></td> 


        <td><input type="text" name=subtot[] value=""></td> 

这里是一个应该被用于计算的PHP文件。

<?php 
    $ctbill=0; 
    foreach ($_GET['ids'] as $k => $v) { 
     $id = (int)$v; 
     $qtyhnd = (int)$_GET['qoh'][$k]; 
     $qtytbuy = (int)$_GET['qbuys'][$k]; 
     $left = $qtyhnd - $qtytbuy; 



     $sellprice=(double)$_GET['sprice'][$k]; 
     $dealerprice=(double)$_GET['dprice'][$k]; 

     $finalvalue=.01; 
     $dis=(double)$_GET['disc'][$k]; 




     $stotal=(double)$qtytbuy * $sellprice; 
     $cdizval=(double)$stotal * $dis * $finalvalue; 
     $cdstotal=$stotal-$cdizval; 

     $ctbill=(double)$ctbill + $cdstotal; 






     $dizval=$dis * $finalvalue; 
     $preprof=(($sellprice * $qtytbuy)-($dealerprice*$qtytbuy)) * $dizval; 
     $profit=(($sellprice * $qtytbuy)-($dealerprice*$qtytbuy)) - $preprof; 

    ?> 

你能给我如何做到这一点的想法。

+0

添加了Ajax标记。 – 2010-12-20 06:16:30

回答

1

加载本身通常很简单

$("#output").load("compute.php?ids[]=1111&ids[]=2222"); 

你的情况的复杂性是从表单字段组装各种URL参数。通常你可以传递一个简单的Javascript数组/散列作为数据参数。但JS数组和缺省的jQuery .load处理程序不适用于您拥有的重复PHP样式的var[]字段名称。

最好的办法是建立一个循环,并手动执行,我认为。 (但可能有插件,所以请尝试Google和jQuery插件库。)

1

使用Ajax和回调设置这些值。

jQuery的ajax函数包括$ .get,$ .post,$ .load,$ .ajax。你可能应该使用POST bc来传递你的参数,看起来你想传递一些数组,而GET不适合这种情况。该PHP文件应该回显你需要的东西,并根据其复杂性,你可能希望它是JSON使用JSONencode而不是一个普通的字符串。

$.post('/url.php', {data1: 'literal', data2: variable, ....}, function($x){--display==}); 

url.php是处理它
第二个参数是encoming数据
第三个参数是一个回调函数,以$ x是什么url.php回声

http://api.jquery.com/category/ajax/
http://www.visualjquery.com PHP文件