이런 코딩은 허접한 코딩인가요 ㅜㅜ? 정보
이런 코딩은 허접한 코딩인가요 ㅜㅜ?
본문
if($_POST[check] == "id"){
$result = ls_select("ls_member","*","where lsmb_id = '$_POST[check_id]'");
if(mysql_affected_rows() == 0){echo "사용해도 되는 ID 입니다.";}else{echo "이미 존재하는 ID 입니다.";}
}
$result = ls_select("ls_member","*","where lsmb_id = '$_POST[check_id]'");
if(mysql_affected_rows() == 0){echo "사용해도 되는 ID 입니다.";}else{echo "이미 존재하는 ID 입니다.";}
}
추천
0
0
댓글 12개

mysql_affected_rows() == 0 <- 이런거 쫌 그런가요--?

알아보기 쉽고 버그가 없다면 훌륭한 코드라고 생각합니다.

대장님 감사합니다 굽슨~

그런데 질문이 있는데요 위소스에서
$result = ls_select("ls_member","*","where lsmb_id = '$_POST[check_id]'");
이거를
$result = ls_select("ls_member","count(*)","where lsmb_id = '$_POST[check_id]'");
이렇게 하면 왜 정상적으로 작동이 안되는걸까요?
$result = ls_select("ls_member","*","where lsmb_id = '$_POST[check_id]'");
이거를
$result = ls_select("ls_member","count(*)","where lsmb_id = '$_POST[check_id]'");
이렇게 하면 왜 정상적으로 작동이 안되는걸까요?

$rs = mysql_query("select count(*) as cnt from is_member where ismb_id='$_POST[check_id])";
$num = mysql_result($rs, 0, cnt);
if($num > 0) alert("아이디 있음 ㅡㅡ");
count(*)는 select한 레코드의 갯수-정수형, *는 모든 필드 ... (와일드 문자)
맞나? 지금 배가고파서... ^^
그리고 두번째 문장에서 오류가 나는건 문법 오류입니다.
is_select()도 함수이고 count()도 함수입니다. 함수를 호출 할 때 매개변수(인자)를 함수로 전달 할 수 없습니다. ^^
$num = mysql_result($rs, 0, cnt);
if($num > 0) alert("아이디 있음 ㅡㅡ");
count(*)는 select한 레코드의 갯수-정수형, *는 모든 필드 ... (와일드 문자)
맞나? 지금 배가고파서... ^^
그리고 두번째 문장에서 오류가 나는건 문법 오류입니다.
is_select()도 함수이고 count()도 함수입니다. 함수를 호출 할 때 매개변수(인자)를 함수로 전달 할 수 없습니다. ^^

$result = ls_select("ls_member","*","where lsmb_id = '$_POST[check_id]'");
는 여러줄
$result = ls_select("ls_member","count(*)","where lsmb_id = '$_POST[check_id]'");
는 한줄
이렇게 되는게 아닐까요?
는 여러줄
$result = ls_select("ls_member","count(*)","where lsmb_id = '$_POST[check_id]'");
는 한줄
이렇게 되는게 아닐까요?

count(*) 로하게되면 선택된 결과물의 수만 리턴하는것 아닌가요?
잘 이해를 못하겠어요ㅠㅠ 여러줄이라는게 왜 여러줄이 나오는거죠?
잘 이해를 못하겠어요ㅠㅠ 여러줄이라는게 왜 여러줄이 나오는거죠?
허접코딩, 고급코딩 그런 기준 없습니다....
코딩은 말그대로 짜는 사람 맘입니다.....
고급코딩이라고 좋은거 아니구요, 허접코딩이라고 해서 나쁜거 아닙니다.
중요한건 효율성입니다.
일부 유명한 프로그래머들 중에는 몇줄로 끝나는 코딩을 클래스화해서 100줄 넘게 코딩해서 다른 사람이 못알아보게 코딩하는 분도 봤습니다.....
말그대로 입맛대로 입니다. ^^
코딩은 말그대로 짜는 사람 맘입니다.....
고급코딩이라고 좋은거 아니구요, 허접코딩이라고 해서 나쁜거 아닙니다.
중요한건 효율성입니다.
일부 유명한 프로그래머들 중에는 몇줄로 끝나는 코딩을 클래스화해서 100줄 넘게 코딩해서 다른 사람이 못알아보게 코딩하는 분도 봤습니다.....
말그대로 입맛대로 입니다. ^^

count(*) 이거와 * 이거를 통한 affecte_rows 의 결과가 왜 다른지 알려주세요 ㅠㅠ

count(*)는 읽어들인 모든 레코드(행)의 갯수를 갖어옵니다. 알리아스를 부여해서 불러오구요 정수형입니다.
from뒤에 *는 와일드 문자로 모든 필드를 읽어 오겠다는 뜻이죠.
읽어들인 레코드가 2개 이상이라면 2차원 배열로 결과를 읽어옵니다.
레코드가 1개라면 1차원 배열이겠죠?
count()는 group by처럼 필드를 묶어서 연산합니다.
위의 예제에서 count(*)와 count(ismb_id)는 같은 결과를 갖어옵니다.
from뒤에 *는 와일드 문자로 모든 필드를 읽어 오겠다는 뜻이죠.
읽어들인 레코드가 2개 이상이라면 2차원 배열로 결과를 읽어옵니다.
레코드가 1개라면 1차원 배열이겠죠?
count()는 group by처럼 필드를 묶어서 연산합니다.
위의 예제에서 count(*)와 count(ismb_id)는 같은 결과를 갖어옵니다.
count(*), * 차이를 묻는 거세요? count()는 함수에요...말그대로 몇개이냐? 를 묻는 함수 입니다.
그러니 몇개냐 물었으니 몇개인지만 답하는거죠, *는 전부를 얘기 합니다. 그러니 전부다 표현하는거죠.
코딩은 단순합니다...너무 복잡하게 생각하시지 마세요...
그러니 몇개냐 물었으니 몇개인지만 답하는거죠, *는 전부를 얘기 합니다. 그러니 전부다 표현하는거죠.
코딩은 단순합니다...너무 복잡하게 생각하시지 마세요...

select * ... where .... 는 0부터 N까지
select count(*) from ... 은 무조건 1
결과 record 수가 됩니다.
회원 id가 맞건 안 맞건 count(*)는 record를 가져 오기 때문에 다른 방법으로 check를 해야죠.
select count(*) from ... 은 무조건 1
결과 record 수가 됩니다.
회원 id가 맞건 안 맞건 count(*)는 record를 가져 오기 때문에 다른 방법으로 check를 해야죠.