如何从动态生成的输入中将值插入数据库

时间:2016-07-09 15:40:08

标签: php html

此处的表单显示输入是否由用户验证了值,因此需要动态表单字段:



<form class="form-horizontal"  method="POST" action="ajouterProduit4" name="formulaire">                
<div class="panel panel-default tabs">                            
<ul class="nav nav-tabs" role="tablist">
	<li class="active"><a href="ajouterProduit2"><button name="btn2" style="background: transparent; border: none;">Fiche Technique</button></a></li>
	
</ul>
<div class="panel-body tab-content">
											
	<div class="tab-pane active" id="tab-second">
	
		<?php 
			$reqt1 = "SELECT c.Libelle,c.ID FROM caracteristique c,fichetechnique f WHERE c.fichetechniqueID=f.ID AND c.fichetechniqueID='$categorie' LIMIT 0,10";
			$reqt2 = "SELECT c.Libelle,c.ID FROM caracteristique c,fichetechnique f WHERE c.fichetechniqueID=f.ID AND c.fichetechniqueID='$categorie' LIMIT 10,10";
			$rest1=mysqli_query($conne,$reqt1);
			$rest2=mysqli_query($conne,$reqt2);
		?>
		<div class="col-md-6" id="txtHint">
			<?php
				while ($rowt1= mysqli_fetch_row($rest1)) {
			?>
			<div class="form-group">
				<label class="col-md-3 control-label"><?php echo $rowt1[0] ?></label>
				<div class="col-md-9">                                            
					<div class="input-group">
						<span class="input-group-addon"><span class="fa fa-pencil"></span></span>
						<input  name="rowt1"   type="text" class="form-control" />
						
					</div>                                            
					
				</div>
			</div> 
				<?php }  ?>
		</div>
		
		<div class="col-md-6">
			<?php
				while ($rowt2= mysqli_fetch_row($rest2)) {
			?>
		<div class="form-group">
			<label class="col-md-3 control-label"><?php echo $rowt2[0] ?></label>
			<div class="col-md-9">                                            
				<div class="input-group">
					<span class="input-group-addon"><span class="fa fa-pencil"></span></span>
					<input name="rowt2" type="text" class="form-control"/>
				</div>                                            
			</div>
		</div>
			<?php } ?>
		</div>
	   
	</div>                                        
   
</div>
			<div class="panel-footer">
				<input type="reset" class="btn btn-default" value="Réinitialiser">
				<button name="envoyer" class="btn btn-primary pull-right">Etape 3 <span class="fa fa-arrow-right fa-right"></span></button>
			</div>	
</div>

</div>                                
							
</form>
&#13;
&#13;
&#13;

但是,当不清楚数据可能是什么时(特别是类别),我不知道如何将数据插入数据库

在伪代码中它将是(&#34; INSERT INTO Category(Value)值($ value)&#34;)

N.B:我只使用程序化的php

2 个答案:

答案 0 :(得分:2)

您可以使用HTML输入数组动态生成表单。

<?php $fruits = ['apple', 'orange', 'strawberry', 'pear'] ?>

<form method="POST" action="action.php">
    <?php for ($i=0; $i < count($fruits); $i++): ?>
        <input type="text" name="fruits[<?php echo $i ?>]" value="<?php echo $fruits[$i] ?>" />
    <?php endfor ?>
    <input type="submit" value="Submit" />
</form>

在上面的示例中,您将生成名为fruits的输入类型。然后,您将表单提交到action.php(请参阅下面的代码)。

<?php

$fruits = $_POST['fruits'];
var_dump($fruits);

结果,当你在浏览器上运行时,结果如下。

array (size=4)
  0 => string 'apple' (length=5)
  1 => string 'orange' (length=6)
  2 => string 'strawberry' (length=10)
  3 => string 'pear' (length=4)

希望它有所帮助。

答案 1 :(得分:0)

使用此表格:

<?php 
$rowt1=$_REQUEST['rowt1'];// will return post array due to the declaration in the form as rowt1[]
$rowt2=$_REQUEST['rowt2'];// will return post array due to the declaration in the form as rowt2[]
foreach ($rowt1 as $key => $value) {
    $sql="INSERT INTO TABLENAME1 ('rowt1') VALUES ('".$value."')";
    // run the query
}
foreach ($rowt2 as $key => $value) {
    $sql="INSERT INTO TABLENAME2 ('rowt2') VALUES ('".$value."')";
    // run the query
}
?>

在服务器端:

$(".y_e").mouseover(function(){
    $(this).children(".Photopreview").stop(true,true).delay(3000).show("fast");
});
$(this).mouseleave(function(){
    $(this).children(".Photopreview").stop(true,true).hide("fast");
});

希望这可以解决您的问题。感谢。