L

자동등록방지 암호를 숫자만 나오도록 할려면

// 자동등록기를 막아볼까요?
$is_norobot = false;
if ($default[de_use_norobot]) {
// 임의의 md5 문자열을 생성
$tmp_str = substr(md5(time()),0,10);
// 난수 발생기
srand(make_seed());
$keylen = strlen($tmp_str);
$div = (int)($keylen / 2);
while (count($arr) < 3) {
unset($arr);
for ($i=0; $i<$keylen; $i++) {
$rnd = rand(1, $keylen);
$arr[$rnd] = $rnd;
if ($rnd > $div) { break; }
}
}


이 부분에서 문자열이 아니라 숫자를 생성해야 할 것 같은데 어떻게 고쳐야 하나요?
|

댓글 4개

substr(md5(time()),0,10);

시간을 암호환 한것에서 일부를 추출한 것이 난수가 되는 것 입니다.
이부분을 해결하시려면 10자리만큼 난수를 생성하시면 될 것 입니다.

테스트는 안해 &#48419;습니다. 아래처럼 바꿔보세요.
$tmp_str = substr(rand(0,999999999999999),0,10);
감사합니다. 홈페이지 관리하는 곳에서 이런 것을 원해서요^^
$tmp_str = substr(rand(0,999999999999999),0,10);
==>
$tmp_str = rand(1000000000,9999999999);

^^
$tmp_str = substr(rand(0,999999999999999),0,10);

이렇게 하시면 됩니다.
댓글을 작성하시려면 로그인이 필요합니다. 로그인

그누4 질문답변

그누보드4 관련 질문은 QA 로 이전됩니다. QA 그누보드4 바로가기 기존 게시물은 열람만 가능합니다.

+
제목 글쓴이 날짜 조회
17년 전 조회 1,037
17년 전 조회 963
17년 전 조회 1,515
17년 전 조회 1,068
17년 전 조회 1,309
17년 전 조회 1,590
17년 전 조회 1,518
17년 전 조회 846
17년 전 조회 1,522
17년 전 조회 1,418
17년 전 조회 1,019
17년 전 조회 1,511
17년 전 조회 1,504
17년 전 조회 999
17년 전 조회 964
17년 전 조회 1,513
17년 전 조회 1,424
17년 전 조회 1,528
17년 전 조회 1,597
17년 전 조회 1,712
🐛 버그신고