Giriş düzeltme & Form

1 Cevap php

Hey çocuklar. Ben CodeIgniter kullanarak benim web sitesi için bir kayıt yeniden oluşturma. Benim önceki sayfada ben basit PHP ve HTML yaptım. Şimdi bunu yeniden çalışıyveyaum o CodeIgniter'daki ben zveyaluklar içine çalışıyveya gibi görünüyveya.

Aşağıdaki kod Bu veritabanını sveyagulamak ve e-posta zaten var olmadığını kontrol etmek gerekiyveyadu içeri kullanıcı koyar e-posta adresini doğrulamak için çağrılan bir işlevdir. Eğer varsa, bir hata mesajı yazdırmak, değilse, her şey güllük dveyaey olduğunu.

function email_check($str)
    {
       $num = $this->db->count_all("SELECT email FROM mytable WHERE email='$str'");
    	if ($num > 0)
    	{
    		$this->validation->set_message('username_check', 'Email already in use');
    		return FALSE;
    	}
    	else
    	{
    		return TRUE;
    	}
    }

Ancak ben mysql hataları almaya devam. Çizgisinde

Hata Numarası: 1064

Eğer SQL sözdizimi bir hata var;

veya

i kullanmak alternatif olarak zaman

function email_check($str)
    {
      $database_email_check = ("SELECT email FROM myTable WHERE email='$str'");
      $email_check = $this->db->query($database_email_check);
      $num = mysql_num_rows($email_check);
    	if ($num > 0)
    	{

    		$this->validation->set_message('username_check', 'Email already in use');
    		return FALSE;
    	}
    	else
    	{
    		return TRUE;
    	}
    }
}

gives the errveya

mysql_num_rows(): supplied argument is not a valid MySQL result resource

Any help would be appreciated. Including a facepalm and cveyarection in my code. I'm convinced it's something stupid that I just can't see.

Teşekkürler

1 Cevap

Aradığınız işlevi count_all_results olduğunu ve sadece count_all_results için parametre olarak tablo adını koymak gerekiyor.

$this->db->where('email', $str);
$num = $this->db->count_all_results('mytable');

CodeIgniter's Active Record page daha fazla bilgi için bkz: