将表1中的行复制到表2

时间:2013-11-22 14:02:00

标签: php mysql sql database

我需要从table1复制一行到我的table2。 我有一个select,它列出了table1中<option>的所有条目,当我选择一个选项时,需要将它插入table2中的行(具有相同的名称)。

尝试更具体:

这是一个包含在table2中插入的字段的表单,但是一个字段是列出table1中的条目的选项。当他们被提交时,他们将被放入table2,包括table1中选择的选项。

有人可以帮忙解决这个问题吗?

表2 HTML表单:

<div class="form">
//Simple input that's normaly inserted in table2
<form action="insert.php" method="post">
<input class="form1" type="text" value="NAME" name="name" onfocus="if (this.value=='NAME') this.value='';"/>
 <br />
//Input that lists all the entries from the "companies" field from table1
<select class="form7" value="COMPANIES" name="companies" />
<?php
//Connection DB file with the two databases (already tested)
include("connect.php");

//Select to list all the entries from "companies" row from table1                            
$query = mysql_query("SELECT * FROM table1 ORDER BY nomefantasia") or die(mysql_error());

while($array = mysql_fetch_array($query))
{
//Option listing field
echo    '<option value="companies" name="companies">'.$array['companies'].'</option>';
}
?>
</select>
//Submit button
<input class="button" type="submit" value="SUBMIT" />
</form>

INSERT INTO文件

<?php

include("connect.php");

// Get values from form
$name=$_POST['name'];

// Insert data into mysql 
$sql="INSERT INTO $table2(name) VALUES ('$name')";
$result=mysql_query($sql);

if($result){
echo "Done!!";
echo "<br />";
echo "<a href='#'>Return</a>";
}

else {
echo "ERROR";
}
?> 

<?php 
// close connection 
mysql_close();
?>

那么,我如何将“公司”排成一行呢?

1 个答案:

答案 0 :(得分:1)

两个表的布局与您刚才的相同:

INSERT INTO table2
SELECT * FROM table1;

或者我们只能将我们想要的列复制到另一个现有表中:

INSERT INTO table2
(column_name(s))
SELECT column_name(s)
FROM table1;