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

  • hidetake takayama

    hidetake tak

    3 Mart 2009
  • jat4011

    jat4011

    16 EKİM 2010
  • psidot

    psidot

    2 Kasım 2006