Reply to this topicStart new topic
> Генериране на уникален код.
HunteR
публикация 14.11.2008г. в 14:26ч.
Коментар: #1


Новак
*

Група: Потребители
Съобщения: 29
Дата на регистрация: 31.07.2006г.
От: Септември
Потребител # 668





Така тук ще сложа малко по-съкратен код от този ->

Благодаря за идеята, която ми даде @ColdFire.

Така ето ги и самите промени.

Като започнем от структурата на таблицата:
Новата е тази:
CODE
CREATE TABLE codes (
code varchar(250) NOT NULL default '',
PRIMARY KEY (code)
);


Ето го и новия скрипт за генериране на уникален код.
CODE
<?php
// CONFIG //

// Връзка с базата данни
$db_conn = mysql_connect("localhost", "root", "password") or die(mysql_error());
mysql_select_db("database", $db_conn) or die(mysql_error());

define(COUNT_SIMBOLS,8); // тук дефинираме колко символа да бъде кода
define(ALL_SIMBOLS,'0123456789qwertyuioplkjhgfdsazxcvbnm'); // тук слагаме символите, от които да се генерира кода

// CONFIG //

$code = substr(str_shuffle(ALL_SIMBOLS),0,COUNT_SIMBOLS); // генерираме код
$continue = false;
while (!$continue) {
$zapis = mysql_query("INSERT INTO `codes` (`code`) VALUES ('$code')"); // правим опит за записване на кода в базата данни
if ($zapis) { // ако кода е успешно записан продължаваме
$continue = true;
} else { // ако кода не е записан успешно
$code = substr(str_shuffle(ALL_SIMBOLS),0,COUNT_SIMBOLS); // тук генерираме нов код, ако предишния генериран е съществувал в базата
$continue = false;
}
}

// връшаме променливата "$code" с уникалния код. Вече може да я правите каквото поискате wink.gif
echo $code;
?>


Както виждате вече е с 1 заявка по-малко wink.gif
Go to the top of the page
 
+Quote Post
nikityyy
публикация 7.04.2010г. в 21:06ч.
Коментар: #2


Новак
*

Група: Потребители
Съобщения: 1
Дата на регистрация: 7.04.2010г.
Потребител # 10 715




Не става!
Go to the top of the page
 
+Quote Post



Reply to this topicStart new topic
1 потребители преглеждат тази тема в момента (1 гости, 0 анонимни потребители)
Потребители, преглеждащи темата в момента:

 

RSS Олекотена Версия Сега е: 11:31 - 9.08.2026г.

Калдейта Ком ЕООД - © 2003-. Всички права запазени.