2012-08-15 4 views
0

질문이 있습니다. 관리 패널을 만드는 중입니다. 이번이 처음이며, 몇 가지 문제가 있습니다.PHP - 로그인 스크립트가 올바르게 작동하지 않습니다.

1. 문제 나는이 방법으로 mysqli_fetch_assoc()를 사용하고 : 제가 DB에 어떤 항목이 있는지 확인하기 위해 이것을 사용

$row_cnt = mysqli_fetch_assoc($result); 
     printf('Result set has %d rows.<br />', $row_cnt); 

    if ($row_cnt['COUNT(id)'] == 0) { 
     return false; 
    } else { 
     return true; 
    } 

는, 내가 삽입 어떤 일 1 매번 반환 들판에. DB에 항목이 없으면 0을 반환해야한다고 생각합니다. 틀렸습니까?


관리자 패널이있는 첫 번째 로그인 페이지입니다.

+0

사용자 ID 확인을 위해 사용중인 쿼리를 표시 할 수 있습니까? – BugFinder

+1

앨리어스'SELECT COUNT (id) AS 카운터 table_reg'을 사용하십시오. 그런 다음'if ($ row_cnt [ 'Counter'] == 0)' –

+0

시도했지만 운이 없다. 데이터베이스에있는 사용자 이름과 암호를 삽입하면 로그인 페이지로 돌아갑니다. 대신 DB에없는 사용자 이름과 암호를 삽입하면 평소와 같이 로그인 페이지로 리디렉션되지만 내 개인 디버그 메시지가 나타납니다. 결과 집합에 1 행이 있습니다. 사용자 이름 또는 비밀번호가 유효하지 않습니다. – Mark

답변

0

그냥 빨리 들여다 복용 -, 당신은 mysqli_real_escape ... 기능을 사용할 필요가

는 mysql_real_escape_string가 된 mysql_connect를 통해 확립 될 수있는 연결이 필요를 - http://php.net/manual/en/mysqli.real-escape-string.php

+0

오, 감사합니다. 나는이 방법으로 선언문을 수정했지만 불행히도 내 문제를 해결하지 못한다 : '$ username = mysqli_real_escape_string ($ link, $ username); $ password = mysqli_real_escape_string ($ link, $ password); ' – Mark

+0

오류보고 기능을 켜셨습니까? 이것을 "error_reporting (-1); 스크립트 맨 위에 놓습니다." 다시 실행하십시오. 그러면 모든 경고, 오류 및 메시지가 표시됩니다. – Dan

+0

나는 어디에서나 그 라인을 추가하고, XAMPP를 재시작했다. 그러나 스크립트를 실행할 때 아무 일도 일어나지 않는다. 에러 또는 경고 없음 – Mark

0

을 당신은 당신이 무엇 SQL은 지정하지 않는 실제로 사용하지만 비슷하다고 가정합니다.

Select Count(*) from mytable where myvalue= 'Something' 

RowCount는 항상 1입니다. Count가 항상 반환됩니다.

+0

다른 파일에서 오류가 해결되었습니다 : P – Mark

관련 문제