nasıl kullanarak birden $ _name kullanmak zend çerçeve çalışma Zend_Db_Table_Abstract uzanır

2 Cevap php

Biz böyle yapmaya çalıştım, ancak bazı errors.Our tablo isimleri Kullanıcılar ve mesajları vardır gösteriyor.

<?php

class Application_Model_childconnect1 extends Zend_Db_Table_Abstract
{
    protected $_name = 'users';

    public function loginvalidation($username,$pwd)
    {


        $row = $this->fetchRow('UserName = \'' . $username . '\'and UserPW = \''. $pwd . '\'');
        if (!$row)
        {
            $msg="invalid";
            return $msg;
        }
        else
        {
            return $row->toArray();
        }

    }

    protected $_name = 'messages';

     public function replymessage($message)
      {

        $data=array(
            'MessageText'=>$message
              );
        $this->insert($data);
      }


}

2 Cevap

Zend_Db_Table, tanımı gereği olan bir Table Data Gateway olduğu

Bir veritabanı tablosuna bir ağ geçidi gibi davranan bir nesne. Bir örnek tablodaki tüm satırları işler.

hangi sırayla size masanın başına bir sınıf var ve sınıf başına birden fazla isim var anlamına gelir. Bunu düzgün kullanmayı öğrenmek için Zend Framework Başvuru Kılavuzu'na bakın:

Kurulum sahip olarak uygulama için bekliyoruz da, kimlik doğrulama işlemek için Zend Auth kullanarak içine bakmak isteyebilirsiniz.

Bunu bir kenara bırakırsak o Zend_Db_Select sınıfına yararlanarak genel olarak ZF yararlanarak olacak eğer yardımcı olabilir.

<?php
public function loginvalidation($username,$pwd)
{
  $s = $this->select();
  $s->where('UserNmae = ?',$username)
  $s->where('UserPW = ?',$pwd);

  $rowset = $this->fetchall($s);
  if(count($rowset) == 1)
  {
   return $row->current()->toArray();
  } else {
   return "Invalid"
  }
}

Eğer gerçekten elle SQL oluşturmak istiyorsanız siz de bunu yapabilirsiniz. Sadece Zend_Db_Adapter Nesne query yöntemini kullanın.

<?php
public function loginvalidation($username,$pwd)
{
  $rowset = $this->getAdapter()->query('UserName = \'' . $username . '\'and UserPW = \''. $pwd . '\'');
  if(count($rowset) == 1)
  {
   return $row->current()->toArray();
  } else {
   return "Invalid"
  }
}