Forum Moderators: coopster
mysql_connect('localhost','root','root'); mysql_select_db('test'); mysql_query('CREATE TABLE IF NOT EXISTS coupon_codes ( id int(10) unsigned NOT NULL AUTO_INCREMENT, code char(8) NOT NULL, PRIMARY KEY ( id ), UNIQUE KEY code ( code )) ENGINE=InnoDB'); // Delete this when table is made function generate_code($length) { $query = mysql_query('SELECT COALESCE(MAX(id),0) + 1 AS id FROM coupon_codes'); $row = mysql_fetch_array($query,MYSQL_ASSOC); $data = array($row['id'],strtoupper(substr(base_convert(substr(md5($row['id']),1),16,36),0,$length))); mysql_query('INSERT INTO coupon_codes (id,code) VALUES ('.$row['id'].',\''.$data[1].'\')'); return $data; } $data = generate_code(8); print_r($data);
function generate_code($length) { while(1) { $code = strtoupper(substr(base_convert(substr(md5(microtime()),1),16,36),0,$length)); if(mysql_num_rows(mysql_query('SELECT 1 FROM coupon_codes WHERE code = \''.$code.'\''))) continue; mysql_query('INSERT IGNORE coupon_codes (code) VALUES (\''.$code.'\')'); return $code; } } echo generate_code(8),"\n";
strtoupper(base_convert(uniqid(),16,36))