최초 작성일 : 2021-06-22 | 수정일 : 2021-06-22 | 조회수 : |
Tags #PHP//페이지 이동
function go($move = 'back',$time = '0') {
if($move == 'back') echo('<script>history.back();</script>');
else echo('<meta http-equiv='refresh' content='$time;url=$move'>');
}
//메시지창+히스토리백
function alert($message,$move = 'back') {
$print = '<script>window.alert('$message');';
if($move == 'back') $print .= 'history.back();';
else $print .= 'location.href = '$move';';
$print .= '</script>';
echo('$print');
exit;
}
//디비접속
function db() {
global $connect;
if(!$connect) {
$connect = mysql_connect('localhost','testid','1234') or die('MySQL 접속 실패');
mysql_select_db('testdb',$connect) or die('MySQL 접속 실패');
}
}
//단어 필터링
function filter($string,$filter = '',$type = 'change',$change = '###') {
if(!$filter) return $string;
$filter = explode(',',$filter);
$fcount = sizeof($filter);
for($i = 0;$i < $fcount;$i++) {
if(eregi($filter[$i],$string)) {
if($type == 'error') alert('\'$filter[$i]\'은(는) 금칙어이다.
');
else $string = str_replace($filter[$i],$change,$string);
}
}
return $string;
}
//문자열 커트
function cutstr($str,$size) {
if(!$size or (strlen($str) <= $size)) return $str;
else for($i = 0;$i < $size;$i++) if(ord($str[$i]) > 127) $over++;
return chop(substr($str,0,$size - $over%2)).'...';
}
//테이블 생성여부 체크
function tablecheck($table,$db)
$result = mysql_list_tables($db);
for($i = 0;$i < mysql_num_rows($result);$i++) {
if($table == mysql_tablename($result,$i)) return true;
}
return false;
}
//빠른 DB자료 로드(노가다 도우미;;)
function select($table,$field = '*',$where = '') {
if(!$table) return false;
$q = 'select $field from $table';
if($where) $q .= ' where $where';
$result = mysql_query($q);
$return = mysql_fetch_array($result);
return $return;
}
//////////아래는 제로보드 lib.php에서 발췌한 함수이다.
// 빈문자열 경우 1을 리턴
function isblank($str) {
$temp=str_replace(' ','',$str);
$temp=str_replace('\n','',$temp);
$temp=strip_tags($temp);
$temp=str_replace(' ','',$temp);
$temp=str_replace(' ','',$temp);
if(eregi('[^[:space:]]',$temp)) return 0;
return 1;
}
// 숫자일 경우 1을 리턴
function isnum($str) {
if(eregi('[^0-9]',$str)) return 0;
return 1;
}
// 숫자, 영문자 일경우 1을 리턴
function isalNum($str) {
if(eregi('[^0-9a-zA-Z\_]',$str)) return 0;
return 1;
}
// HTML Tag를 제거하는 함수
function del_html( $str ) {
$str = str_replace( '>', '>',$str );
$str = str_replace( '<', '<',$str );
return $str;
}
// 주민등록번호 검사
function check_jumin($jumin) {
$weight = '234567892345'; // 자리수 weight 지정
$len = strlen($jumin);
$sum = 0;
if ($len <> 13) return false;
for ($i = 0; $i < 12; $i++) {
$sum = $sum + (substr($jumin,$i,1)*substr($weight,$i,1));
}
$rst = $sum%11;
$result = 11 - $rst;
if ($result == 10) $result = 0;
else if ($result == 11) $result = 1;
$ju13 = substr($jumin,12,1);
if ($result <> $ju13) return false;
return true;
}
// E-mail 주소가 올바른지 검사
function ismail( $str ) {
if( eregi('([a-z0-9\_\-\.]+)@([a-z0-9\_\-\.]+)', $str) ) return $str;
else return '';
}
// E-mail 의 MX를 검색하여 실제 존재하는 메일인지 검사
function mail_mx_check($email) {
if(!ismail($email)) return false;
list($user, $host) = explode('@', $email);
if (checkdnsrr($host, 'MX') or checkdnsrr($host, 'A')) return true;
else return false;
}
// 홈페이지 주소가 올바른지 검사
function isHomepage( $str ) {
if(eregi('^http://([a-z0-9\_\-\./~@?=&-\#{5,}]+)', $str)) return $str;
else return '';
}
// URL, Mail을 자동으로 체크하여 링크만듬
function autolink($str) {
// URL 치환
$homepage_pattern = '/([^\'\'\=\>])(mms|http|HTTP|ftp|FTP|telnet|TELNET)\:\/\/(.[^ \n\<\'\']+)/';
$str = preg_replace($homepage_pattern,'\\1<a href=\\2://\\3 target=_blank>\\2://\\3</a>', ' '.$str);
// 메일 치환
$email_pattern = '/([ \n]+)([a-z0-9\_\-\.]+)@([a-z0-9\_\-\.]+)/';
$str = preg_replace($email_pattern,'\\1<a href=mailto:\\2@\\3>\\2@\\3</a>', ' '.$str);
return $str;
}
// 파일 사이즈를 kb, mb에 맞추어서 변환해서 리턴
function getfilesize($size) {
if(!$size) return '0 Byte';
if($size<1024) {
return ($size.' Byte');
} elseif($size >1024 && $size< 1024 *1024) {
return sprintf('%0.1f KB',$size / 1024);
}
else return sprintf('%0.2f MB',$size / (1024*1024));
}