PDA

View Full Version : نحوه پیاده سازی یک تالار گفتگو



sm
شنبه 01 مرداد 1384, 20:24 عصر
با سلام
من میخوام یه اتاق گفتگو به سایتم اضافه کنم که کاربران بتونن از طریق اون برای هم پیغام بفرستند
این کار رو با استفاده از تعریف متغیرهای application انجام دادم و کار میکنه فقط مشکلی که داره اینه که مثلا دو نفر دارن با هم chat میکنن و یکی منتظر جواب اون یکیه فرد دوم جوابش رو میده و توی صفحه ای که خودش هست جواب خودشو میبینه چون با send کردن جواب دو تابع فراخوانی میشه که محتویات گفتگوها رو در محل مورد نظر نشون میده ولی اون نفر اولی که منتظر جواب هست تا صفحه یه بار رفرش نشه جواب طرف مقابلش رو نمیبینه آخه توی pageload هم توابعی که باید متن پیغامها رو نشون بده رو فراخوانی کردم ولی تا کاربر عملی روی فرمش انجام نده و یا صفحه رفرش نشه اون توابع فراخوانی نمیشه . ممنون میشم اگه راهنماییم کنین .
مثلا باید هر 2 یا 3 ثانیه یه بار اون توابع بطور خودکار فراخوانی بشن میخواستم بدونم چجوری میشه اینکار رو کرد .

mehrzad007
شنبه 01 مرداد 1384, 20:44 عصر
معمولا توی برنامه های چت تحت وب برنامه رو مجبور می کنند که هر چند ثانیه خودشو رفرش کنه! البته کلا این نوع برنامه ها روش خوبی نیست . ببین می تونی با امکانات ای اس پی دات نت جوری برنامه رو پیاده سازی کنی که فقط یکی از قسمتهای برنامه رفرش بشه و باقی صفحه دستکاری نشه . برای این که زمان زیادی از کاربر هدر نره و ....

sm
شنبه 01 مرداد 1384, 22:10 عصر
میشه بیشتر توضیح بدین؟
در ضمن نمیخوام صفحه رفرش بشه چون در صورت رفرش شدن متن داخل textbox هم پاک میشه و مثلا اگه کاربر درحال تایپ باشه متنش پاک میشه
اگه بشه هر چند ثانیه یه بار صفحه postback بشه فکر کنم مشکل حل بشه ولی نمیدونم چجوری باید اینکار رو کرد

Syamah
یک شنبه 20 اسفند 1385, 17:04 عصر
راستی آقای SM میشه بگید چطوری میشه یه تالار گفتگو را طراحی کنید .
من در تمام وب سایت ها گشتم هیچ راهنمایی پیدا نکردم ؟

ali_yousefian19
یک شنبه 20 اسفند 1385, 19:09 عصر
سوال قشنگی مطرح شده لطفا بزرگان راهنمایی فرمایید.

ghabil
یک شنبه 20 اسفند 1385, 20:31 عصر
میشه بیشتر توضیح بدین؟
در ضمن نمیخوام صفحه رفرش بشه چون در صورت رفرش شدن متن داخل textbox هم پاک میشه و مثلا اگه کاربر درحال تایپ باشه متنش پاک میشه
اگه بشه هر چند ثانیه یه بار صفحه postback بشه فکر کنم مشکل حل بشه ولی نمیدونم چجوری باید اینکار رو کرد

لازم نیست کل صفحه رو Refresh کنی میتونی اون تیکه ای که نوشته های طرف مقابل رو نشون میده رو بصورت یک Inline Farme تعریف کنی و فقط اون فریم رو Refresh کنی.


با سلام.
مثلا باید هر 2 یا 3 ثانیه یه بار اون توابع بطور خودکار فراخوانی بشن میخواستم بدونم چجوری میشه اینکار رو کرد .

با گذاشتن این متا کد در هدر مثلا هر 10 ثانبه یکبار Refresh میشه:


<META HTTP-EQUIV="Refresh" CONTENT="10">


طبیعتا میزاریش توی هدر فریمت دیگه :چشمک:

یادم رفت بگم اینها روشهای قدیمی هستند حالا دیگه با وجود آژاکس خیلی راحتتر میشه اینجور چیزها رو پیاده سازی کرد هرچند که خود آژاکس هم اصالتا چیز جدیدی نیست.