-1

PHP で uniqid() を使用して自動セッション ID を生成する必要がありますが、MSSQL データベースに保存する必要があります。

<?php

//set the random id length 
$random_id_length = 10; 

//generate a random id encrypt it and store it in $rnd_id 
$rnd_id = crypt(uniqid(rand(),1)); 

//to remove any slashes that might have come 
$rnd_id = strip_tags(stripslashes($rnd_id)); 

//Removing any . or / and reversing the string 
$rnd_id = str_replace(".","",$rnd_id); 
$rnd_id = strrev(str_replace("/","",$rnd_id)); 

//finally I take the first 10 characters from the $rnd_id 
$rnd_id = substr($rnd_id,0,$random_id_length); 

echo "Random Id: $rnd_id" ;
echo "<br>";

?>

これはコードです。この $rnd_id を uniqueidentifier 型に入れ、mssql データベースに保存します。

4

1 に答える 1

0

このようにしないでください。テーブル行を保存した後、MSSQL に一意の ID を割り当てさせ、これを取得させたほうがよいでしょう。このようにして、ID が (データベースの範囲内で) 本当に一意であることを確認できます。

$qry = mssql_query("INSERT INTO tbl(...) VALUES(...) SELECT LAST_INSERT_ID=@@IDENTITY");
$res = mssql_fetch_assoc($qry);

$res['LAST_INSERT_ID']最後の挿入 ID を保持します。

于 2012-10-08T11:00:44.463 に答える