特定の列のすべての行(レコード)を検索する関数を作成した場合、 は乱数を生成し、生成された乱数関数が存在しない場合は再帰関数 を再起動し、新しいものとして挿入します。データベースにINSERTが存在しない場合
$verifs = mysqli_query($conlink, 'SELECT verif FROM memebers');
$records = array();
while($record = mysqli_fetch_array($verifs,MYSQLI_NUM)) {
$records[] = $record[0];
}
function randomize(){
$rand= rand(1,5);
if(in_array($rand, $GLOBALS['records'])){
randomize();
}else{
return $rand;
}
}
mysqli_query($conlink, "INSERT INTO `memebers`(`verif`) VALUES (".randomize().")");
iは番号iが私のPHPページ
更新するたびに加えなければなりませんし、それがそうであったことが予想さ、私は3つのまたは4の記録に達したときに、ページを更新しても、追加されません!したがって、return
ステートメントは、関数が再帰的になるのを防ぐ必要があります。 私のロジックに何か間違っている ありがとう
$レコードは$ GLOBALSに存在しますか? 'print_r($ GLOBALS ['records'])'を実行して、どのような出力が得られるか教えてください。 – Webeng
私はうまくいくかもしれない答えを掲載しました。 – Webeng
レコードは実際には存在しますが、最初は空白で、値を持つようになります。ページを更新し、 'in_array($ rand、global $ records)'を試しましたが、予期しないグローバルな構文エラーが発生しました。$ GLOBALSはexpected –