使用PHP从HTML中检索变量变量

时间:2015-01-28 12:05:29

标签: php html

我正在创建一个创建大型Excel数据库的HTML页面,并为用户提供搜索和显示过滤某些参数的内容的选项。这到目前为止工作得很好,但是现在我正在尝试添加选项以根据用户输入更改Excel页面中生成的文本框的用户输入来更新excel数据库。当我的php生成文本框时,我生成了文本框的名称,作为从中提取数据的单元格的名称。现在,当我试图从html文本框中提取已更改的数据时,我想使用$ _GET [$ cell],cell是php中的变量,它在循环中运行以生成每个单元格或相应的标记html文本框的名称。我知道这不可能这样做,这就是我寻找替代方案的原因。有任何想法吗? - 谢谢你

<html>
<head>
<meta http-equiv="Content-Type" content="text/html"; charset=ISO-8859-1">
                                                                        
                                                                    
   <button type ="submit" name="Submit" value="Revise" onclick="f1.action='Revise.php';return true;"> Revise </button>
                                                                                                    
                                                                                                    
<iframe width="4000" height="2000000" name="myiframe" src="Revise.php" method = "get"


	
	
		<tr>
	<td> <input type ='text' value= 'DLWR' name'C3'/></td><td> <input type ='text' value= 'DLWR' name'D3'/></td><td> <input type ='text' value= '2003' name'E3'/></td><td> <input type ='text' value= 'NS  ' name'F3'/></td><td> <input type ='text' value= 'NS  ' name'G3'/></td><td> <input type ='text' value= 'MTH' name'H3'/></td><td> <input type ='text' value= 'S ' name'I3'/></td><td> <input type ='text' value= '0' name'N3'/></td><td> <input type ='text' value= 'NS  ' name'O3'/></td><td> <input type ='text' value= '185400' name'P3'/></td><td> <input type ='text' value= 'E' name'R3'/></td><td> <input type ='text' value= 'LCS' name'S3'/></td><td> <input type ='text' value= 'O ' name'T3'/></td><td> <input type ='text' value= '52' name'Y3'/></td><td> <input type ='text' value= '187366' name'AA3'/></td><td> <input type ='text' value= '52' name'AC3'/></td><td> <input type ='text' value= '0' name'AD3'/></td><td> <input type ='text' value= '0.41' name'AE3'/></td><td> <input type ='text' value= '0' name'AG3'/></td><td> <input type ='text' value= '21.32' name'AH3'/></td><td> <input type ='text' value= '21.32' name'AK3'/></td><td> <input type ='text' value= '20140528' name'AO3'/></td><td> <input type ='text' value= '198097' name'AP3'/></td><td> <input type ='text' value= 'NS  ' name'AQ3'/></td><td> <input type ='text' value= 'E' name'AR3'/></td><td> <input type ='text' value= '4029176' name'AS3'/></td><td> <input type ='text' value= 'DLWR' name'C4'/></td><td> <input type ='text' value= 'DLWR' name'D4'/></td><td> <input type ='text' value= '2003' name'E4'/></td><td> <input type ='text' value= 'OHRY' name'F4'/></td><td> <input type ='text' value= 'OHRY' name'G4'/></td><td> <input type ='text' value= 'LCS' name'H4'/></td><td> <input type ='text' value= 'O ' name'I4'/></td><td> <input type ='text' value= '52' name'N4'/></td><td> <input type ='text' value= 'NS  ' name'O4'/></td><td> <input type ='text' value= '187366' name'P4'/></td><td> <input type ='text' value= 'E' name'R4'/></td><td> <input type ='text' value= 'LCB' name'S4'/></td><td> <input type ='text' value= 'S ' name'T4'/></td><td> <input type ='text' value= '63' name'Y4'/></td><td> <input type ='text' value= '187366' name'AA4'/></td><td> <input type ='text' value= '11' name'AC4'/></td><td> <input type ='text' value= '0' name'AD4'/></td><td> <input type ='text' value= '0.41' name'AE4'/></td><td> <input type ='text' value= '0' name'AG4'/></td><td> <input type ='text' value= '4.51' name'AH4'/></td><td> <input type ='text' value= '4.51' name'AK4'/></td><td> <input type ='text' value= '20140528' name'AO4'/></td><td> <input type ='text' value= '198097' name'AP4'/></td><td> <input type ='text' value= 'NS  ' name'AQ4'/></td><td> <input type ='text' value= 'E' name'AR4'/></td><td> <input type ='text' value= '4029176' name'AS4'/></td><td> <input type ='text' value= 'DLWR' name'C5'/></td><td> <input type ='text' value= 'DLWR' name'D5'/></td><td> <input type ='text' value= '2003' name'E5'/></td><td> <input type ='text' value= 'OHRY' name'F5'/></td><td> <input type ='text' value= 'OHRY' name'G5'/></td><td> <input type ='text' value= 'LCB' name'H5'/></td><td> <input type ='text' value= 'S ' name'I5'/></td><td> <input type ='text' value= '63' name'N5'/></td><td> <input type ='text' value= 'OHRY' name'O5'/></td><td> <input type ='text' value= '187366' name'P5'/></td><td> <input type ='text' value= 'L' name'R5'/></td><td> <input type ='text' value= 'LCS' name'S5'/></td><td> <input type ='text' value= 'P ' name'T5'/></td><td> <input type ='text' value= '63' name'Y5'/></td><td> <input type ='text' value= '187366' name'AA5'/></td><td> <input type ='text' value= '0' name'AC5'/></td><td> <input type ='text' value= '0' name'AD5'/></td><td> <input type ='text' value= '0.41' name'AE5'/></td><td> <input type ='text' value= '0' name'AG5'/></td><td> <input type ='text' value= '0' name'AH5'/></td><td> <input type ='text' value= '0' name'AK5'/></td><td> <input type ='text' value= '20140603' name'AO5'/></td><td> <input type ='text' value= '306552' name'AP5'/></td><td> <input type ='text' value= 'NS  ' name'AQ5'/></td><td> <input type ='text' value= 'L' name'AR5'/></td><td> <input type ='text' value= '4021125' name'AS5'/>
	<br />
	</iframe>
		
	
</body>
</html>

在完美的世界中,单独调用每个文本框的PHP部分看起来像这样:

 for($n=1; $n<27; $n++){
  $cell = $x . $y; 

   if(isset($_GET[$cell])){
   $string = $_GET[$cell];
    }
    else{ 
    break 1;
    }
 $objWorksheet ->getCell($cell) ->setValue($string);

  echo "<td> <input type ='text' value= '$string' name = '$cell'/></td>";

  $x=++$x;
  }

1 个答案:

答案 0 :(得分:0)

首先使用html中的普通表单机制和后端php进行尝试,之后您可以更改它而无需使用ajax进行任何大的更改。

<form method="POST" action="backend.php" id="excelform">
   <input type="text" value="foo" name="D3" /> 
   <button type="submit">Submit</button>
</form>

你的backend.php看起来像:

<?php
$cell = "D3";

var_dump($_POST[$cell]);
die();

在你完成这项工作后,你可以通过AJAX调用(使用jQuery)发送你的数据:

$("#excelform").submit(function( event ) {

  var form = $("#excelform");
  $.post(form.attr("action"), form.serialize()).done(function( data ) {
     alert( "Data Loaded: " + data );
  });

  //prevent the form to really send to another page
  event.preventDefault();
});