문제
나는 php pdo를 배우고있다. 내 환경은 : NetBeans 6.5.1, XAMPP 1.7.0 이며이 코드가있어 연결되는 것 같습니다.
- dbname을 존재하지 않는 것으로 변경하면 예외가 발생합니다. "DB는 존재하지 않습니다".
- 사용자를 변경하면 "잘못된 로그인"이 발생합니다)
그러나 $ cn-> 쿼리를 호출하면 다음과 같습니다.
Apache.exe에서 처리되지 않은 Win32 예외가 발생했습니다
내가 뭘 잘못하고 있죠?
$hostname = 'localhost';
$username = 'crb';
$password = 'letmein';
try {
$cn = new PDO("mysql:host=$hostname;dbname=bitacora", $username, $password);
echo 'Connected to database<br />';
$sql = "SELECT * FROM usuario WHERE login = '".$login."' AND clave = '".$clave."'";
// Error here
foreach ($cn->query($sql) as $row) {
print $row['login'] .' - '. $row['clave'] . '<br />';
}
} catch (PDOException $e) {
echo $e->getMessage();
} catch (Exception $e) {
echo $e->getMessage();
}
다른 팁
$ CN이 유효합니까? 반환 값을 확인하십시오. 당신이 지금까지 묘사 한 것은 당신이 연결되어 있다고 확신하지 않습니다.
당신이 아직하지 않았다면, 나는 당신의 환경이 올바르게 작동하고 있는지 확인합니다.
- 사용자가 MySQL 자체 (MySQLQuery와 같은 사용)와 함께 작동하는지 확인하십시오.
- PHP가 MySQL에 연결할 수 있는지 확인하십시오. 모든 새로운 설정에 phpmyadmin을 설치하여 (제자리에 두지 않더라도) 작업 연결이 양호한 지 확인합니다.
- 오류에 대한 예외를 통해 PDO가 있습니다 (참조 http://us2.php.net/manual/en/pdo.error handling.php) 오류가 어디에서 발생하는지 확인합니다.
내 생각에 MySQL에 연결되지 않았는데, 이는 데이터베이스를 변경할 수 없다는 것을 설명 할 것입니다.
제휴하지 않습니다 StackOverflow