【问题标题】:how to submit multiple data in mysql using php and jquery如何使用php和jquery在mysql中提交多个数据
【发布时间】:2014-01-17 05:30:47
【问题描述】:

如何在表格中提交多个值请帮助我使用此代码 此代码仅在数据库中提交 1 个条目,但我想在数据库中输入倍数我该怎么做

现场演示 http://jsfiddle.net/eruZC/3/

这是 entry.html

      <script type='text/javascript' src='http://code.jquery.com/jquery-1.10.1.js'></script>

  <link rel="stylesheet" type="text/css" href="http://fiddle.jshell.net/css/result-light.css">

  <style type='text/css'>

  </style>



<script type='text/javascript'>//<![CDATA[ 
$(window).load(function(){
$(document).ready(function(){
    var id=1;

    $("#butsend").click(function(){
        $("#table1").append('<tr valign="top"><td width="100px">'+(id++)+'</td><td width="100px">'+$("#sname").val()+'</td><td width="100px">'+$("#age").val()+'</td><td width="100px"><a href="javascript:void(0);" class="remCF">Remove</a></td></tr>');
    });

    $("#table1").on('click','.remCF',function(){
        $(this).parent().parent().remove();
    });
});
});//]]>  

</script>


    </head>
    <body>
      <form action="submit.php" d="form1" name="form1" method="post">
    <label>Student Name</label><input type="text" name="sname" id="sname"></br>
    <label>Student Age</label><input type="text" name="age" id="age"></br>
    <input type="button" name="send" value="Add" id="butsend"></br>
     <input type="button" name="submit" value="Submit" ></br>
    </form>
    <table id="table1" name="table1" border="">
    <tbody>
    <tr><th width="100px">ID</th><th width="100px">Name</th><th width="100px">Age</th><th width="100px"></th><tr>

    </tbody>
    </table>

    </body>


    </html>

这是php页面submit.php

<?php
/* 
 NEW.PHP
 Allows user to create a new entry in the database
*/

 // creates the new record form
 // since this form is used multiple times in this file, I have made it a function that is easily reusable
 function renderForm($sname, $age, $error)
 {
 ?>


 <?php 
 // if there are any errors, display them
 if ($error != '')
 {
 echo '<div style="padding:4px; border:1px solid red; color:red;">'.$error.'</div>';
 }
 ?> 




 <?php 
 }




 // connect to the database
 include('connect-db.php');

 // check if the form has been submitted. If it has, start to process the form and save it to the database
 if (isset($_POST['submit']))
 { 
 // get form data, making sure it is valid
 $sname = mysql_real_escape_string(htmlspecialchars($_POST['sname']));
 $age = mysql_real_escape_string(htmlspecialchars($_POST['age']));



 // check to make sure both fields are entered
 if ($name == '')
 {
 // generate error message
 $error = 'ERROR: Please fill in all required fields!';

 // if either field is blank, display the form again
 renderForm($sname, $age, $error);
 }
 else
 {
 // save the data to the database
  mysql_query("INSERT stock SET sname='$sname', age='$age'")
 or die(mysql_error()); 

 // once saved, redirect back to the view page

 }
 }
 else
 // if the form hasn't been submitted, display the form
 {
 renderForm('','','','','','','','');
 }

         ?>

【问题讨论】:

  • 您真的只是在插入标签的值吗?您在表中附加的姓名和年龄的值不是字段,也不是表单的一部分,以便提交给您的 php 代码。也看看这里它可能对你有帮助stackoverflow.com/questions/10489046/…

标签: javascript php jquery mysql mysqli


【解决方案1】:

您可以使用foreachfor loop 执行多个insert sql 查询。

您应该submit 您的form values 以在php 代码中获取这些值。这个问题与您的问题完全相关。 How to insert into MYSQL row from multiple $_POST arrays

使用你的代码像这个小提琴示例http://jsfiddle.net/cjramki/mPR45/

希望此链接对您有用。

【讨论】:

    【解决方案2】:

    为什么不试试 .post() jQuery 函数呢?实现起来非常简单

    $.post( "example.php", { name: "John", time: "2pm", etc, etc, etc });
       .done(function() {
              alert( "second success" );
        })
       .fail(function() {
              alert( "error" );
       })
       .always(function() {
             alert( "finished" );
       });
    

    然后在你的 php 中,你只需要像 foreach 这样的循环插入到 mysql 中:

    <?php 
           foreach ( $_POST as $p ){
               mysql_query( YOUR QUERY );
           }
           return ( 'DONE !' ); // your return values
    ?>
    

    【讨论】:

      【解决方案3】:

      如果您想从单个表单中添加多个值,请在输入框中添加逗号分隔值,然后使用爆炸例如:

       $sname = mysql_real_escape_string(htmlspecialchars($_POST['sname']));
      $namearray = explode(',',$sname);
      foreach ($namearray as $sname){
       mysql_query("INSERT stock SET sname='$sname', age='$age'")
       or die(mysql_error()); 
      }
      

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 1970-01-01
        • 2018-10-25
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2016-02-24
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多