delphi4arab منتديات دلفي للعرب

نسخة كاملة : ماهو الخطأ في هذا الكود select type from login where email
أنت حالياً تتصفح نسخة خفيفة من المنتدى . مشاهدة نسخة كاملة مع جميع الأشكال الجمالية .
ماهو الخطأ في هذا الكود ؟

PHP كود :
ADOQuery1.SQL.Clear;
 
 ADOQuery1.SQL.Add('select type from login where email = '''+edit1.text+''' ');
 
 ADOQuery1.ExecSQL;
 
 if not ADOQuery1.Eof = 'ADMIN' then
  begin
    form3
.Show;
 
   form2.Hide;
 
 end
  else
  if ADOQuery1
.Eof = 'USER' then
  begin
    form4
.Show;
 
   form2.Hide;
 
 end; 
السلام عليكم عندما تستخدم Select في الـ Query اي ان الـ Query سيعيد سجلات لا تستخدم ExecSQL و انما استخدم Open يدلا من ذلك

جرب هكذا
PHP كود :
 ADOQuery1.SQL.Clear;
 
 ADOQuery1.SQL.Add('select type from login where email = :email');
 
 ADOQuery1.Parameters.ParamByName('email').Value := Edit1.Text;
 
 ADOQuery1.Open;
 
 if not ADOQuery1.Fields[0].AsString = 'ADMIN' then
  begin
    form3
.Show;
 
   form2.Hide;
 
 end
  else
  if ADOQuery1
.Fields[0].AsString =  'USER' then
  begin
    form4
.Show;
 
   form2.Hide;
 
 end; 
PHP كود :
if not ADOQuery1.Eof = 'ADMIN' then 

الامر Eof  يعيد فقط قيمة بوليانيه true or false هل وصل الى آخر سجل ام لا
فطريقة صياغتك للشرط خاطئة والصح انك اولاً تكتب الاستعلام التالي
PHP كود :
if ADOQuery1.fieldbyname('FieldName').value:='Admin'; 

أو
PHP كود :
if ADOQuery1.fields[Fields Number].value:='Admin'; 
عند تنفيذ الكود هناك خطأ لم افهم؟؟
[dcc32 Error] Unit2.pas(43): E2015 Operator not applicable to this operand type
السلام عليكم ما هو الكود الذي استخدمته ما هو نوع الحقل المستخدم