2011-08-14 6 views
0

안녕하세요, 내 코드는 어떤 오류도주지는 않지만 db라는 이름의 결과는 아닙니다. 코드는 사용자가 PHP 파일에 입력하는 데이터를 처리하는 양식에 대해 다음과 같습니다. HTML 사용자 입력 코드 :데이터베이스 쿼리에서 오류가 발생하지 않습니다.

<html> 
<head> 
</head> 
<body> 
<form action="search.php"> 
<input type="text" name="search"> 
<input type="submit"> 

</body> 
</html> 

PHP 코드 :

 <?php 
$db = new mysqli("localhost","root","","acksocial"); 

if(mysqli_connect_error()) 
{ 
printf("Connection failed:%s \n",mysqli_connect_error()); 
exit(); 
} 

$name = mysqli_real_escape_string($db, $_POST['search']); 
$table = 'acksearch'; 

if($result = $db->query("SELECT * FROM $table WHERE name = $name", MYSQLI_ASSOC)) 
{ 
while($row = $result->fetcssh_object()) 
    { 

// $row is an associative array 

// Do something here 

echo "Name: ".$row['name']; 

echo " country: ".$row['country']; 

} 
} 
$db->close(); 

?> 

답변

1

mysqli_real_escape_string 문자열을 탈출하지만 쿼리 구문 오류가 있습니다, 그래서 그것을 인용하지 않습니다.

는로 교체 :

"... WHERE name = '$name'"... 

확인하고 신고 해주세요 (또는 로그, 또는 무엇이든) 오류 것은 데이터베이스 기능을 사용하는 경우.

+0

또한 MySQLi는 MySql과 같은 오류를 생성하지 않습니다. 오류를보고 싶다면 그들을 잡아야합니다. mysqli_error mysqli_errno를 참조하십시오. – transilvlad

관련 문제