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

  • Engadget

    Engadget

    18 EYLÜL 2006
  • hoorahjencar

    hoorahjencar

    6 HAZİRAN 2007
  • Joseph Hayhoe

    Joseph Hayho

    20 Mayıs 2010