SORU
8 EYLÜL 2009, Salı


Ekleme NULL değerleri PDO kullanarak mı?

Bu kodu kullanıyorum ve hayal kırıklığı aşmış durumdayım:

try {
    $dbh = new PDO('mysql:dbname=' . DB . ';host=' . HOST, USER, PASS);
    $dbh->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION);
    $dbh->setAttribute(PDO::MYSQL_ATTR_INIT_COMMAND, "SET NAMES 'utf8'");
}
catch(PDOException $e)
{
    ...
}
$stmt = $dbh->prepare('INSERT INTO table(v1, v2, ...) VALUES(:v1, :v2, ...)');
$stmt->bindParam(':v1', PDO::PARAM_NULL); // --> Here's the problem

PDO::PARAM_NULL, null, '', ve bu hata başarısız at:

Ölümcül hata: /Başvuruya göre parametre 2/... . pass tercih

CEVAP
8 EYLÜL 2009, Salı


Sadece PDO öğreniyorum, ama bindValue, bindParam kullanmanız gerektiğini düşünüyorum

bindParam bir değişken alır, başvuru ve bindParam arama sırasında bir değer almıyor. Php docs üzerinde bir açıklama olarak bunu buldum

bindValue(':param', null, PDO::PARAM_INT);

EDİT: bindValue(':param', null, PDO::PARAM_NULL); bunu yapmak için cazip olabilir ama herkes için işe yaramadı P. S. (raporlama için Tıraş teşekkür edeceksiniz.)

Bunu Paylaş:
  • Google+
  • E-Posta
Etiketler:

YORUMLAR

SPONSOR VİDEO

Rastgele Yazarlar

  • humanHardDrive

    humanHardDri

    16 Mart 2011
  • paikimchung

    paikimchung

    12 Mayıs 2006
  • The Onion

    The Onion

    14 Mart 2006