إنتقال للمحتوى

  • تسجيل الدخول عبر الفيس بوك تسجيل الدخول عبر تويتر Log In with LinkedIn Log In with Google      تسجيل دخول    
  • إنشاء حساب

صورة
- - - - -

Ip Address


12 رد (ردود) على هذا الموضوع

#1 eddy

eddy

    مشترك

  • الأعضــاء
  • 133 مشاركة

تاريخ المشاركة 03 April 2007 - 04:56 PM

السلام عليكم
دلوقتي انا عاوز اجيب الأي بي بتاع الجهاز عن طريق الفورم او الأس كيو ال
و بكتب الكود ده

select sys_context('usernv','ip_address') from dual

لكن للاسف النتيجه اللي بتجيلي عباره عن تيبول فاضي متكون من كولومن واحد اسمه
sys_context('usernv','ip_address')
ايه الحل يا جماعه ؟؟؟؟؟؟

Senior Developer


#2 basilt

basilt

    مشترك

  • الأعضــاء
  • 90 مشاركة
  • الاسم الأول:b
  • اسم العائلة:t
  • البـلـد: Country Flag
  • الاهتمامات:Reading
    Sports
    Football
    Oracle Projects

تاريخ المشاركة 04 April 2007 - 10:52 AM

السلام عليكم ,

للحصول على ال IP_Address استخدم هذه الكود :


 select SYS_CONTEXT('USERENV', 'IP_ADDRESS', 15) ipaddr from dual;


وبالتوفيق ..
OCP Oracle Certified Professional Developer

صورة
Oracle HRMS Implementer
Analyst /Business HR Package Systems

#3 هانى سند

هانى سند

    مشرف سابق وعضو مميز

  • المجموعة الماسية
  • 743 مشاركة

تاريخ المشاركة 04 April 2007 - 11:03 AM

السلام عليكم و رحمة الله وبركاته

أخي الكريم eddy

الSELECT لا ترجع قيمة لانك تكتب USERENV بطريقة خاطئة فانت تكتبها USERNV
و الصحيح هو USERENV

و اليك نسخة مصححة من الكود
SELECT SYS_CONTEXT('USERENV','IP_ADDRESS') FROM DUAL

بقي فقط توضيح البارمتر الثالث الذي اضافه الأخ basilt و هو 15
و هو خلص بالLENGTH اي طول الRETURN او النتيجة فقط و القيمة الافتراضية له هي 256 BYTE
و يمكن استخدام اي رقم من 1 الي 4000 و حتي اذا حددت رقم غير صالح سيتم تجاهله و استخدام القيمة الافتراضية
اي ان حذفه لن يؤثر علي الجملة

بالتوفيق

#4 eddy

eddy

    مشترك

  • الأعضــاء
  • 133 مشاركة

تاريخ المشاركة 04 April 2007 - 02:07 PM

شكرا يا جماعه ... جزاكم الله كل خير
جارى التجربه

Senior Developer


#5 eddy

eddy

    مشترك

  • الأعضــاء
  • 133 مشاركة

تاريخ المشاركة 05 April 2007 - 05:39 PM

جربت الكود اكتر من مره و اخذته كوبي و بست ومع ذلك مش شغال

ايه السبب؟؟ّّّّّّّّّّ!!!!!!!!!!!!!!!!!

Senior Developer


#6 هانى سند

هانى سند

    مشرف سابق وعضو مميز

  • المجموعة الماسية
  • 743 مشاركة

تاريخ المشاركة 06 April 2007 - 01:23 AM

السلام عليكم

أخي الكريم
الكود يعمل عندي ولا يوجد به اي مشكلة

و هذا نتيجة تشغيله
SQL> SELECT SYS_CONTEXT('USERENV','IP_ADDRESS') FROM DUAL
  2 ;

SYS_CONTEXT('USERENV','IP_ADDRESS')											 
--------------------------------------------------------------------------------
62.69.150.106																   

SQL> SPOOL OFF
ما الخطأ الذي يظهر لك او ما النتيجة التي تظهر لك
و ما الاصدار الذي تستخدمه ؟؟؟؟
أرجو الاجابة لااستطيع مساعدتك

بالتوفيق

#7 eddy

eddy

    مشترك

  • الأعضــاء
  • 133 مشاركة

تاريخ المشاركة 06 April 2007 - 01:43 AM

شكرا جدا لأهتمامك
انا استخدم Oracle 10g
iSQL
يعنى المفروض كل شيء عادى
وجربته علي اكتر من جهاز
والنتيجه اللي بتظهرلى هي
SYS_CONTEXT('USERENV','IP_ADDRESS')





يعنى جدول فاضي
!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!

Senior Developer


#8 comander

comander

    مشترك

  • الأعضــاء
  • 59 مشاركة
  • البـلـد: Country Flag

تاريخ المشاركة 06 April 2007 - 10:02 AM

أنا برضه بيظهرلى جدول فاضى

#9 hanyfreedom

hanyfreedom

    مشرف سابق وعضو مميز

  • المجموعة الماسية
  • 1,481 مشاركة
  • البـلـد: Country Flag
  • الاهتمامات:Chess , Sudoku

تاريخ المشاركة 26 April 2007 - 07:10 AM

أنا برضه بيظهر لى جدول فاضى هكذا :-

SQL> SELECT SYS_CONTEXT('USERENV','IP_ADDRESS') FROM DUAL;

SYS_CONTEXT('USERENV','IP_ADDRESS')
----------------------------------------------------------


فأيه الحل و شكراًُ

#10 hassan978hmk

hassan978hmk

    مشترك

  • الأعضــاء
  • 90 مشاركة

تاريخ المشاركة 26 April 2007 - 10:57 AM

هذا الاستعلام يعطيني نتيجة صحيحة في حال نفذته على جهاز CLINET وفي حال نفذته على الجهاز الذي يحوي قاعدة البيانات يعطي سطراً فارغاً.
طوبىّ لِمن إذا أُنعمَ عليه شكَر , وإذا ابتليَ صبَر , وإذا أذنَبَ استغفر , وإذا غضبَ حَلِم , وإذا حكَمَ عدَل

صورة

#11 mozak

mozak

    مشترك

  • الأعضــاء
  • 91 مشاركة

تاريخ المشاركة 01 May 2007 - 01:03 AM

ولكن هذا الكود
يعطى الأى بى الخاص بالجهاز المثبت عليه قاعدة البيانات
ولو استخدمته من الclient machine
سوف يعطى الأى بى الخاص ايضا بالسيرفر وليس الخاص بال client
ولأظهار الأى بى الخاص يجب استخدام الwebutil على ما أعتقد

#12 okm461

okm461

    عضو

  • الأعضــاء
  • 40 مشاركة
  • البـلـد: Country Flag

تاريخ المشاركة 02 May 2007 - 09:06 PM

ولكن هذا الكود
يعطى الأى بى الخاص بالجهاز المثبت عليه قاعدة البيانات
ولو استخدمته من الclient machine
سوف يعطى الأى بى الخاص ايضا بالسيرفر وليس الخاص بال client
ولأظهار الأى بى الخاص يجب استخدام الwebutil على ما أعتقد

ده صحيح لأن شغل webutil بيكون على ال client
ده فى حالة العمل على 9 او 10g
اما فى حالة العمل على 6i فكل البيانات بتاع الاجهزة المتصلة بقاعدة البيانات موجودة فى
view V_$SSENSION وده موجود تحت المستخدم SYS

#13 amino1

amino1

    عضو نشط

  • الأعضــاء
  • 272 مشاركة
  • الاسم الأول:أمين
  • اسم العائلة:صلاح الدين
  • البـلـد: Country Flag
  • المنصب الحالي:المدير التقني لمؤسسة البوابة المتقدمة

تاريخ المشاركة 09 May 2007 - 03:37 PM

السلام عليكم ورحمة الله وبركاته
دخلت على المستخدم system/manager
النسخة 8i
كتبت هذا الكود
SELECT SYS_CONTEXT('USERENV','IP_ADDRESS') FROM DUAL

أعطاني الـ ip
وجزاكم الله خير :)

اللهم علمنا ما ينفعنا و أنفعنا بما علمتنا

أبو نسيبة

سبحان الله والحمد لله ولا إله إلا الله و الله أكبر
موقع إذاعة طريق الإسلام