2013-05-27 36 views
0

我有通过数组检索表,现在我想显示该数组在其他表中的用户输入的基础上,如果用户输入2,那么只有2类型的表将出现以及如果用户输入3三表3使用计算数据显示如何通过循环传递动态数组的范围?

表检索的代码

<?php 
include('config.php'); 
$sa="select * from table1 where c13='$d'"; 
$result=mysql_query($sa) or die(mysql_error()); 
echo "<table border='1'> 
<tr> 

</tr>"; 


$row_count=0; 
while($row = mysql_fetch_array($result)) 
{ 
    echo $row['c1']; 
    echo $row['c2']; 
    echo $row['c3']; 
    echo $row['c4']; 
$a[]=$row['c1']; 
     $b[]=$row['c2']; 
      $c[]=$row['c3']; 
      $d[]=$row['c4']; 
$m[]=round(($row['c1']/$row['c4']),2); 
       $n[]=round(($row['c2']/$row['c4']),2); 
       $o[]=round(($row['c3']/$row['c4']),2); 
$row_count++; 
} 
echo "Measuring table"; 
for($i=0;$i<$row_count;$i++) 
{ // do the exploding, the imploding, the row echoing for each row// 
echo "<table border='1' align='center'> 
<tr> 
<th>Inputs</th> 
<th>A</th> 
<th>B</th> 
<th>C</th> 
</tr>"; 
    echo "<tr>"; 

    $f=implode($m,','); 
    $r=explode(',',$f); 
    print_r($f); 
    $f1=implode($n,','); 
    $r1=explode(',',$f1); 
    print_r($f1); 
    $f2=implode($o,','); 
    $r2=explode(',',$f2); 
    print_r($f2); 
echo "<td>" ."W". "</td>"; 
echo "<td>".$r['0']. "</td>"; 

echo "</tr>"; 
echo "<td>" ."N". "</td>"; 
echo "<td>".$r1['$i']. "</td>"; 

echo "</tr>"; 
echo "<td>" ."D"."</td>"; 
echo "<td>".$r2['$i']. "</td>"; 

echo "</tr>"; 
echo "<td>" ."W". "</td>"; 
echo "<td>".$r['$i']. "</td>"; 

echo "</tr>"; 
echo "<td>" ."N". "</td>"; 
echo "<td>".$r1['$i']. "</td>"; 

echo "</tr>"; 
echo "<td>" ."D"."</td>"; 
echo "<td>".$r2['$i']. "</td>"; 

echo "</tr>"; 
</tables> 

代替提数组索引明确地它应该是显示动态 结果这样

c13=2(user enter value) 
row1 2 3 4 
row2 4 6 7 

检索后

 a  
w  2 
n  3 
d  4 // this is of index 0// 
w  4 
n  6 
d  7 // this is of index 1// 

如果现在用户输入3,3行将在数据库中。

检索后

w 
n 
d 
w 
n 
d 
w 
n 
d 

我怎样才能做到这一点动态?

我希望测量表显示动态基于用户输入。请帮助我

+10

[**请不要在新代码中使用'mysql_ *'函数**](http://bit.ly/phpmsql)。他们不再被维护[并且被正式弃用](http://j.mp/XqV7Lp)。看到[**红框**](http://j.mp/Te9zIL)?学习[*准备的语句*](http://j.mp/T9hLWi),并使用[PDO](http://php.net/pdo)或[MySQLi](http://php.net/ mysqli) - [这篇文章](http://j.mp/QEx8IB)将帮助你决定哪个。如果你选择PDO,[这里是一个很好的教程](http://j.mp/PoWehJ)。 –

+0

好吧,先生,我会definetaly改变?你可以提供帮助关于我的问题 – user2421659

回答

1

在starging正在检索行的while循环之前,请声明一个计数器变量。

$row_count = 0; 
while { 
    // loop here 
    $row_count++; 
} 

由行检索结束,$ ROW_COUNT将举行的...好行数

**编辑** 要正确呼应测量表中,U应在构造代码for循环

echo "Measuring table"; 
echo "<table border='1' align='center'> 
<tr> 
<th>Inputs</th> 
<th>A</th> 
<th>B</th> 
<th>C</th> 
</tr>"; 
for($i=0;$i<$row_count;$i++) { 
    echo "<tr>"; 
    $f=implode($m,','); 
    $r=explode(',',$f); 
    print_r($f); 
    $f1=implode($n,','); 
    $r1=explode(',',$f1); 
    print_r($f1); 
    $f2=implode($o,','); 
    $r2=explode(',',$f2); 
    print_r($f2); 
    echo "<td>" ."W". "</td>"; 
    echo "<td>".$r[$i]. "</td>"; 

    echo "</tr>"; 
    echo "<td>" ."N". "</td>"; 
    echo "<td>".$r1[$i]. "</td>"; 

    echo "</tr>"; 
    echo "<td>" ."D"."</td>"; 
    echo "<td>".$r2[$i]. "</td>"; 

    echo "</tr>"; 
} 
+0

然后先生我怎么用表“测量表” – user2421659

+0

下一步将构造测量表回声代码,例如在for循环内。 '对于($ i = 0; $ i <$ row_count; $ i ++){//做爆炸,内爆,每行回显}} –

+0

我不确定你真的想用你的代码实现什么,但是我对我的帖子所做的编辑可能会对你有所帮助。修改它以适应您的需求。 –