2012-11-26 1 views
2

나는이 스크립트를 사용하고 있었고 실제 검색이 실행될 때와 "결과 없음"이 대답 일 때를 제외하고는 모든 것이 훌륭했습니다. 스크립트를 표시하고 싶었습니다.mysql 데이터베이스를 쿼리하려면이 PHP 스크립트에 관한 입력이 필요하십니까?

내가 어디에서 실패했는지 조사하기 위해 MySQLi를 사용해야한다는 것을 발견했을 때. 나는 2 일 동안이 대본에 있었고 나는 더 가까이 가려는 것 같았다. 여기 조금 도와 줘?

내가 사용하고 있습니다 : 오류 메시지 또는를 표시하는 것을 선택하는

mysqli_num_rows($page_query); 

단순히 것을 >0을 확인합니다

if(empty($_GET['query'])){ 
header ("Location: /same_page"); 
} 
else{ 
//connect 
include 'connection_script.php'; 

//Get the "Term" from the search box 
$query=mysql_real_escape_string($_GET['query']); 

$page_str = "SELECT * FROM $tblname WHERE name like '%$query%' or clan like '%$query%'"; 

$page_query = mysqli_query($con,$page_str)or die(mysql_error($con)); 

while($page_result = mysqli_fetch_assoc($page_query)){$datarow .= " <ul> 
<li>Banned player : <a target='_blank' href=\"http://path/tosomething/here=" . $page_result[name] . " \">" . $page_result[name] . "</a></li> 
<li>Clan Name : " . $page_result[clan] . "</li> 
<li>Reason : " . $page_result[reason] . "</li> 
<li>Posted By : " . $page_result[moderator] . "</li> 
<li>Date & Time : " . $page_result[dateandtime] . "</li> 
<li>Evidence : <a target='_blank' href=\"$page_result[evidence]\">Here</a></li> 
</ul><br />"; 
} 

echo $datarow; 
echo "<br />"; 

include 'dbclose.php'; 
} 

mysql_close($con); 
+3

동일한 스크립트에서 mysql_ 및 msqli_ 함수를 혼합해서는 안됩니다. 하나 또는 그보다 더 나은 아직 PDO로 마이 그 레이션 – samayo

+0

키를 사용하여 배열의 가치를 얻는 올바른 방법은 $ page_result [ 'name']입니까? – lvil

+0

나는 당신이 말하는 것이 혼합에 대해 사실이라는 것을 빨리 배우고있다. 두 가지를 시도하고 혼합하려는 것은 내 의도가 아니 었습니다. 나는 더 이상 mysql_ *을 사용해서는 안된다는 것을 알게되었다. 이것은 전환 과정에있는 나입니다. – LinuxOwner

답변

0

쿼리가 0을 반환하는 경우 무언가를 표시하기위한 조건 만 추가

 if(empty($_GET['query'])){ 
header ("Location: /same_page"); 
} 
else{ 
//connect 
include 'connection_script.php'; 

//Get the "Term" from the search box 
$query=mysql_real_escape_string($_GET['query']); 

$page_str = "SELECT * FROM $tblname WHERE name like '%$query%' or clan like '%$query%'"; 

$page_query = mysqli_query($con,$page_str)or die(mysql_error($con)); 

if (mysqli_num_rows($page_query) > 0){ 

while($page_result = mysqli_fetch_assoc($page_query)){$datarow .= " <ul> 
<li>Banned player : <a target='_blank' href=\"http://path/tosomething/here=" . $page_result[name] . " \">" . $page_result[name] . "</a></li> 
<li>Clan Name : " . $page_result[clan] . "</li> 
<li>Reason : " . $page_result[reason] . "</li> 
<li>Posted By : " . $page_result[moderator] . "</li> 
<li>Date & Time : " . $page_result[dateandtime] . "</li> 
<li>Evidence : <a target='_blank' href=\"$page_result[evidence]\">Here</a></li> 
</ul><br />"; 
} 

echo $datarow; 
echo "<br />"; 
} else { 
echo 'Your search returned 0 results'; 
} 

include 'dbclose.php'; 
} 

mysql_close($con); 
+0

응답 해 주셔서 감사합니다. Dave. 추가 된 조건을 삽입하면 스크립트는 더 이상 검색하지 않습니다. 그래서 그것은 그 대답이되어서는 안됩니다. 감사. – LinuxOwner

+0

이것을 [확인 됨]으로 표시하여 되돌립니다. 나는 모든 대답이 실제로 정확하다는 것을 추가하고 싶다. 내 문제는 MySQLi_의 새로운 형식에 대한 지식이 부족했기 때문에 계속되었습니다. 나는 또한 [여기] (http://www.codeofaninja.com/2012/02/php-ajax-pagination-mysqli-version.html)을 사용하는 예를 발견했다는 것을 나눠주고 싶다. – LinuxOwner

1

당신과 행의 수를 검색 할 수 있습니다 결과

관련 문제