如何将textarea和下拉列表添加到数组值?

时间:2013-09-19 03:20:38

标签: php html arrays textarea

嗨!我想在我的数组中添加额外的2个textarea和一个下拉列表,它将被插入到我的mysql数据库中。

我已经有了一个textarea:

  1. 名称
  2. 用户名
  3. 我想添加

    1. 密码
    2. 名字
    3. group(这是一个下拉列表,我将从mysql中的groups表中获取数据)
    4. 这是我到目前为止所得到的:

      <?php
      require_once "connect_to_mysql.php"; 
      if($_POST['name'] || $_POST['username'])
      {
      
      $array=$_POST['name'];
      $array2=$_POST['username'];
      
      foreach ($array as $i => $name) {
          $username = $array2[$i];
      
      
      //$sql=mysql_query("insert into hobbies(hobby)values('$hobby')")
      
      $sqlCommand = "INSERT INTO test(name, username) VALUES ('$name', '$username')";
      
      $query = mysql_query($sqlCommand) or die (mysql_error());
      
      }
      }
      
      ?>
      <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"
      "http://www.w3.org/TR/html4/loose.dtd">
      <html>
      <head>
      <title>Jquery Duplicate Fields Submit Form</title>
      <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
      <script type="text/javascript" src="http://ajax.googleapis.com/
      ajax/libs/jquery/1.4.2/jquery.min.js"></script>
      <script type="text/javascript" src="reCopy.js"></script>
      <script type="text/javascript">
      $(function(){
        var removeLink = ' <a class="remove" href="#"    onclick="$(this).parent().slideUp(function(){ $(this).remove() }); return     false">remove</a>';
      $('a.add').relCopy({ append: removeLink});  
      });
      </script>
      <style type="text/css">
      body{ font-family:Arial, Helvetica, sans-serif; font-size:13px; }
      .remove {color:#cc0000}
      .input{ border: solid 1px #006699; padding:3px}
      
      </style>
      </head>
      
      <body>
      
      <div style="background-color:#ffffcc; padding:4px; border:#333 1px solid">9lessons     programming Blog. Topics focused about jquery, ajax, mysql, php and java. <a     href="http://9lessons.info">http://9lessons.info</a></div>
         <form method="post" action="">
         <p class="clone"> <input type="text" name="name[]" class='input'/> 
           <input type="text" name="lastname[]" class='input' id="lastname[]"/> 
           <input type="text" name="username[]" class='input' id="username[]"/> 
           <input type="text" name="password[]" class='input' id="password[]"/>
         <?php
      require_once "connect_to_mysql.php"; 
      $part_id = $_SESSION['part_id'];
      $query="SELECT * FROM groups WHERE part_id = '$part_id'";
      $result = mysql_query($query);
      
      echo '<select name="group" id="group">';
      while($row=mysql_fetch_array($result)){ 
      echo '<option value="' . $row['group'] . '">'. $row['group'] . '</option>';
      }
      echo '</select>'; 
      ?></p>
         <p><a href="#" class="add" rel=".clone">Add More</a></p>
         <input type="submit" value=" Submit " />
         </form>
      </body>
      </html>
      

1 个答案:

答案 0 :(得分:1)

乔纳森,不要试图冒犯,但我认为你正在研究一个只会弄乱你的样本。我也怀疑英语不是你的第一语言。

1)仔细查看创建表单的示例,然后回复其数据。查看http://html.net/tutorials/php/lesson11.php您将使用post方法提交数据。

2)接下来看看数据库设计,特别是第一个普通形式。看看你能否找到一个重要原因的例子。您需要了解如何创建表以支持“多对多”关系。 (提示,一个用户可以有多个爱好,他们可能有三个,或五个或只有一个爱好。你如何在数据库中管理它?)我要求你这样做,因为当你了解如何制作重复的条目存储正确地说,您将准备好向用户询问相应的问题,以获得所需的数据,尽可能简单。

3)我希望您学习如何使用PDO(php数据对象)表示法来处理数据库。它不是那么困难,如果出现任何问题肯定会有所帮助。 PDO的东西提供了更好的反馈。 http://net.tutsplus.com/tutorials/php/why-you-should-be-using-phps-pdo-for-database-access/

4)您需要对安全性,登录和会话进行一些研究。

5)你的标题“Jquery Duplicate Fields Submit Form”让我感到困惑......如果有什么东西是重复的,为什么要提交?当我得到一份副本时,我通常会抛弃多余的东西。

6)当我们讨论jquery时,我也建议你去做try.jquery.com教程。这将对jquery和CSS有很大帮助。您将学习如何隐藏和取消隐藏用户表单上的字段(因此您甚至不必使用该功能removelink)显然,如果用户无法看到该字段,则无法填写该字段。

我几乎宁愿看到你扔掉整个文件(我认为你已经从其他地方复制过)并从头开始然后沿着你目前的路径走。

(左箭头,感叹号 - html评论 - &gt;和// php评论是您第一次开始时的朋友。使用简单的注释和逻辑结构设计您想要文件的内容然后回去编写你的简明英文描述。

我会告诉你,如果你正在复制一些东西而且你有一两个以上你不理解的概念,你绝对会失败。最好花时间,慢慢学习并了解正在发生的事情。

告诉我你的事情刚刚开始。 整个数组/ array2似乎毫无意义。 如果您已经有一些来自用户的字段,并且想要填写更多字段,那么在表单页面上,让您的程序填写您已经知道的字段。请记住,隐藏在表单上非常容易的项目。如果你想通过javascript取消隐藏很容易做的事情

我会说,你当然可能在你的东西之上,我的解释完全基于英语翻译差异。在那种情况下,大肆道歉。我的回复没有违法行为。我希望你能够帮助自己并准确理解发生了什么。

祝你好运。