-1

我正在挣扎,我不知道还能去哪里。我有一个在他们的网站上销售的客户,但是,我正在重写代码,我需要一个联系表格来向他们发送查询。目前它全部在 Wordpress 中设置。

但是,该表格将允许客户为一个订单发送简单的信息。所以数量、颜色、描述字段都在表单中(联系表单 7 插件)

我想要的是让他们为不同的产品多次输入该信息。所以客户输入例如 5 件蓝色睡衣 + 10 件绿色袜子。但是他们可能有很多订单,我们无法知道有多少。我需要的是一个不太难的界面想法,因为在正确设置电子商务之前,这是一种丢弃形式。如果我没有说清楚,请告诉我。

4

2 回答 2

2

我尚未验证代码,但这是一个概念。

<head>
<script type="text/javascript">
    var ordernum = 1;
    function Add_to_Order() {
        /* Adding another order to the form */
        ordernum++;
        var order_str = '<p><label for="order' + ordernum + '_id">Quantity: </label><input id="order' + ordernum + '_id" name="order' + ordernum + '_qty" type="text" size="6" /><input name="order' + ordernum + '_color" type="text" /><input name="order' + ordernum + '_desc" type="text" /></p>';  
        $('#orders').append(order_str);

        /* Replaces the value of qty so that you know how many orders to track */
        $('input[name=qty]').val(function(index, value) {
           return value.replace(ordernum);
        });
    }
    jQuery(document).ready(function($){
        /* When add order button is pressed it will add additional fields to the id=orders */
        $('#add_order').click(Add_to_Order);
    });
</script>
</head>
<body>
    <form id="contactForm" method="POST" action="">
        <label for="name_id">Name: </label>
        <input id="name_id" name="name" type="text" />
        <fieldset id="orders">
            <p>
                <label for="order1_id">Quantity: </label>
                <input id="order1_id" name="order1_qty" type="text" size="6" />
                <input name="order1_color" type="text" />
                <input name="order1_desc" type="text" />
            </p>
        </fieldset>
        <input id="add_order" type="button" value="Add Another Item" />
        <input id="qty" name="qty" type="hidden" value="1" />
        <hr />
        <input id="submit" name="submit" type="submit" value="Send" />      
    </form>
</body>

在此之后,您可以验证表单并在提交时根据您拥有的订单数量发送信息。我还会添加一些安全措施,但这只是您可以使用的概念。

于 2013-04-12T14:37:33.400 回答
1

实际上,您想要的 PHP 邮件表单并不容易,但我一直在努力提供帮助,即使您没有绘制您想要的表单,也没有绘制主题。现在,例如我们有一个名为form.php的 PHP 文件,这是 PHP 脚本:

<?php
$q = addslashes($_GET["q"]);

if (empty($q)) {
    echo '<form action="form.php" method="get">
    How many do you want to order: <input type="text" name="q">
    <input type="submit">
    </form>';
}

if ($q > 0) {
    if (isset($_REQUEST['from'])) {
        $from = $_REQUEST['from'] ;

        // place your email here
        $to = "mail@example.com";

        $subject = "Customer: " . $_REQUEST['name'];

        $i = 1;
        while ($i <= $q) {
            $message .= "Order $i\n";
            $message .= "Quality: " . $_REQUEST['quality' . $i] . "\n";
            $message .= "Color: " . $_REQUEST['color' . $i] . "\n";
            $message .= "Description: " . $_REQUEST['description' . $i] . "\n\n";
            $i++;
        }

        $message .= "Note: " . $_REQUEST['note'];
        mail($to, $subject, $message, "From:" . $from);
        echo "Thank you for submitting your order!";
    } else {
        echo "<form method='post'>
        Email: <input name='from' type='text'><br />
        Full Name: <input name='name' type='text'><br />";

        $i = 1;
        while ($i <= $q) {
            echo "Order $i<br />
            Quality: <input name='quality" . $i . "' type='text'><br />
            Color: <input name='color" . $i . "' type='text'><br />
            Description: <input name='description" . $i . "' type='text'><br />";
            $i++;
        }

        echo "Additional Note:<br />
        <textarea name='note' rows='15' cols='40'></textarea><br />
        <input type='submit'>
        </form>";
    }
}
?>

该邮件表单已经过测试并且可以正常工作。只需完成其余的改进和样式设置即可。

于 2013-04-12T15:24:16.070 回答