関数の呼び出しに問題がありrand_id()
ます。ここにコードがあります
<?php
try
{
$config=array(
'DB_USERNAME'=>'root',
'DB_PASSWORD'=>'');
$conn=new PDO('mysql:host=localhost;dbname=scc',$config['DB_USERNAME'],$config['DB_PASSWORD']);
$conn->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION);
echo rand_id();
}
catch(Exception $e)
{
echo 'error: '.$e->getMessage();
}
function rand_id()
{
$id=rand(100,103); //i have record with id ='100'
$results=$conn->query("select id from student_personal_info where id='".$id."'");
if($results->rowCount()>0)
{
rand_id();
}
else
{
return "this is unique id";
}
}
?>
しかし、関数を削除してこのコードが正常に機能していることを確認すると、データベースで確認した後、一意のIDメッセージを生成できなくなります...plzヘルプ......
関数を削除した後の別のコードは次のとおりです
<?php
try
{
$config=array(
'DB_USERNAME'=>'root',
'DB_PASSWORD'=>'');
$conn=new PDO('mysql:host=localhost;dbname=scc',$config['DB_USERNAME'],$config['DB_PASSWORD']);
$conn->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION);
$id=rand(100,103); //i have record with id ='100'
$results=$conn->query("select id from student_personal_info where id='".$id."'");
if($results->rowCount()>0)
{
echo "generate again";
}
else
{
echo "this is unique id";
}
}
catch(Exception $e)
{
echo 'error: '.$e->getMessage();
}
?>