2012-05-20 4 views
1

내 데이터가 데이터베이스에서 가져 오지 않았습니다. 나는 이유를 모른다. 이와PHP에서 치명적인 오류가 발생했습니다 : 최대 실행 시간이 30 초를 초과했습니다

while($row=mysql_fetch_array($q)); 

:이와

echo 
<table border='1'> 

:

mysql_connect("localhost","root",""); 
mysql_select_db("managment"); 

$q=mysql_query("select name,father_name,dob,qualification,identity_type,identity_no,gender,email,address1,city,state,country,phone_no,mobile_no,emergency_no,relation,address from employee"); 

echo <table border='1'> 
    <tr> 
     <th>NAME</th> 
     <th>Fathet Name</th> 
     <th>Dob</th> 
     <th>Qualification</th> 
     <th>Identity Type</th> 
     <th>Identity No</th> 
     <th>Gender</th> 
     <th>Email</th> 
     <th>address</th> 
     <th>City</th> 
     <th>State</th> 
     <th>COUNTRY</th> 
     <th>Phone</th> 
     <th>Mobile</th> 
     <th>Emergency No</th> 
     <th>Relation</th> 
     <th>Address</th>"; 

while($row=mysql_fetch_array($q)); 
{ 
    echo "<tr> 
      <td>$row[name]</td> 
      <td>$row[father_name]</td> 
      <td>$row[dob]</td> 
      <td>$row[qualification]</td> 
      <td>$row[identity_type]</td> 
      <td>$row[identity_no]</td> 
      <td>$row[gender]</td> 
      <td>$row[email]</td> 
      <td>$row[address1]</td> 
      <td>$row[city]</td> 
      <td>$row[state]</td> 
      <td>$row[country]</td> 
      <td>$row[phone_no]</td> 
      <td>$row[mobile_no]</td> 
      <td>$row[emergency_no]</td> 
      <td>$row[relation]</td> 
      <td>$row[address]</td> 
      </tr><br>"; 
} 

echo "</table>"; 
+3

'while()'다음에';'를 제거하십시오. 고대 mysql_ * 함수로 새로운 코드 작성을 중단하십시오. 그들은 더 이상 유지되지 않으며 커뮤니티는 [비추천 프로세스]를 시작했습니다 (http://news.php.net/php.internals/53799). 대신 준비된 구문을 배우고 [PDO] (http://php.net/pdo) 또는 [MySQLi] (http://php.net/mysqli)를 사용해야합니다. 만약 당신이 배울 점이 있다면, 여기 [PDO 관련 튜토리얼] (http://wiki.hashphp.org/PDO_Tutorial_for_MySQL_Developers). – DCoder

+0

"SELECT *"를 사용하십시오. 훨씬 쉽고 서버가 느려져 –

+0

을 알게 될 때까지 느려지지 않고 때로는 더 빠릅니다 ... –

답변

2

이 교체이

echo " 
<table border='1'> 

을 그리고 대체

,
while($row=mysql_fetch_array($q)) 

또한, 이미 제안 된 DCoder와 같이 PDO 또는 mysqli_ * functions()를 사용하여 시작하십시오. mysql_ * 함수는 현재 사용되지 않습니다. 당신은 사용자 및 암호를 설정해야합니다

+0

'데이터베이스에 날짜와 휴대 전화 번호를 삽입했지만 제대로 삽입되지 않았습니다. 을 날짜 삽입 12-04-1988로 삽입하지만 데이터베이스는 12로만 표시되고 모바일에는 8882989855가 삽입되지만 데이터베이스 쇼 2147483647..i는 문제가 무엇인지 알지 못합니다 ... 형식이 내 sql 데이터베이스에서 설정되었습니다 .... pls help me . date int (20) 모바일 int (20)' – user1406284

+0

데이터베이스에 삽입하기 전에 날짜에 strtotime() 함수를 사용하십시오. http://php.net/manual/en/function.strtotime.php – Jeroen

0

및 오류 경우 encoutring 당신이 언급 하나, 쿼리하기 전에 코드 줄을 시도이다 (당신이 하나를 가지고 가정) : 일반적으로

void set_time_limit (int $seconds) 

보고, Jeroen의 대답이 아마도 당신의 문제를 해결할 것입니다.

+1

및/또는 쿼리에서'limit'을 사용합니다. – John

+0

'날짜와 휴대폰 번호를 데이터베이스에 삽입했지만 제대로 삽입되지 않았습니다. 을 날짜 삽입 12-04-1988로 삽입하지만 데이터베이스는 12로만 표시되고 모바일에는 8882989855가 삽입되지만 데이터베이스 쇼 2147483647..i는 문제가 무엇인지 알지 못합니다 ... 형식이 내 sql 데이터베이스에서 설정되었습니다 .... pls help me . date int (20) 모바일 int (20)' – user1406284

+0

날짜를 날짜로 설정하면 날짜 옵션이 있습니다. –

0

이 같은 최대 실행 시간을 연장 할 수 :

ini_set('max_execution_time', 600); //600 seconds = 10 minutes 
0

을 당신은 또한 {에서 변수를 바꿈}과 키를

"$ 행 [이름]"{ "이어야한다을 인용 할 필요가 $ row [ 'name']} "

echo "<tr> 
     <td>{$row['name']}</td> 
     <td>{$row['father_name']}</td> 
     <td>{$row['dob']}</td> 
     <td>{$row['qualification']}</td> 
     <td>{$row['identity_type']}</td> 
     <td>{$row['identity_no']}</td> 
     <td>{$row['gender']}</td> 
     <td>{$row['email']}</td> 
     <td>{$row['address1']}</td> 
     <td>{$row['city']}</td> 
     <td>{$row['state']}</td> 
     <td>{$row['country']}</td> 
     <td>{$row['phone_no']}</td> 
     <td>{$row['mobile_no']}</td> 
     <td>{$row['emergency_no']}</td> 
     <td>{$row['relation']}</td> 
     <td>{$row['address']}</td> 
     </tr><br>"; 
관련 문제