PHP PDO ¿ben neyi yanlış yapıyorum?

3 Cevap php

Ben PHP PDO öğreniyorum; NetBeans 6.5.1, XAMPP 1.7.0 ve bunu bağlamak gibi görünüyor, bu kodu vardır: benim ortamıdır.

  • Ben olmayan birine dbname değiştirirseniz, bu durum "var değil db" yükseltir
  • Ben kullanıcıyı değiştirmek, o) "login yanlış" yükseltir

Ben $ cn-> sorgu çağırdığınızda ama, o yükseltir:

Işlenmeyen bir Win32 durum apache.exe oluştu

Ben yanlış ne yapıyorum?

$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();
}

3 Cevap

Bu XAMPP 1.7.0 bir hata. 1.7.1 yükseltme veya takip these instructions sizin 1.7.0 kurulumu düzeltmek belirleyin.

$ Geçerli cn mı? Dönüş değerini kontrol edin. Ne kadar tarif ettik bağlı olduğunuz beni ikna etmez.

Zaten değil varsa, ben senin ortam doğru çalıştığından emin olun istiyorum.

  1. Kullanıcı (mysqlquery gibi bir şey kullanarak) MySQL kendisi ile çalıştığından emin olmak için kontrol edin.
  2. Emin php MySQL bağlanabilir olun. Ben iyi bir çalışma bağlantısı olduğundan emin olmak için, (Ben bir yerde bırakmayın bile) ben tüm yeni kurulumları üzerinde phpmyadmin yükleyin.
  3. Hataları hemen meydana nerede görmek için (http://us2.php.net/manual/en/pdo.error-handling.php bakınız) hataları istisnalar yoluyla PDO'yu var.

Benim tahminim hiç veritabanını değiştirmek için yetersizlik açıklıyor MySQL, bağlanma değil olmasıdır.