将-Values移动到另一个SQL表

时间:2015-10-20 19:48:35

标签: php html mysql

我的网站正在使用SQL表的数据集生成HTML-tr结构。每个tr都包含一个数据集,每个td都是一个SQL表值,如下所示:

include_once("functions.php");
SQL_Connect();

$queryBestellung = mysql_query("SELECT * FROM Bestellung ORDER BY $sortbestellung ASC");

$num = mysql_num_rows($queryBestellung);
$resultproductname  = array();
$resultbestellnummer = array();
$resulturgent = array();
$benutzername  = array();
$resultbestelltesProdukt = array();
$resultbestelltesProduktPakete = array();
$resultbestelltesProduktMenge = array();

if($num)
{
    for ($i = 0; ($row = mysql_fetch_assoc($queryBestellung)); ++$i)
    {
        $resultproductname [$i] = $row["productname"];

        $resultbestellnummer [$i] = $row["bestellnummer"];
        $resulturgent [$i] = $row["urgent"];
        $benutzername [$i] = ( $row ['firstname']." ".$row ['lastname']);

        $resultbestelltesProdukt [$i] = $row["productname"];
        $resultbestelltesProduktPakete [$i] = $row["packages"];
        $resultbestelltesProduktMenge [$i] = $row["quantity"];


    }
}

$arrlength = count($resultbestelltesProdukt);
for ($i = 0; ($i < ($arrlength)); ++$i){
    echo "<tr class='".$resulturgent [$i]."'><td>".$resultbestellnummer [$i]."</td><td>".$benutzername [$i]."</td><td>".$resultbestelltesProdukt [$i]."</td><td>".$resultbestelltesProduktPakete [$i]."</td><td>".$resultbestelltesProduktMenge [$i]."</td><td>".$resulturgent [$i]."</td>
    <td>
    <form  action='Orders.php'  method='post' >
            <div class='buttonDelete'><button class='submit' name='submit' type='submit' value='X'  tabindex='3'></button></div>
            <input name='MOVEOrderForm' type='hidden' value='' />
            <input name='OrderToMOVE' type='hidden' value='".$resultbestellnummer [$i]."' />
    </form>
    </td>
    </tr>";

}

现在我想添加一个允许将一个SQL数据集(tr)复制到另一个表的函数(检查表单)。我的解决方案看起来像这样,但它不起作用:

if (isset($_POST['MOVEOrderForm'])) 
{
    $OrderToMOVE                    =       $_POST["OrderToMOVE"]; 
    include_once("functions.php");  

    SQL_Connect();

    $query = mysql_query ("INSERT INTO anKundeVerschickt (bestellnummer, name, urgent, productname, quantity, packages) VALUES (bestellnummer, name, urgent, productname, quantity, packages) FROM bestellung WHERE bestellnummer='$OrderToMOVE' "); 

    mysql_close();  
}  

有没有人有任何建议?

1 个答案:

答案 0 :(得分:1)

您的查询需要是INSERT ... SELECT查询:https://dev.mysql.com/doc/refman/5.5/en/insert-select.html

$query = mysql_query ("INSERT INTO anKundeVerschickt (bestellnummer, name, urgent, productname, quantity, packages) SELECT bestellnummer, name, urgent, productname, quantity, packages FROM bestellung WHERE bestellnummer='$OrderToMOVE' "); 

停止使用mysql扩展它已被弃用,并且在手册中有一个相关的注释(它已存在多年)。请改用PDO或MYSQLI。