创建优惠券代码

时间:2011-10-15 15:11:37

标签: php magento-1.4 magento-1.5 magento

我正在开发一个购物网站而不使用集体“解决方案”。 我希望客户通过您的帐户和他的帐户小组的邮件收到凭证,他有可用于打印的优惠券。 每张优惠券,每个客户必须拥有一个唯一的代码。 有没有人知道怎么做?

4 个答案:

答案 0 :(得分:2)

我使用此代码

while (true) {
    $ccode = "CP" . strtoupper ( dechex ( rand ( 1000000000, 9999999999) ) ) . strtoupper ( chr( rand( 65, 90 ) ) ) . chr(rand(65, 90));
    $check = mysql_query("SELECT coupon_code FROM item_coupons WHERE coupon_code = '$ccode'");
    if (mysql_num_rows($check) != 0) {
        //duplicate
    } else {
        break 1;
    }
}

答案 1 :(得分:1)

他的电子邮件ID的哈希可以用作优惠券代码。同时将其存储在数据库中以避免欺诈。

答案 2 :(得分:0)

使用php条形码制作工具,多数民众赞成我会做什么

答案 3 :(得分:0)

首先,您可以在数据库中创建coupon表,如下所示:

create table `coupon`(
    `code` char(32) primary key,
    `email` varchar(255),
    `used` tinyint(1) default 0
) ENGINE=MYISAM;

现在您可以完全随机生成优惠券,然后将其保存在表格中以供日后检查:

function generate_coupon_for($email)
{
    do
    {
        $cpn = md5(rand());
        if(mysql_query("insert into `coupons`(`code`, `email`) values('$cpn', '$email');"))
        {
            return $cpn;
        }
    }while(mysql_errno() == 1062);
    //We had an error while trying to insert the coupon
}

这样,您可以查看优惠券:

function check_coupon($code, $email)
{
    $q = mysql_query("update `coupons` set `used` = 1 where `email`='$email' and `code`='$code' and `used`=0;");
    return mysql_affected_rows() > 0;
}

它将返回true或false ......

我希望这些可以帮助你...