PDA

View Full Version : گفتگو: پیاده سازی یک وب سایت پویا بوسیله ajax



yaqubian
سه شنبه 04 تیر 1387, 16:07 عصر
سلام دوستان
می خواستم اگه موافقید واسه علاقمندان ajax شروع کنیم به آموزش طراحی یه وب سایت پویا از ابتدا تا سطح حرفه ای بوسیله ajax البته اگه عمری باقی بود. دوستان لطفا نظراتشون رو بدن.
ممنون - موفق باشید.

Bahram0110
سه شنبه 04 تیر 1387, 17:14 عصر
سلام
كار خوبيه
واسه ما مبتديا خوبه
اميدوارم موفق باشي

yaqubian
سه شنبه 04 تیر 1387, 23:05 عصر
اختیار دارین آقا بهرام - ما انگشت کوچولوی شما هم نمی شیم.
مرسی در هر صورت
موفق باشین - ببینیم نظر بقیه چیه - اگه ok بود شروع می کنیم انشاءالله

bikar_kgk
چهارشنبه 05 تیر 1387, 00:36 صبح
اگه اینکارا بکنی واقعا باحالی

meisambandari
چهارشنبه 05 تیر 1387, 09:02 صبح
سلام دوستان
می خواستم اگه موافقید واسه علاقمندان ajax شروع کنیم به آموزش طراحی یه وب سایت پویا از ابتدا تا سطح حرفه ای بوسیله ajax البته اگه عمری باقی بود. دوستان لطفا نظراتشون رو بدن.
ممنون - موفق باشید.
ایول بابا دمت گرم

امید امرایی
چهارشنبه 05 تیر 1387, 21:04 عصر
کاره بسیار خوبیه
موافقم

bob_moj
جمعه 07 تیر 1387, 01:52 صبح
به خاطر دل بزرگت برایتان ارزوی موفقیتهای بزرگتر را داریم

nejat_mohammadhossein
جمعه 07 تیر 1387, 15:19 عصر
سلام
موافقم.عالیه

محمدامین شریفی
جمعه 07 تیر 1387, 18:24 عصر
خوب چراکه نه ولی فکر نمی کنی تو همین وبگاه هم در این مورد بحث شده است.
دوست خوبم اگه بقیه موافق باشند.شما که هم در asp و هم php دستی داری.ای جکس را از این جهت نگاه کن:نحوه ارتباط به وسیله webservice در ajax
پیروز باشی

vahid4134
جمعه 07 تیر 1387, 18:38 عصر
فقط امیدوارم در ابتدا روش درست استفاده از ajax هم یادآوری شود
(فکر نمی کنم ajax بیشتر از سه چهار تا پست نیاز به آموزش داشته باشه)

yaqubian
شنبه 08 تیر 1387, 16:55 عصر
بنام خدا – جلسه اول - XMLHttpRequest
AJAX یه اسم خیلی جذاب واسه یه نوع برنامه نویسیه که از سال 2005 به بعد مورد توجه بیشتری قرار گرفت و استفاده کردن سایتهایی مثل google و یه چند تا دیگه، به محبوبیت اون اضافه کرد.
AJAX در حقیقت چیزی نیست جز ترکیب نامتقارن Javascript و XML یعنی همون Asynchronous Javascript and XML که البته مردم مثل خیلی چیزهای دیگه که دوست دارن مخفف اون رو به کار ببرند این ترکیب نامتقارن رو به صورت مخفف AJAX به کار می برند.
وقتی Javascript انتشار پیدا کرد مردم خیلی کار کردن با اون رو دوست داشتن علت هم این بود که خیلی محیط رو براشون کاربر- پسند یا همون user friendly می کرد مثل اعتبار سنجی فرم ها، پنجره های pop-up و ... البته این علاقه زیاد مردم علیرغم عدم امکان ارسال اطلاعات بین سرور و کلاینت توسط Javascript بود.
خب حالا ببینیم چرا تکنولوژی AJAX بوجود اومد؟ وقتی ما می خوایم یه سری اطلاعات رو از DB بخونیم و یا سری اطلاعات رو به سمت سرور بفرستیم باید از یه زبون برنامه نویسی تحت وب مثل php استفاده کنیم و یه فرم طراحی کنیم که اونم با متدهای GET و یا POST مقداردهی شده و روی دکمه submit کلیک کنیم تا عمل مورد نظر اتفاق بیفته. خب حالا باید منتظر باشیم تا یه صفحه جدید باز بشه و نتایج عمل مورد نظر ما رو به ما نمایش بده. خب فکر می کنم هیچ کدوم از ما حاضر نباشه واسه این عمل مدت زمان زیادی رو صرف کنه! یعنی منتظر بشه تا صفحه refresh بشه و نتیجه رو ببینه که در حقیقت این صفحه نتیجه عکس العمل سرور نسبت به عمل درخواستی ماست.
AJAX در این قسمت وارد عمل می شه و مثل یه دارو مشکل ما حل می کنه. یعنی اجازه می ده کدهای javascript مستقیماً با سرور ارتباط برقرار کنن که البته این عمل رو با استفاده از یه object به اسم XMLHttpRequest انجام می ده. توسط این Object می شه اطلاعات رو از سرور مستقیما دریافت کرد بدون اینکه نیاز باشه تا صفحه جدیدی Load بشه.
با اجازه اساتید گرامی خودم در سایت barnamenevis - من تصمیم دارم تا قبل از اینکه به طراحی وب سایت پویای مورد بحث خودمون بپردازم یه چند تا تمرین کوچولو با هم انجام بدیم چون برنامه نویسان AJAX پیشنهاد می کنن که کسانی که می خوان این تکنولوژی رو شروع کنن باید با HTML و Javascript کاملا آشنا باشن. اما ما چون ما می خوایم در کوتاهترین زمان بیشترین و کاربردی ترین مطالب رو یاد بگیریم بد نیست چند تا تمرین با هم حل کنیم. این جوری فکر می کنم کار ساده تر می شه.
تو تمرین اول که همون رو می خوایم گسترشش بدیم سعی داریم تا یاد بگیریم چطور اطلاعات رو به سمت سرور ارسال و دریافت کنیم طوریکه از دکمه submit به مفهوم خودش استفاده نکنیم.
خب تو این قسمت می خوایم یه صفحه به اسم order.html طراحی کنیم که شامل یه فرمه که دو تا فیلد داره.
(فایل تمرینات رو داخل فولدر ضمیمه گذاشتم تا دوستان علاقمند استفاده کنن.)
حتما سئوال اینه که پس دکمه submit این فرم کجاست؟ این همون چیزی که می خوایم در موردش توضیح بدیم چون هیچ نیازی به اون نداریم.

yaqubian
شنبه 08 تیر 1387, 16:57 عصر
دوستان عزیز با این روش موافقن؟ تا اینجاش خوبه یا نه؟
اگه خوبه ادامه بدم!
مرسی

Bahram0110
یک شنبه 09 تیر 1387, 09:53 صبح
سلام
خيلي خوب توضيح مي دي
دستت درد نكنه
همين جوري به نظر من خوبه

yaqubian
یک شنبه 09 تیر 1387, 11:22 صبح
دوستان عزیز قبل از اینکه بخوام فصل دوم رو توضیح بدم جا داره از تمامی دوستانی که اظهار رضایت از این گفتگو کردن تشکر کنم و در ادامه بگم منتظر پیشنهادات و انتقادات تمامی شما هستم و در ضمن هر جا که می بینید کدها جهت چپ به راستشون قابل خوندن نیستن فایل ضمیمه رو نیگاه کنین تو اونجا تکمیل شده فصل هستش. بازم ممنون و مرسی
فصل دوم – Browser Support
در ادامه مطالب قبل می خوام یکی از بزرگترین موانع رو واسه مشتاقان AJAX بگم و اونم بحث Browser Support یا پشتیبانی مرورگرها از AJAX. چه خوب می شد اگه تمام مرورگرها فقط به یه کد javascript واسه پشتیبانی از ajax احتیاج داشتند ولی خب متاسفانه اینطوری نیست!
تو این قسمته که شیء XMLHttpRequest به دردمون می خوره. نیازی نیست خود این شیء رو بشناسیم ولی مهمه که بدونیم چطور این شیء با مرورگرهایی مثل IE ، Opera، Firefox و یا Safari سازگار می شه!
خب می دونیم که اگه تو اجرای یه کد یه Error اتفاق بیفته اجرای برنامه متوقف می شه اما این رو هم می دونیم که با استفاده از تکنیک Try و Catch می شه جلوی این کار رو گرفت. یعنی تمام کد اصلی رو تو بدنه Try می نویسیم و مدیریت استثنائاتی که ممکنه اتفاق بیفتن رو می دیم به قسمت Catch. این قسمت Catch باعث می شه که اگه تو قسمت Try یه خطایی اتفاق بیفته برنامه متوقف نشه و به کار خودش ادامه بده که تو اکثر کتابها فصل try و catch رو به اسم مدیریت استثنائات ازش اسم می برن.
اینم یادمون باشه که اگه بدنه try با موفقیت انجام بشه هیچوقت به قسمت catch نمی ریم. تو این کدی که الان می خوام توضیح بدم می خوام در مورد ایجاد شیء XMLHttpReqest به سه روش توضیح بدم که شما می تونید عملکرد try و catch رو اینجا کامل ببینین.
خوب حالا ببینیم صفحه order.html چه تغییری کرده؟ آره یه قطعه کد javascript رو به قسمت body اضافه می کنیم:
<script language="javascript" type="text/javascript">
<!--
//Browser Support Code
function ajaxFunction(){
var ajaxRequest; // The variable that makes Ajax possible!

try{
// Opera 8.0+, Firefox, Safari
ajaxRequest = new XMLHttpRequest();
} catch (e){
// Internet Explorer Browsers
try{
ajaxRequest = new ActiveXObject("Msxml2.XMLHTTP");
} catch (e) {
try{
ajaxRequest = new ActiveXObject("Microsoft.XMLHTTP");
} catch (e){
// Something went wrong
alert("Your browser broke!");
return false;
}
}
}
}
//-->
</script>
توی این قطعه کد javascript که نوشتیم به سه شکل شیء XmlHttpRequest رو سعی کردیم بسازیم.
روش اول:
ajaxRequest = new XMLHttpRequest();
این روش واسه مرورگرهای opera نسخه 8، firefox و Safari بکار می ره. اگر این مرحله Fail بشه از دو روش بعدی واسه IE استفاده می کنیم یعنی:
ajaxRequest = new ActiveXObject("Msxml2.XMLHTTP");
ajaxRequest = new ActiveXObject("Microsoft.XMLHTTP");
و این یادمون باشه که اگه تمام روشهای بالا Fail بشن به این معناست که کاربر از مرورگری داره استفاده می کنه که Ajax رو Support نمی کنه.
تو فصل بعدی قصد داریم بفهمیم چطور با این شیء ساخته شده که الان اون رو داخل متغیر ajaxRequest گذاشتیم با سرور ارتباط برقرار کنیم.

yaqubian
یک شنبه 09 تیر 1387, 11:40 صبح
فصل سوم – برقراری ارتباط با سرور توسط شیء XMLHttpRequest
قبل از اینکه تابعی بنویسیم که چطور اطلاعات رو به سمت سرور ارسال کنیم بهتره که تو فکر نوشتن یه تابع باشیم که چطور اطلاعات رو از سرور دریافت کنه!
شیء XMLHttpRequest یه Property خاص به اسم onreadystatechange داره که کار اون ذخیره تابعی که عمل پردازش پاسخ از سمت سرور رو انجام می ده.
شیء XMLHttpRequst یه Property دیگه هم به اسم readyState داره که کار اون اینه که وضعیت پاسخ سرور کجا ذخیره می شه؟ یادمون باشه که پاسخی که از سمت سرور بر می گرده می تونه به یکی از سه حالت زیر باشه: 1- در حال پردازش باشه 2- در حال دانلود باشه 3- به انجام برسه و تکمیل بشه. هر بار که این مقدار یعنی readyState تغییر کنه متد onreadystatechange اجرا می شه!
موردی که اینجا ما می خوایم بهش بپردازیم وضعیت سوم یا همون حالت complete پاسخه! واسه همین باید از یه if واسه چک کردن وضعیت تو حالت سوم استفاده کنیم.
نکته مورد توجه اینه که اگه readyState برابر 4 باشه به این معناست که وضعیت به حالت complete و ما می تونیم اطلاعات رو get کنیم.
تو Application های ساده ای که با Ajax نوشته می شن مثل همین تمرینات ما، یکی از روشهای گرفتن پاسخ سرور استفاده از متد responseText .
تو تمرین اولی که ما می خوایم انجام بدیم می خوایم مقدار یه TextBox رو با Time سرور set کنیم. واسه اینکه به مقدار یه input داخل یه فرم بوسیله Javascript دسترسی داشته باشیم از کد زیر استفاده می کنیم:
document.FormName.InputName.value
در اینجا اسم فرم ما myFrom و اسم تکست باکس ما time که اگه بخوایم دستور انتساب رو بنویسیم به شکل زیر در می یاد:
document.myForm.time.value = ajaxRequest.responseText;
خب تا اینجا خیلی کارا کردیم و با خیلی چیزها هم آشنا شدیم. درسته شاید اولش سخت باشه ولی یه چیزی رو تا اینحا فهمیدیم که با Ajax تونستیم بدون اینکه یه Request به سرور بفرستیم یه Response بگیریم.
خب حالا که متد onreadystatechange یه تابع مخصوص واسه response-handling داره نوبت می رسه به ارسال یه Request . این عمل شامل دو تا Step می شه:
1- مشخص کردن URLی که اسکریت سمت سرور ما در اون تعریف شده.
2- استفاده از تابع ارسال واسه غیر فعال کردن ارسال Request
اسم URL مورد نظر رو serverTime.php می ذاریم. خب پس حالا می تونیم مرحله اول رو انجام بدیم. Set کردن این url توسط یه متد به اسم Open صورت می گیره که دومین آرگومان اون از همه بیشتر اهمیت داره، یعنی:
ajaxRequest.open("GET", "serverTime.php", true);
و در ادامه پیاده سازی مورد دوم یعنی:
ajaxRequest.send(null);
بد نیست که بیایم و از یه Attribute واسه input مون هم استفاده کنیم و عملکرد اون رو هم ببینیم مثل:
<input type='text' onChange="ajaxFunction();" name='username' />

yaqubian
یک شنبه 09 تیر 1387, 12:11 عصر
فصل چهارم – ایجاد فایل servertime.php
متد responseText مربوط به شیء XMLHttpRequest کارش اینه که داده ای که این فایل در Browser نمایش می ده رو داخل خودش ذخیره کنه پس چیزی که ما از این فایل انتظار داریم اینه که باید زمان جاری رو echo کنه!
یعنی:
<?php
Echo date(“H:i:s”);
?>
خب حالا وقتشه که نتیجه کارمون رو ببینیم. واسه تست کردن می تونیم مثلا از easyphp استفاده کنیم. پیشنهاد می کنم که بهتره با نسخه 2.0 اون کار کنین. البته فقط یه پیشنهاده! علت این پیشنهاد هم اینه که نسخه های 1.7 و 1.8 این نرم افزار یه چیزایی رو خطا نمی گیرن که این از قابلیت حمل برنامه ما کم می کنه مثل <? ?> با <?php ?> که دوستان خودشون بهتر می دونن. در ضمن یه برتری دیگه هم این نسخه 2 داره اونم اینه که با اکثر آنتی ویروس ها مشکل نداره ولی تو نسخه های قبلی این یه مشکل بود! خب فایلهامون رو می ذاریم داخل یه پوشه، منظوریم order.html و serverTime.php بعد order.html رو Run می کنیم می بینیم که یه فرم باز می شه که هیچی داخلش نیست اما اگه یه اسم داخل باکس اول وارد کنیم و بعد با Tab یا کلیک به باکس بعدی بریم می بینیم که چه اتفاق جالبی می افته! بله بدون هیچ درخواستی به سمت سرور یه پاسخ از اون دریافت می کنیم!!!
و اتفاق جالبتر اینه که صفحه هم Refresh نمی شه و تمام اتفاقات تو همین یه صفحه می افته! امیدوارم تا اینجا مطالب بدردتون خورده باشه!

bikar_kgk
یک شنبه 09 تیر 1387, 13:19 عصر
آقا دستت درد نکنه
ولی یه سوالی برام پیش اومده اونم اینکه چرا برا IE دو مدل فراخوانی استفاده شده؟

bikar_kgk
یک شنبه 09 تیر 1387, 13:28 عصر
باید زمان جاری رو echo کنه یعنی چه.
اگه ممکنه نسخه 2 easyphp را هم بزاین.(اگه حجمش زیاد نیست)

tanha2007
یک شنبه 09 تیر 1387, 16:13 عصر
اول تشکر میکنم ازین تاپیک بسیار خوب و مفید.


آقا دستت درد نکنه
ولی یه سوالی برام پیش اومده اونم اینکه چرا برا IE دو مدل فراخوانی استفاده شده؟

این برای این است که نسخه های قبلی IE یک مدل را پشتیبانی مینماید و نسخه های جدید IE 7 مدل بعدی.

tanha2007
یک شنبه 09 تیر 1387, 16:16 عصر
1. یعنی باید زمان جاری را نمایش دهد. echo = print

2.لینک دانلود easyphp 2
http://sourceforge.net/project/showfiles.php?group_id=14045


باید زمان جاری رو echo کنه یعنی چه.
اگه ممکنه نسخه 2 easyphp را هم بزاین.(اگه حجمش زیاد نیست)

yaqubian
یک شنبه 09 تیر 1387, 23:02 عصر
دوست عزیز این سایت اصلی مربوط به easyphp
http://easyphp.org/index.php
و چیزای بدردبخوری توش پیدا می شه
در ضمن واسه دانلودش هم همون لینکی که دوستمون tanha گذاشته درسته.
در مورد جواب سئوالتون باز هم همونطور که دوست خوبمون توضیح داد ما یه چیزی داریم به اسم MSXML HTTP و این لایه های مختلفی داره واسه همین هم ما از دو حالت استفاده می کنیم و همونطور که گفته شد این مربوط به نسخه های مختلف موجوده.
موفق باشید

yaqubian
یک شنبه 09 تیر 1387, 23:04 عصر
دوست عزیز یه چیزه دیگم یادم اومد
اگه علاقمند بودی مطالب بیشتری در مورد سئوالت یاد بگیری می تونی:
http://msdn.microsoft.com/en-us/library/ms762314.aspx
یا تو گوگل این گزینه رو جستجو کن
difference between Microsoft.XMLHTTP and msxml2
موفق باشید

vahid4134
دوشنبه 10 تیر 1387, 10:51 صبح
اگر yaqubian اجازه بدن مطالبی رو در مورد روشهای صحیح استفاده از ajax مطرح کنم و هم در مورد معایب استفاده از ajax

kmahdi70
سه شنبه 11 تیر 1387, 11:20 صبح
عالیه ممنون میشیم

yaqubian
سه شنبه 11 تیر 1387, 12:27 عصر
خواهش می کنم آقا وحید - اسم کوچیک من سعید - لطفا من رو به اسم صدا بزنید - ممنون می شم - نظرتون رو هم در مورد مطالب تا اینجا بگید - ممنون می شم.
البته یه مرجع کامل 2008 دارم ترجمه می کنم که انشاءاله زمانیکه چاپ شد یه نسخش رو می دم خدمتتون
موفق باشید

vahid4134
سه شنبه 11 تیر 1387, 12:47 عصر
با اجازه آقا سعید و بقیه دوستان
اولین مشکلی که همه ما متوجه آن هستیم در حالت عادی شما نمی تونید دکمه back و forward داشته باشید (البته حالت عادی با نوشتن کد نویسی های پیچیده میشه این مشکل رو حل کرد)
مشکل دیگه این هست که کاربر نمی تونه صفحه رو bookmark کنه
مشکل دیگه این هست که در هنگام ارسال کاربر هیچ چیزی رو متوجه نمیشه که یک درخواست ارسال شده . بنابراین برای حل این مشکل هم باید از کد نویسی درست استفاده کرد (به عنوان مثال قبل از ارسال یک قسمت بنویسیم. در حال بارگذاری یا از آیکن های موجود استفاده کنیم و وقتی که درخواست پاسخ داده شد اطلاعات رو جایگزین کنیم)
یک مشکل دیگه ای که وجود داره در برخورد با دومین های مختلف هست. شما نمی تونید درخواستی رو از vahid.com به barnamenevis.com بدید جالب اینجاست که شما نمی تونید درخواستی رو از www.vahid.com به blog.vahid.com بدید حتی شما نمی تونید درخواستی رو از www.vahid.com به www.vahid.com:81 بدید
مشکل دیگه ای که به ذهنم می رسه مشکل در ایندکس کردن توسط موتورهای جستجو هست. همونطور که می دونید موتور جستجو بعد از باز کردن سایت شما به دنبال لینکها می گرده اما آیا با ajax ما لینک داریم که موتور جستجو بازش کنه و به صورت شاخه ای جلو بره؟

maysamscript
چهارشنبه 12 تیر 1387, 10:57 صبح
خیلی کار خوبی رو آغاز کردید. من کل پست ها رو خوندم . در ادامه اگر ارسال از طریق متد POST رو هم توضیح بدید تقریباً بحث کامل میشه.


مشکل دیگه ای که به ذهنم می رسه مشکل در ایندکس کردن توسط موتورهای جستجو هست. همونطور که می دونید موتور جستجو بعد از باز کردن سایت شما به دنبال لینکها می گرده اما آیا با ajax ما لینک داریم که موتور جستجو بازش کنه و به صورت شاخه ای جلو بره؟
فکر میکنم این مشکل با sitemap قابل حل باشه. مثلاً برای هر لینک آجاکسی میشه لینک معادل صفحه رو در site map قرار داد

tanha2007
چهارشنبه 12 تیر 1387, 12:54 عصر
سلام سعید جان.
میشه لطفا ادامه بحث را دنبال نمایید. چون تا اینجاش که زیاد خوب بود و اگر چند مثال برای اینکه چگونه بتوان اطلاعات با آژاکس به بانک وارد نماییم، چگونه ویرایش نماییم و چگونه حذف نماییم.

تشکر

eAmin
چهارشنبه 12 تیر 1387, 16:02 عصر
فکر میکنم این مشکل با sitemap قابل حل باشه. مثلاً برای هر لینک آجاکسی میشه لینک معادل صفحه رو در site map قرار داد

سلام.

این یه راهشه.

در ضمن فکر می کردم خودشون به مو قع می خواستن توضیح بدن...

یه راه دیگه رو هم من می گم.

فرض کنید یه تابع ajax داریم و url اون رو به عنوان آرگومان اون تابع در نظر گرفتیم، خب به اینصورت می تونیم، یه لینک بسازیم تا مشکلی برای موتورهای جستوجو پیش نیاد.

<a href="http://www.mysite.com/index.php" onclick="ajax(this.href); return false;">index</a>

vahid4134
چهارشنبه 12 تیر 1387, 17:33 عصر
خیلی کار خوبی رو آغاز کردید. من کل پست ها رو خوندم . در ادامه اگر ارسال از طریق متد POST رو هم توضیح بدید تقریباً بحث کامل میشه.


فکر میکنم این مشکل با sitemap قابل حل باشه. مثلاً برای هر لینک آجاکسی میشه لینک معادل صفحه رو در site map قرار داد
کاملا صحیح هست اما باید سایت به گونه ای طراحی شده باشه که به صورت استاتیک هم صفحات باز بشن

yaqubian
چهارشنبه 12 تیر 1387, 22:57 عصر
فصل پنجم – DB در AJAX
خوب تا اینجا یاد گرفتیم که چطور یه اسکریپت PHP خارجی رو بوسیله AJAX اجرا کنیم اما در ادامه می خوایم یه سری اطلاعات رو بوسیله این تکنولوژی از DB بیرون بکشیم.
خب واسه حل تمرین بعدی(البته با استفاده از همون فایلهای قبلی) مجبوریم یه DB ایجاد کنیم و یه جدول هم با مشخصات زیر داخلش بسازیم. فرض کنین من اسم DBرو می ذاریم ajax_table و اسم جدولمون رو می ذاریم ajax_example و چهار فیلد هم واسش می ذاریم: (فایل sql داخل ضمیمه موجوده)
1- ae_name اسم شخص
2- ae_age سن شخص
3- ae_wpm تعداد لغاتی که یه نفر می تونه در یک دقیقه تایپ کنه .(word per minute)
4- ae_sex جنسیت
در این قسمت می خوایم ببینیم فایل order.html چه تغییراتی می کنه! چون می خوایم query هامون رو داخل یه فایل html بسازیم مجبوریم که المان های فرممون رو به شکل زیر تغییر بدیم که فایل ضمیمه رو می تونید یه نیگاه بندازین.
اگه فایل رو نیگاه کنین می بینین چقدر جالب می شه یه query رو در داخل یه فایل html ایجاد کرد و از اون واسه pass کردن متغیرها استفاده کرد.

تعریف query string: روشی است برای pass کردن اطلاعات بوسیله اضافه کردن اونها به آدرس URL.

خب شاید بپرسین این دیگه چیه؟ این همون ارسال اطلاعات بوسیله submit کردن یه فرمه که متد اون GET و پارامترها رو به قسمت آدرس URL اضافه می کنه. به عبارتی که بعد از علامت ? در نوار آدرس قرار می گیره و پارامترها دنبالش می یان query string می گن.
اگه تو فایل ضمیمه نیگاه کنین می بینین که آدرس مربوط به متد open شیء ajaxRequest عوض شده. پس مجبوریم یه فایل به همون اسم ایجاد کنیم تا پارامترها ارسالی داخل اون دریافت بشن و ما query مون رو اونجا اجرا کنیم.
واسه این کار از یه تابع خاص استفاده می کنیم و اون تابع:
mysql_real_escape_string. علت استفاده از این تابع رو هم همه دوستان از من بهتر می دونن!
فایل ajax-example.php هم داخل پوشه ضمیمه موجوده.
اما مهمترین قسمت بروز رسانی فایل order.html واسه نشون دادن نتیجه اجرای query مونده! خب ببینیم باید چیکار کنیم؟
این همون حقه یا رمز اصلی موفقیت AJAX که ما فقط قسمتی از فایل order.html رو واسه کارمون تغییر می دیم نه اینکه بخوایم کل صفحه رو reload کنیم!
این حقه تو اکثر مواقع بوسیله یه خاصیت تو javascript انجام می شه و اون چیزی نیست جز innerHTML
بهتر عملکرد این خاصیت رو تو عمل ببینیم. پس پیشنهاد می کنم فایل ajax-example.php رو حتما نیگاه کنین.
از div هم داخل order.html به عنوان یه place holder استفاده می کنیم تا نتیجه اجرای query رو داخل اون ببینیم.

yaqubian
چهارشنبه 12 تیر 1387, 23:00 عصر
دوستان عزیز
من پست های شما رو نیگاه کردم انشاء اله در اولین فرصت درخواست های شما رو جواب می دم. در ادامه فرمایشات دوست خوبم آقا وحید راجع به مزایا و معایب ای جکس حتما مطالب بیشتری رو ذکر خواهم کرد.
در هر صورت باز هم از همه شما که وقت می ذارین و پست های اینجانب رو می خونید ممنون و متشکر
موفق باشید

tanha2007
پنج شنبه 13 تیر 1387, 21:41 عصر
سلام.
واقعا برای من زیاد جالب و دلچسب است، بعدا اگر خواسته که اطلاعات لیست بازشو combo Box دوم را بر اساس لیست باز شو combo box اول نمایش دهم باید چی کار خاصی انجام دهم؟

yaqubian
پنج شنبه 13 تیر 1387, 22:43 عصر
دوست خوبم عبدالرحمن جان
لطفا این مقاله رو فعلا یه نیگاه بنداز تا بعدا در ادامه آموزش مفصل در موردش توضیح بدم.
http://www.developer.com/java/web/article.php/3577826
موفق باشید

baranmatin
جمعه 14 تیر 1387, 00:19 صبح
عالیییییییییییییییییییییی ییییییییییییییییییییییییی یه
ممنون از زحمتتون

tanha2007
جمعه 14 تیر 1387, 00:51 صبح
تشکر.
من این فایل ضمیمه را آپلود نمودم نمیدانم چرا کار نمیکند ... بانک داده نیز ضمیمه آن است. اگر یک نگاه بیاندازید.



دوست خوبم عبدالرحمن جان
لطفا این مقاله رو فعلا یه نیگاه بنداز تا بعدا در ادامه آموزش مفصل در موردش توضیح بدم.
http://www.developer.com/java/web/article.php/3577826
موفق باشید

tanha2007
جمعه 14 تیر 1387, 15:43 عصر
سلام . در دوقسمت نام گذاری اشتباه شده بود مثلا:

name="selectFaculty" id="selectFaculty"

باید این باشد:


name="facultyList" id="facultyList"
ولی نمیدانم هنوز چرا کار نمیکند ؟؟؟

yaqubian
شنبه 15 تیر 1387, 12:19 عصر
دوست خوبم baranmatin یه e-mail بزن من در خدمتت هستم.
موفق باشید.
آقا عبدالرحمن چشم فایل شما رو هم در اولین فرصت نیگاه می کنم

tanha2007
دوشنبه 17 تیر 1387, 19:30 عصر
سلام.
کدام نظری راجع به cascading drop-down list in AJAX

yaqubian
چهارشنبه 19 تیر 1387, 00:48 صبح
سلام عبدالرحمن جان
به روی چشم. دارم کار شما رو انجام می دم. tutorial که آماده شده می ذارم رو سایت
موفق باشید

tanha2007
چهارشنبه 19 تیر 1387, 01:38 صبح
تشکر سعید جان.
خوب فکر کنم که من تگ xml را جا گذاشته بودم...

الان این فایل کار میکند، و خیلی خوشحال خواهم شد ... که tutorial را پست نمایید... جهانی سپاسگزارم ...

musiox
جمعه 21 تیر 1387, 11:31 صبح
عزیزان این که فقط شد آموزش . پس پیاده سازیه وب سایت چی شد ؟

yaqubian
جمعه 21 تیر 1387, 23:28 عصر
فصل ششم – نگاهی بر معماری AJAX
تو این قسمت با اجازه دوستان سعی کردم یه نگاه مختصر به معماری AJAX بندازم و بوسیله این مطالب یه سری از سئوالات دوستان رو جواب بدم.
اگه از نقطه نظر معماری یه نرم افزار به AJAX توجه کنیم، موارد زیر تفاوتهای اون رو از سایر معماری های برنامه های تحت وب نشون می ده:
1- استفاده از یه موتور client side بعنوان واسط بین UI یا همون user interface و سرور.
2- فعالیت کاربر باعث فراخوانی موتور سمت مشتری شده به جای اینکه یک صفحه به سمت سرور request ارسال کند.
3- ترنسفر xml data بین سرور و موتور client side
Client engine همون کلید اصلی در طراحی مدل AJAX هستش. بدون این موتور رویداد هر کاربر باید به سمت سرور واسه پردازش فرستاده بشه.
توی شکل 3 و 4 می شه تفاوت معماری کلاسیک برنامه های تحت وب و معماری AJAX رو دید.
یه نکته باید اینجا بگم و اون اینه که واسه ساخت برنامه های AJAX ما سه رویکرد متفاوت داریم:
1- رویکرد Javascript
2- رویکرد JAVA
3- رویکرد Flash
که البته من به صورت یه جدول نقاط ضعف و قوت هر کدوم رو نشون می دم.
خب دوستان تا اینجا فکر کنم همه فهمیدیم AJAX چیه و می خوایم از اون چه استفاده ای بکنیم.
تو فصل بعدی می خوایم یه کار عملی شروع کنیم. البته من سعی می کنم یه سری نکات مربوط به طراحی وب رو هم داخلش درس بدم. از همه دوستان تقاضا دارم که همکاری کنن- ممنون - پس لطفا نرم افزارهای زیر رو همه نصب کنن(که البته فکر کنم اکثرا اینا رو نصب دارن روی سیستم هاشون):
Dreamweaver cs3
Frontpage 2003
Swish max 2005 یا 2007
Photoshop cs
واسه راحتی کار هم از هر نوع نرم افزاری که آپاچی و mysql رو واستون نصب می کنه می تونین استفاده کنین. من خودم easyphp نسخه 2 رو پیشنهاد می کنم.
یه سری نرم افزارهای کوچولو هم نیازه که تو ادامه بحث به اونها می پردازیم.

yaqubian
جمعه 21 تیر 1387, 23:32 عصر
دوست عزیز musiox
به روی چشم - شرمنده این مدت سرم خیلی شلوغ بوده - می دونی که بعد از اعلام نمره ها این دانشجوها پدر آدم رو در میارن!
از فصل بعد شروع می کنم به طراحی. اگه پیشنهادی در مورد موضوع طراحی هم دارید بگید. مثلا چه نوع وب سایتی مد نظرتونه؟ مرسی
موفق باشید

yaqubian
شنبه 22 تیر 1387, 23:05 عصر
دوستان عزیز
من می خوام شروع به طراحی یه سیستم آموزش شبیه اون چیزی که تو دانشگاه هاست بکنم. اگه موافقید ok رو بدید.
موفق باشید

tanha2007
یک شنبه 23 تیر 1387, 00:19 صبح
من که زیاد مشتاقم ....

yaqubian
چهارشنبه 26 تیر 1387, 23:39 عصر
سلام دوستان
خدمتتون عرض کنم اول از همه برنامه جستجو بوسیله ajax رو می ذارم واستون که خیلی از دوستان سئوال کردن. مطالب طراحی سایت رو هم دارم تایپ می کنم انشاءاله در اولین فرصت می ذارم رو وب.
راستی اسم بانکتون رو بذارید mathstat.
موفق باشید

tanha2007
پنج شنبه 27 تیر 1387, 00:06 صبح
سلام سعید جان.
دستت درد نکنه واقعا جالب و مفیده ...

alimooghashang
پنج شنبه 27 تیر 1387, 13:54 عصر
اگه اینکارا بکنی واقعا باحالی

ایول و مرسی

mostafa_shaeri_tj
پنج شنبه 27 تیر 1387, 17:30 عصر
چكار كنم كه شي xmlhttprequest جوابه request ها رو تو خودش cache نكنه ؟
اگه ميشه مثال بزنين براي جواب ...
خيلي ممنون

alimooghashang
پنج شنبه 27 تیر 1387, 20:00 عصر
اقایون دمتون گرم

لطفا یکی به این سوال من جواب بده
من خودم علاقه مند هستم که ajax رو یاد بگیرم

مرسی

http://barnamenevis.org/forum/showthread.php?t=113885

محمدامین شریفی
پنج شنبه 27 تیر 1387, 20:36 عصر
دوستان عزیز
من می خوام شروع به طراحی یه سیستم آموزش شبیه اون چیزی که تو دانشگاه هاست بکنم. اگه موافقید ok رو بدید.
موفق باشید
استاد منم دارم با asp.net همچنین کاری می خواهم برای پروژه ام با asp کنم و پایگاه داده ثبت نامش هم آمده است میایید مثل سازمان سنجش هنگامی که شما در asp ثبت نام کرده ایم در php هم یک رد و بدل صورت گیرد.
برای اینکار هم سرور php برای شما مهیا است و هم به طور جداگانه asp اگه حاضرید.بگید

yaqubian
جمعه 28 تیر 1387, 00:12 صبح
بله حتما
خوشحال می شم.
چند فصل همزمان داره تایپ می شه
آماده بشه می ذارم واسه دوستان.
موفق باشید

valida
چهارشنبه 02 مرداد 1387, 14:35 عصر
آقا ممنون:تشویق::تشویق::تشویق:

szabeh
پنج شنبه 03 مرداد 1387, 20:04 عصر
با تشکر از دوستانی که زحمت میکشند. منتظر ادامش هستیم

jaza_sa
جمعه 04 مرداد 1387, 16:31 عصر
استاد !!! پس کی این دانشجویا دست از سر شما برمیدارن
منتظر ادامه تدریس شما هستیم ...

yaqubian
جمعه 04 مرداد 1387, 19:12 عصر
دوست عزیز jaza_sa
من پیام خصوصیتون رو جواب دادم ولی ارسال نشد. چون شما تنظیمات دریافت رو غیرفعال کردید.
email تون رو بدید در خدمتم.
موفق باشید

artonline
شنبه 05 مرداد 1387, 01:40 صبح
سلام دوستان
می خواستم اگه موافقید واسه علاقمندان ajax شروع کنیم به آموزش طراحی یه وب سایت پویا از ابتدا تا سطح حرفه ای بوسیله ajax البته اگه عمری باقی بود. دوستان لطفا نظراتشون رو بدن.
ممنون - موفق باشید.



با با ای ول ...
نیکی و پرسش ؟! :تشویق:

Hamid68
یک شنبه 06 مرداد 1387, 10:43 صبح
کاملا موافقم

bikar_kgk
یک شنبه 06 مرداد 1387, 11:53 صبح
آقا اگه زودتر شروع کنید ممنون میشم

asal sadat
یک شنبه 13 مرداد 1387, 14:10 عصر
دست شما درد نکنه من خیلی بهش نیاز دارم

aryaei2000
یک شنبه 13 مرداد 1387, 14:18 عصر
با سلام من هستم اینم یه پورتال آجاکس
این پورتال PHP/MYSQL/AJAX هست کار جالبیه و لی زبونش انگلیسیه

امید امرایی
دوشنبه 14 مرداد 1387, 15:01 عصر
با سلام
خیلی از دوستانی که در حال اجرای سیستم ها مبتنی بر Ajax هستن با این موضوع مشکل دارن که بارگذاری اسکریپت های زیاد باعث سربار زیاد می شه .
با این تابع می تونید اسکریپت های خودتون رو به صورت پویا به برنامه (سایت) لود کنید .



function loadScript(src){
if (src != '' && src != null) {
var S = new String(src);
var Scrpt = S.split(';');
for (j = 0; j < Scrpt.length; j++) {
var JS = document.createElement('script');
JS.type = 'text/javascript';
JS.src = Scrpt[j];
document.getElementsByTagName('head')[0].appendChild(JS);
}
}
}
در صورتی که بخواید چند اسکریپت رو هم زمان لود کنید می تونید اونها رو با یک ; از هم چدا کنید



loadScript('somesource.js');

or

loadScript('script1.js;script2.js;script3.js');
همچنین می تونید با استفاده از کلاس XHRConn (http://barnamenevis.org/forum/showthread.php?t=116311)که خدمتتون قبلا معرفی کردم بعد از بار شدن کامل یک صفحه که با استفاده از Ajax لود شده اسکریپت ها شو به صورت داینامیک لود کنید .

مثال :


var MyAjaxConn = new XHRConn();

MyAjaxConn.send('page.php' , '',
function(Response,CallerObject){
alert(Response + ' loaded and now will started to load scripts');
loadScript('this_page_script.js;another_for_this.j s');
}
);

solmaztaremy
یک شنبه 07 مهر 1387, 12:48 عصر
سلام
من خیلی مبتدی هستم یعنی تازه شروع به کار سایت کردم اگه سوال خنده دار پرسیدم !
می شه لطفا بگین امکان submit یا فرستادن اطلاعات به سرور فقط از طریق xml آیا میشود یک صفحه html داشت و امکان submit .
لطفا اگه می شه کمکم کنید چون xmlبلد نیستم و اینکه چه نرم افزارهایی باید واسه سایتم نصب کنم تا بتونم امکان فرستادن email را به آدرس یکی از کاربرا داشته باشم

monaizadi
یک شنبه 07 مهر 1387, 12:50 عصر
سلام
من از این کد استفاده کردم که یک سری اطلاعات رو از یه صفحه دیگه بخونم و نمایش بدم. ولی توی firefox کار نمی کنه.

function getHttp()
{
var xmlhttp;
try
{
xmlhttp = new ActiveXObject("Msxml2.XMLHTTP");
}
catch(e)
{
try
{
xmlhttp = new ActiveXObject("Microsoft.XMLHTTP");
}
catch(e)
{
if( typeof XMLHttpRequest != "undefined" )
{
xmlhttp = new XMLHttpRequest();
}
}
}
return xmlhttp
{

نمی دونم مشکلش از چیه. توی IE درست جواب می ده.

a_bita
یک شنبه 07 مهر 1387, 17:20 عصر
سلام
منم هستم .اما یه چیزی من با پی اچ پی به اندازه 30 درصد اشنا هستم .برای یادگیری اجاکس کافیه؟
در ضمن ممنون میشم اگه کسی پیدا شه اشکال منو توی این تاپیک حل کنه
http://barnamenevis.org/forum/showthread.php?t=124689
و از دوستان خواهش میکنم که کدارو توی تگ پی اچ پی بذارین که به هم نریزه

aligilani1986
یک شنبه 07 مهر 1387, 17:42 عصر
سلام دوستان
می خواستم اگه موافقید واسه علاقمندان ajax شروع کنیم به آموزش طراحی یه وب سایت پویا از ابتدا تا سطح حرفه ای بوسیله ajax البته اگه عمری باقی بود. دوستان لطفا نظراتشون رو بدن.
ممنون - موفق باشید.


سلام. پيشنهاد خوبيه.

البته من پروژه پايان دوره ليسانس خودم كه سيستم انتخاب واحد اينترنتي بود رو با Ajax پياده سازي كردم.
اميدوارم بتونم مفيد باشم.

narsic
سه شنبه 09 مهر 1387, 00:56 صبح
با سلام
منم مدتهاست که دارم از تکنولوژی های جدید استفاده میکنم و با اونها کار میکنم خوش حال میشم بتونم کمک کنم .
موفق باشید

as13851365
جمعه 24 آبان 1387, 20:46 عصر
من یک مشکل دارم و اون هم استفاده از متد POST است !

از اونجایی که ( من جستجو کردم ) بیشتر مثال ها با متد GET بود من نتونستم از متد POST استفاده کنم !

من یک فرم دارم با 5 تا INPUT حالا می خوام محتوای این فرم رو با آژاکس پست کنم و نتیجه رو در بانک ذخیره کنم از ولی هر کاری کردم نشد یعنی هیچی ارسال نمی شه !

اگه یکی از دوستان یک نمونه کوچیک از ارسال یک فرم رو با متد POST در این قسمت قرار بده ممنون می شم

این هم یک نمونه کد که من نوشتم :


<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
<title>Untitled Document</title>
</head>

<body>
<script language="javascript" type="text/javascript">
function xxaajjaaxx()
{
var xajax; // The variable that makes Ajax possible!
try{
xajax = new XMLHttpRequest();
} catch (e){
try{
xajax = new ActiveXObject("Msxml2.XMLHTTP");
} catch (e) {
try{
xajax = new ActiveXObject("Microsoft.XMLHTTP");
} catch (e){
alert("Your browser broke!");
return false;
}
}
}
xajax.onreadystatechange = function()
{
if(xajax.readyState==4)
document.getElementById('s1').innerHTML=xajax.resp onseText;
}
xajax.open("POST","a.php");
xajax.send(null);
}
</script>

<form name="form1">
<input type="text" name="bname" id="bname" /><br />
<input type="text" name="bfamily" id="bfamily" /><br />
<input type="button" value="send" onclick="xxaajjaaxx()"/>
</form>

<div style="border:dotted 1px #33FF00;width:400px;" id="s1"></div>

</body>
</html>

این هم محتوای فایل صفحه دوم :


<?php
$bname=$_POST['bname'];
$bfamily=$_POST['bfamily'];
echo "=> $bname $bfamily <=";
?>


اگه جایی از کد رو اشتباه نوشتم و یا ... ممنون می شم به من بگید !

aligilani1986
شنبه 25 آبان 1387, 08:48 صبح
سلام.
اول اينكه onreadystatechange بايد بعد از متد open و قبل از متد send ايجاد بشه.

من 1 فايل zip برات فرستادم كه توش 3 فايل a.php (فايل سرور) , ba.php (فايل فرم) , xmlhttp.js براي آژاكس.
هم براي post و هم براي get كار ميكنه.
نگاهي بهش بيانداز. اگه سوالي داشتي تو همين تاپيك بپرس

as13851365
شنبه 25 آبان 1387, 12:53 عصر
از اونجایی که من تازه اول راه استفاده از آژاکس هستم ممنون از این که کمکم کردی


اول اينكه متد onreadystatechange بايد بعد از متد open و قبل از متد send ايجاد بشه.
دوست عزیز aligilani1986 جان من با مثالهای آقا سعید عزیز دارم پیش می رم اگه به مثالهای practice1 و یا practice2 و یا practice3 نگاهی بندازید می بینید که من کدها رو از روی اونها کپی کردم . حالا آیا روش کار حتما به این صورت است که شما می گید ؟ (متد onreadystatechange بايد بعد از متد open و قبل از متد send ايجاد بشه. )

حالا یه سوال : من در یک صفحه از سایت یک قسمت برای ثبت پیغام برای مدیر دارم حالا می خوام وقتی که مدیر در کنترل پنل سایت هست وقتی که کاربری برای مدیر سایت پیغامی ارسال کرد همون لحظه متوجه بشه مثلا یک پیغامی در بالای صفحه ظاهر بشه ( پیغام جدید برای مدیر ) نه این که بعد از ریفلش صفحه متوجه پیغام بشه !!

اگر می شه برای این هم یک توضیحی و یا اگه امکانش هست یک مثالی بزنید ممنون می شم.

as13851365
یک شنبه 26 آبان 1387, 07:15 صبح
خوب یه مشکل :

کدهای که دوست عزیز aligilani1986 خان قرار دادن تمام المنتهای موجود در فرم رو ارسال می کنه

به عنوان مثال اگر در یک فرم از Checkbox و RadioButton استفاده کنید و از توابعی که دوست گرامی گفته استفاده کنید خواهید دید که تمام المنتها ارسال می شه چه checkbox هایی که انتخاب شده اند و چه اونهایی که انتخاب نشده اند! که نباید چنین باشه ! ( radioButton ها هم همین طوری هستند )

به عنوان نمونه به کد زیر نگاه کنید :
محتوای فایل ba.php


<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head><meta http-equiv="Content-Type" content="text/html; charset=utf-8" /></head>
<body>
<script language="javascript" type="text/javascript" src="xmlhttp.js"></script>
<form name="form1" id="form1" onsubmit="submitform (document.getElementById('form1'), 'a.php', 's1','post'); return false;">
name <input type="text" name="bname" id="bname" /><br />
family <input type="text" name="bfamily" id="bfamily" /><hr />
c1 <input type="checkbox" name="c1" value="1"/><br />
c2 <input type="checkbox" name="c2" value="2"/><hr />
c3
<input type="checkbox" name="c3[]" value="1"/>
<input type="checkbox" name="c3[]" value="2"/>
<input type="checkbox" name="c3[]" value="3"/>
<input type="checkbox" name="c3[]" value="4"/><hr />

r1 <input type="radio" name="r1" value="r1"/>
<input type="radio" name="r1" value="r2"/>
<input type="radio" name="r1" value="r3"/><hr />

<select name="select">
<option value="select1">select1</option>
<option value="select2">select2</option>
<option value="select3">select3</option>
<option value="select5">select4</option>
</select><hr />
<p>
<input type="submit" value="send_ajax" />
</p>
</form>

<div style="border:dotted 1px #33FF00;width:400px;" id="s1"></div>

</body>
</html>

محتوای فایل a.php


<?php
//print_r($_POST);
$bname=$_POST['bname'];
$bfamily=$_POST['bfamily'];
$c1=$_POST['c1'];
$c2=$_POST['c2'];
$c3=$_POST['c3'];
$r1=$_POST['r1'];
$se=$_POST['select'];
echo "
name = $bname<br>
family = $bfamily<hr>
c1 = $c1<br>
c2 = $c2<hr>
";
for($i=0;$i<count($c3);$i++)
echo "c3[$i] = $c3[$i]<br>";

echo "<hr />r1 = $r1 <hr /> select = $se";
?>


مشکل اصلی تابع زیر است یعنی این تابع تمام المنتهای موجود در فرم رو جمع می کنه


function getformvalues (fobj){
var str = "";
aok = true;
var val;
for(var i = 0; i < fobj.elements.length-1; i++){
str += fobj.elements[i].name + "=" + encodeURI(fobj.elements[i].value) + "&";
}
return str;
}


حالا راه حلی که من براش پیدا کردم : در ضمن اگر یکی از دوستان کد بهتری یا راه حل بهتری سراغ داره حتما در این قسمت قرار بده تا من یکی ممنونش بشم


function getformvalues (fobj){
var str = "";
aok = true;
for(var i = 0; i < fobj.elements.length-1; i++)
{
if((fobj.elements[i].type=="checkbox")&&(fobj.elements[i].checked==""))continue;
if((fobj.elements[i].type=="radio")&&(fobj.elements[i].checked==""))continue;
str += fobj.elements[i].name + "=" + encodeURI(fobj.elements[i].value) + "&";
}
return str;
}

این هم کد های آماده ی هر سه فایل برای دانلود دیگر دوستان ( ارسال فرم به کمک آژاکس با متدهای POST و GET )

25506

irancms
یک شنبه 26 آبان 1387, 13:38 عصر
سلام به همگی و ممنون از سعید عزیز
آقا آموزش ها تمم شد؟
من یک سوال دارم.
در یک صفحه من 10 رکورد آحر رو فراخوانی کردم.
حالا قصد دارم که زمانی که روی هر لینک کلیک میشه ، صفحه تیره بشه ، علامت لودین نشون داده بشه و بعد با متد get و یا post اطلاعات از صفحه دوم خونده بشه و نمایش داده بشه و بعد سفحه به حالت عادی برگرده.

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

باتشکر

asafarda
یک شنبه 26 آبان 1387, 14:07 عصر
چرا هیچکس جواب سوال منو نداد؟

aligilani1986
یک شنبه 26 آبان 1387, 14:25 عصر
خوب یه مشکل :

کدهای که دوست عزیز aligilani1986 خان قرار دادن تمام المنتهای موجود در فرم رو ارسال می کنه

به عنوان مثال اگر در یک فرم از Checkbox و RadioButton استفاده کنید و از توابعی که دوست گرامی گفته استفاده کنید خواهید دید که تمام المنتها ارسال می شه چه checkbox هایی که انتخاب شده اند و چه اونهایی که انتخاب نشده اند! که نباید چنین باشه ! ( radioButton ها هم همین طوری هستند )



دوست عزيز as13851365 (http://barnamenevis.org/forum/member.php?u=35098) كدي كه من فرستادم، كلي بوده و براي زمانيكه نياز به ارسال فرمهاي متعدد با فيلدهاي متفاوت داريد، مناسب است.
البته كد شما هم درست است. و ممنون كه توضيح داديد.

در پست قبلي اشتباهي كردم. من متد setrequestheader را با پراپرتي onreadystatechange اشتباه گرفتم.
دوستان لطفا ببخشيد.
as13851365 (http://barnamenevis.org/forum/member.php?u=35098) عزيز در حال نوشتن كد مربوط به پيام كلاينت به ادمين هستم. در اسرع وقت پست ميكنم.

as13851365
یک شنبه 26 آبان 1387, 14:45 عصر
سلام به همگی و ممنون از سعید عزیز
آقا آموزش ها تمم شد؟
من یک سوال دارم.
در یک صفحه من 10 رکورد آحر رو فراخوانی کردم.
حالا قصد دارم که زمانی که روی هر لینک کلیک میشه ، صفحه تیره بشه ، علامت لودین نشون داده بشه و بعد با متد get و یا post اطلاعات از صفحه دوم خونده بشه و نمایش داده بشه و بعد سفحه به حالت عادی برگرده.

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

باتشکر
درباره اون قسمتی که گفتید می خواهید صفحه تاریک و روشن بشه یکی از دوستان قبلا یک کدی برای این کار گذاشته بود اگر جستجو کنید اول اون رو پیدا می کنید و بعد از این که از اون کد استفاده کردید می تونید از کدهای ارسال برای درخواست دومت استفاده کنی

اگر مشکلی بود با کلی گویی به جوابی که می خواهید هر گز نمی رسید بهتر است خودتان شروع کنید هر جا به مشکلی برخورد کردید بگید

narsic
یک شنبه 26 آبان 1387, 15:43 عصر
چرا هیچکس جواب سوال منو نداد؟
دوست عزیز من سوآل شما رو ندیدم ؟

aligilani1986
یک شنبه 26 آبان 1387, 16:30 عصر
حالا یه سوال : من در یک صفحه از سایت یک قسمت برای ثبت پیغام برای مدیر دارم حالا می خوام وقتی که مدیر در کنترل پنل سایت هست وقتی که کاربری برای مدیر سایت پیغامی ارسال کرد همون لحظه متوجه بشه مثلا یک پیغامی در بالای صفحه ظاهر بشه ( پیغام جدید برای مدیر ) نه این که بعد از ریفلش صفحه متوجه پیغام بشه !!

اگر می شه برای این هم یک توضیحی و یا اگه امکانش هست یک مثالی بزنید ممنون می شم.


سلام . من اين كد رو برات حاضر كردم.

قبل از همه بايد پايگاه داده رو ايجاد كني. اطلاعات جدول و پايگاه در فايل db.sql است. فايل contacts.php براي كلاينت و بصورت كد نويسي php بدون آژاكس و فايل admin.php براي ادمين .

نكته ي اصلي در اين كد تابع settimeout است settimeout نام يك تابع كه بعنوان آرگومان ميپذيرد را در فواصل زماني ميلي ثانيه كه اينرا نيز بعنوان آرگومان ميپذيرد به اجرا در مي آورد.

اميدوارم كمكت كرده باشم.

zoghal
دوشنبه 27 آبان 1387, 06:24 صبح
یک سوال برام بوجود اومده ؟! با وجود فرم ورک های استاندارد جاوااسکریپت مثل mootools,porototypejs و از جمله jquery که با یک دستور اعمل ارسال و دریافت مثل ایجکس رو برای شما فراهم میسازند؟

چرا باز اسرار بر استفاده از کدهای دیگر برای راهندازی و ارسال اطلاعات استفاده میکنید. که هر کدوم ممکنه در یک مرورگر جواب گو نباشد یا راهندازی نشود؟

aligilani1986
دوشنبه 27 آبان 1387, 09:11 صبح
یک سوال برام بوجود اومده ؟! با وجود فرم ورک های استاندارد جاوااسکریپت مثل mootools,porototypejs و از جمله jquery که با یک دستور اعمل ارسال و دریافت مثل ایجکس رو برای شما فراهم میسازند؟

چرا باز اسرار بر استفاده از کدهای دیگر برای راهندازی و ارسال اطلاعات استفاده میکنید. که هر کدوم ممکنه در یک مرورگر جواب گو نباشد یا راهندازی نشود؟

شايد دليلش اينه ، كه چون ميترسيم از اين فريم ورك ها استفاده كنيم. ترسمان هم بدليل نا آشنايي با اين فريم ورك هاست.

آدمي از چيزي كه نميشناسه ، ميترسه.

eAmin
دوشنبه 27 آبان 1387, 09:52 صبح
یک سوال برام بوجود اومده ؟! با وجود فرم ورک های استاندارد جاوااسکریپت مثل mootools,porototypejs و از جمله jquery که با یک دستور اعمل ارسال و دریافت مثل ایجکس رو برای شما فراهم میسازند؟

چرا باز اسرار بر استفاده از کدهای دیگر برای راهندازی و ارسال اطلاعات استفاده میکنید. که هر کدوم ممکنه در یک مرورگر جواب گو نباشد یا راهندازی نشود؟
سلام.

یکی دیگه هم بخاطر حجم بالای استفاده از این فریم ورکهاست، البته راهکارهایی وجود داره تا بتونیم حجمشون رو حتی تا 15 KB هم برسونیم، ولی چرا باید اینکار رو بکنیم درصورتی که می شه همین اسکریپت رو در حد 3 یا حد اکثر 5 کیلو هم خودمون پیاده سازی کنیم.

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

aligilani1986
دوشنبه 27 آبان 1387, 10:03 صبح
يك گالري عكس با آژاكس و php

چيز جالبيه

zoghal
دوشنبه 27 آبان 1387, 10:39 صبح
سلام.

یکی دیگه هم بخاطر حجم بالای استفاده از این فریم ورکهاست، البته راهکارهایی وجود داره تا بتونیم حجمشون رو حتی تا 15 KB هم برسونیم، ولی چرا باید اینکار رو بکنیم درصورتی که می شه همین اسکریپت رو در حد 3 یا حد اکثر 5 کیلو هم خودمون پیاده سازی کنیم.

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

فکر نمی کنم یک برنامه نویس یا طراح وب بخاطر حداکثر 20 kb بیاد از خوب و بد، بد رو انتخاب کنه،


منظورتون رو از پشت صحنه چیه؟ چه چیزی رو شما با کد نویسی خودتون می تونید ببینید ولی در این فرم ورک ها نمی تونید؟ تا حالا با کدومشون کار کردید که این طور برداشت کردید از این فرم ورک ها؟

vahid4134
دوشنبه 27 آبان 1387, 10:52 صبح
فکر نمی کنم یک برنامه نویس یا طراح وب بخاطر حداکثر 20 kb بیاد از خوب و بد، بد رو انتخاب کنه،


منظورتون رو از پشت صحنه چیه؟ چه چیزی رو شما با کد نویسی خودتون می تونید ببینید ولی در این فرم ورک ها نمی تونید؟ تا حالا با کدومشون کار کردید که این طور برداشت کردید از این فرم ورک ها؟
بنده هم با شما موافقم.
البته دونستن اصل مطلب ajax هم بسیار مناسب هست. حقیقت هم این هست که ajax چیزی نداره . واقعا میشه در ۱۰ دقیقه یاد گرفت. اما کتابخانه ها چیزهای بهتری رو به ما می دهند.
امکانات بیشتر
بهینه سازی بیشتر
قابلیت توسعه بیشتری
سازگاری بیشتری
و
.
.
.
مخصوصا اگر برای یک نفر cross browser بودن مهم باشه استفاده از کتابخانه خیلی بهش کمک می کنه و از زمانی که می خواد بزاره تا از ajax به بهترین صورت استفاده کنه کم می کنه

as13851365
دوشنبه 27 آبان 1387, 11:55 صبح
سلام . من اين كد رو برات حاضر كردم.
قبل از همه بايد پايگاه داده رو ايجاد كني. اطلاعات جدول و پايگاه در فايل db.sql است. فايل contacts.php براي كلاينت و بصورت كد نويسي php بدون آژاكس و فايل admin.php براي ادمين .
نكته ي اصلي در اين كد تابع settimeout است settimeout نام يك تابع كه بعنوان آرگومان ميپذيرد را در فواصل زماني ميلي ثانيه كه اينرا نيز بعنوان آرگومان ميپذيرد به اجرا در مي آورد.
اميدوارم كمكت كرده باشم.

احساس کردم که برای انجام این کار می تونیم از تایمر استفاده کنیم ولی شک داشتم تا این که نمونه کد شما aligilani1986 جان رو دیدم یک دنیا ممنون بابت این نمونه کدی که گذاشتی خیلی خوب کار می کنه .


یک سوال برام بوجود اومده ؟! با وجود فرم ورک های استاندارد جاوااسکریپت مثل mootools,porototypejs و از جمله jquery که با یک دستور اعمل ارسال و دریافت مثل ایجکس رو برای شما فراهم میسازند؟

چرا باز اسرار بر استفاده از کدهای دیگر برای راهندازی و ارسال اطلاعات استفاده میکنید. که هر کدوم ممکنه در یک مرورگر جواب گو نباشد یا راهندازی نشود؟

از اونجایی که عنوان این تایپیک * پیاده سازی یک وب سایت پویا بوسیله ajax* هست که توسط آقا سعید راه ایجاد شده است اون طوری که من فهمیدم قرار بوده یک سایت رو با آژاکس برای نمونه طراحی کنند که بنای اولیه رو هم با آموزش آژاکس شروع کردن ولی نمی دونم چی شده بود که این تایپیک از علاقه ( شاید چیزه دیگری ) افتاد یعنی تا پست 69 خوب آمده بودند ولی برای مدت تقریبا 2 ماه این توی این تایپیک فعالیتی انجام نمی شد
حالا من تازه کار می خواستم کار با آژاکس رو شروع کنم که جایی بهتر این و مثالهایی ساده تر از مثال آقا سعید و دیگر دوستان رو ندیدم و از این قسمت برای آشنایی با آژاکس استفاده کردم

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

درباره اون فرم ورک ها هم من تازه اسمش رو شنیدم ( شاید از تازه کار بودن من باشه شاید هم ... ) ولی ممنون که اینها رو مطرح کردید ببینم چی می تونم درباره اینها پیدا کنم ( اگه پیدا نکردم باز مزاحم شما دوستان می شم )


شايد دليلش اينه ، كه چون ميترسيم از اين فريم ورك ها استفاده كنيم. ترسمان هم بدليل نا آشنايي با اين فريم ورك هاست. فکر نکنم یعنی حداقل برای من این صدق نمی کنه چون من تا حالا اسمش رو نشنیده بودم تا این که ازش بترسم .


یکی دیگه هم بخاطر حجم بالای استفاده از این فریم ورکهاست
این هم حرفی است کاملا منطقی .

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


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

حالا من تازه کار خوشحال می شم از شما استاد گرامی هم در این باره چیزی یاد بگیرم ( البته اگه زحمتی برای شما نباشه )
شما می تونید در یک تایپیک جداگانه و یا در پست های همین تایپیک اون چیزهایی رو که می دونید رو مطرح کنید تا دوستان دیگه ( مخصوصا من یکی ) ازشون استفاده کنیم . و اگر می شه نمونه ها و کدهایی رو هم معرفی کنید و لینکی هم برای دانلود بزارید که دیگه فکر کنم محشر بشه .

zoghal
دوشنبه 27 آبان 1387, 13:14 عصر
مثال خوبی زدید اختراع چرخ، چرخ رو نباید دوباره درست کنیم و اما بهتره بدونیم اساس کار به چه صورت هست

برای اینکه بدونیم ایجکس چیست و چه طوری کار میکنه کافیه این مطلب رو گذری بخونید http://www.pishrosoft.com/sitenews/42-mobilenews/85-ajax-.html

داخل این مطلب مباحث راهندازی ایجکس توسط جاوا اسکریپت توضیح داده، اما اگر برنامه نویسی شما در این حد نیست که بتونید روند کار این کد ها رو درک کنید مجبورید توابع زیادی را امتحان کنید و تا آنچه را که میخواهید بدست بیارید

فرم ورک چیست؟ یک کتابخانه از توابع استاندارد شده ای هستند که مارو بجای اینکه به طرف این که چرخ رو چه طور از اول ایجاد کنیم بکشونه، ما رو به سمت استفاده صحیح از چرخ میکشونه(تعریف آمیانه)

من شخصا روی این فرم ورک های جاوا اسکریپت زیاد کار کردم اگر فوق حرفه ایی بخواهید mootools رو معرفی میکنم اما سانتکس سختی داره، اما به نظرم بهترین جی کوئری هست.
یک فرم ورک کوچک قوی وآسون کافیه فقط سایتش رو نگاه کنید jquery.com

برای روشن شدن اینکه چقدر با این فرم ورک ها میشه طراحی رو لذت بخش کرد من یک نمونه برای شما به صورت خیلی ساده نوشتم و اتچ کردم میتونید نگاه کنید،

حتما در سرور یا لوکال سرور استفاده کنید، چون یک فایل پی اچ پی توش استفاده کردم که نحوه ارسال درخواست و گرفتن جواب رو مشاهده کنید.

eAmin
دوشنبه 27 آبان 1387, 16:52 عصر
فکر نمی کنم یک برنامه نویس یا طراح وب بخاطر حداکثر 20 kb بیاد از خوب و بد، بد رو انتخاب کنه،


منظورتون رو از پشت صحنه چیه؟ چه چیزی رو شما با کد نویسی خودتون می تونید ببینید ولی در این فرم ورک ها نمی تونید؟ تا حالا با کدومشون کار کردید که این طور برداشت کردید از این فرم ورک ها؟

اول بزارید یه چیزی رو بگم، من اصلا مخالف استفاده از فریم ورکها نیستم بلکه برعکس! چه بسا که خودم دارم از اینها استفاده می کنم و اکثر فریم ورکها و کتابخانه های جاوااسکریپت رو می شناسم و مورد بررسی قرار دادمشون ( و حتی فریم ورکهایی که برای اکثر افراد هنوز ناشناخته هستند ).:چشمک:
--------------

بله این 20 kb که اصلا چیزی نیست، برای سایتهای کم ترافیک و کم محتوا اگر از 100 kb هم استفاده کنیم هیچ ایرادی و هیچ مشکلی نداره، ولی در سایتها بزرگ و شلوغ پلوغ همین کیلوبایتها هم با ارزش هستند!

فکر می کنم اون توضیح واضح بود، پشت صحنه چه چیزی می گذره، اصلا چه چیزهایی باعث و بانی اینکار هستند.


بنده هم با شما موافقم.
البته دونستن اصل مطلب ajax هم بسیار مناسب هست. حقیقت هم این هست که ajax چیزی نداره . واقعا میشه در ۱۰ دقیقه یاد گرفت. اما کتابخانه ها چیزهای بهتری رو به ما می دهند.
امکانات بیشتر
بهینه سازی بیشتر
قابلیت توسعه بیشتری
سازگاری بیشتری
و
.
.
.
مخصوصا اگر برای یک نفر cross browser بودن مهم باشه استفاده از کتابخانه خیلی بهش کمک می کنه و از زمانی که می خواد بزاره تا از ajax به بهترین صورت استفاده کنه کم می کنه
و همینطور هم من درباره ی ساده بودن ای جکس با شما موافقم...

در مورد مطالب هایلایت شده هم، بیشتر به فردی بر می گرده که چقدر تجربه و دانش داره. ( این در موردهای امکانات، بهینه سازی و سازگاری صدق می کنه ).
و اما قابلیت توسعه پذیری، اصلا جاوااسکریپت ذاتا اینطوری هست و به اینصورت عمل می کنه.

اصولا فریم ورکها برای صرفه جویی در وقت ساخته شدن، و از اینرو تمامی فریم ورکهایی که عرضه می شن، باید تا جایی که ممکنه بی نقص و سازگاری کامل رو داشته باشن.

مثال خوبی زدید اختراع چرخ، چرخ رو نباید دوباره درست کنیم و اما بهتره بدونیم اساس کار به چه صورت هست

من شخصا روی این فرم ورک های جاوا اسکریپت زیاد کار کردم اگر فوق حرفه ایی بخواهید mootools رو معرفی میکنم اما سانتکس سختی داره، اما به نظرم بهترین جی کوئری هست.
یک فرم ورک کوچک قوی وآسون کافیه فقط سایتش رو نگاه کنید jquery.com


اسم این رو نمی شه اختراع گذاشت، اگه اینطور بود پس نباید اکثر این فریم ورکهایی که الان وجود دارن ساخته می شد!
بهتره بدونیم اساس کار چیه و به چه صورت باید استفاده کرد تا بتونیم امکانات بیشتر و نیازهای خودمون رو بر طرف کنیم.

فکر می کنم نمی شه بطور حتم گفت که این فریم ورک بهترین و یا حرفه ای ترین هست، ولی به نظر من حرفه ای ترینش PrototypeJS و بهترینش jQuery هست:لبخند:!

zoghal
دوشنبه 27 آبان 1387, 17:59 عصر
اسم این رو نمی شه اختراع گذاشت، اگه اینطور بود پس نباید اکثر این فریم ورکهایی که الان وجود دارن ساخته می شد!
منظور من واقعا خود اختراع نبود، منظور همون ساختن از نو چرخ یا استفاده از چرخ های ساخته شده و اماده استفاده


بهتره بدونیم اساس کار چیه و به چه صورت باید استفاده کرد تا بتونیم امکانات بیشتر و نیازهای خودمون رو بر طرف کنیم.
موافقم


فکر می کنم نمی شه بطور حتم گفت که این فریم ورک بهترین و یا حرفه ای ترین هست، ولی به نظر من حرفه ای ترینش PrototypeJS و بهترینش jQuery هست:لبخند:!

من حرفه ای بودن و بهترین بودن رو روی چند فاکتور مثل استفاده سایت های بزرگی چون گوگل ، و راحت بودن سانتکس این فرم ورک بیان کردم. فکر میکنم درست هم گفته باشم. البته این ها در جایگاه خودشون
وگرنه فرم ورک هایی هم هستن مثل extjs که واسه php ایجاد شدند و وحید خان عزیز استاد این فرم ورک هستند

امید امرایی
دوشنبه 27 آبان 1387, 18:36 عصر
بنده معتقد هستم كه هيچ كاري نميتونه مطلقا درست و يا مطلقا غلط باشه . چه بسا برنامه نويساني كه با داشتن تسلط كافي بدون استفاده از هيچ فريم ووركي ، برنامه ها رو هم سريع تر و هم بهتر طراحي مي كنند و هستند كساني كه با استفاده مطلق از فريم وورك ها هم هيچ يك از مزيت هايي كه توسط دوستان گفته شد رو نمي تونن وارد عمل كنند .

نه تنها در مورد برنامه نويسي بلكه در تمام عرصه ها، چه با ابزار و چه بي ابزار شما نيازمند يك دانش و تسلط هستيد . گاهي داشتن دانش نسبت به مباني و گاهي دانش جهت استفاده از ابزار و هر دوي اين موارد نيازمند زمان هستند .

persian_farvahar
دوشنبه 27 آبان 1387, 19:16 عصر
بهتره بدونیم اساس کار چیه و به چه صورت باید استفاده کرد تا بتونیم امکانات بیشتر و نیازهای خودمون رو بر طرف کنیم.
بنده معتقد هستم كه هيچ كاري نميتونه مطلقا درست و يا مطلقا غلط باشه . چه بسا برنامه نويساني كه با داشتن تسلط كافي بدون استفاده از هيچ فريم ووركي ، برنامه ها رو هم سريع تر و هم بهتر طراحي مي كنند و هستند كساني كه با استفاده مطلق از فريم وورك ها هم هيچ يك از مزيت هايي كه توسط دوستان گفته شد رو نمي تونن وارد عمل كنند . نه تنها در مورد برنامه نويسي بلكه در تمام عرصه ها، چه با ابزار و چه بي ابزار شما نيازمند يك دانش و تسلط هستيد . گاهي داشتن دانش نسبت به مباني و گاهي دانش جهت استفاده از ابزار و هر دوي اين موارد نيازمند زمان هستند . من هم موافقم من نظرم اينه كه برنامه نويس بايد خودش كد بنويسه نه اينكه بره از كدهاي آماده يا فرم ورك ها استفاده كنه. هم برنامه نويس تنبل ميشه هم اينكه ديگه بايد دستش به سوي ديگران دراز باشه.

ferdin
دوشنبه 27 آبان 1387, 19:29 عصر
موافقم یعنی این کار عالیه

zoghal
سه شنبه 28 آبان 1387, 01:05 صبح
من هم موافقم من نظرم اينه كه برنامه نويس بايد خودش كد بنويسه نه اينكه بره از كدهاي آماده يا فرم ورك ها استفاده كنه. هم برنامه نويس تنبل ميشه هم اينكه ديگه بايد دستش به سوي ديگران دراز باشه.

موافقم یعنی این کار عالیه

من یک جورایی نظر مخالف دارم در پست های قبلی عرض کردم دونستن و نحوه نوشته شدن کد خیلی مهم هست، اما این دلیل نمیشه تا کلی وقت بزارید و دوباره کاری کنید. دیگراناومدن برای شما و من نوعی کد رو نوشتن، استاندارد سازی کردن و در اختیار عموم گذاشتن، تا استفاده بهینه ببریم.

به عنوان مثال سوالی طرح میکنم! شما دوستان چقدر میخواهید وقت بزارید تا بتونید با کد نوشتن، نوشتن و نوشتن و تجربه هایی کم و بیش بی مورد به نظرم من بشینید برای خودتون کدی بنویسید که عملیات ایجکس را با متد های get ,post بر عهده بگیره یا event های مختلفی از جمله کنترل اسکرول موس و ... رو کنترل کنید.، جلوه یا افکت بصری ایجاد کنید، xml و json رو پردازش و تحلیل کنید؟،

یک مقدار درست فکر کنید دارید وقت خودتون رو تلف میکنید، چرا بجای اینکه یک پیچ رو با پیچ گوشتی باز کنید میخواهید با دندان یا ... باز کنید؟ به عنوان مثال عرض می کنم همین فرم ورک جی کوئری با حجم 30 kb داره تمامی این کارها رو در تمامی مرورگر ها به صورت کامل انجام میده .
خوب اگر دوست دارید تجربه کنید و اهل تجربه و دانش آفزونی خودتون هستید، خوب برید در توسعه همین فرم ورک ها شرکت کنید.

این یک طرف سکه اما طرف دیگر سکه برای یک کار تجاری که از حساسیت بالایی هست، خداییش چقدر میخواهید وقت بگزارید تا توابع مورد نظرتون (همین کارهایی که بالا گفتم ) بنویسید،
به نظر شما گوگل و شرکت های بزرگ خودشون مهد و مرکز تولید نرم افزار هستند و کد نویسی های خفن انجام میدن چرا ننشستن واسه خودشون این گونه توابع کتابخانه ای رو ایجاد کنند و دارند از جی کوئری و سایر فرم ورک ها استفاده میکنند،آیا همین گوگل با چشم بسته به سمت این فرم ورک ها رفته؟ یا حوصله تجربه رو نداشته،؟
نخیر یاد گرفتن و تجربه کردن که بهینه و منطقی کار کنند و از ابزار با نگاه دقیق بهره گیری کنند

سایت http://jquery.com/ رو نگاه کنید شرکت و سایت های بزرگی مثل گوگل، دل، ورودپرس، موزیلا و..... دارند از همین فرم ورک استفاده میکنند،

یک نگاه کوچیک به داکیومت و توابع این فرم ورک بندازید http://docs.jquery.com/ خدایی چقدر میخواهید وقت بزارید تا یکی یکی از این ها رو خودتون بنویسید . دوستانی که اینجا اعلام کردن تجربه بهتره تا حالا چند مرتبه اسکریپتی نوشتن که در ie کار میکرده اما در فایر فاکس مشکل داشته و برعکس و ساعت ها به دنبال دیباگ کردن اسکریپت خود وقت صرف کردن؟!


نه تنها در مورد برنامه نويسي بلكه در تمام عرصه ها، چه با ابزار و چه بي ابزار شما نيازمند يك دانش و تسلط هستيد . گاهي داشتن دانش نسبت به مباني و گاهي دانش جهت استفاده از ابزار و هر دوي اين موارد نيازمند زمان هستند .

حرف شما منطقی هست، کسی که دانش نداشته باشه هزاری هم این ابزار ها کار رو راحت کرده باشند باز نمی تونه به درستی استفاده کنه،
آما واقعا قرار نیست بر هر چیزی با روش تجربه مسلط بشیم، بهتره از تجربه دیگران هم استفاده کنیم . به نظر من مشکل ما ایرانی ها همینه که همه کار رو میخواهیم خودمون انجام بدیم، و تجربه دیگران در مرحله آخر یک example برای رفع مشکلاتمون هست،

یک مثال دیگه بزنم، یک نگاه به پروژه های اپن سورس بندازید، میبینید افراد زیادی دارند رو یک پروژه کار می کنند، اگر قرار بود هر کدوم از این افراد اینطوری فکر میکردن که من خودم مثلا یک سی ام اس یا لینوکس مینویسم، که اپن سورسی وجود نداشت

قصد جسارت و توهین و .... ندارم،پوزش مرا پذیرا باشید. اما کسانی که اینجا اعلام کردند که با تجربه موافق هستند تا حالا در مورد xml ،dom, json واقعا اطلاعات دقیقی دارند؟ آیا با تکنیک های برنامه نویسی و شی گرایی آشنا هستند؟ و .....
این ها موارد هستند که باید در موردش دانش کسب کنیم ، بشناسیم و با نحوه کار و عملکرد و مزایا و معایب شون آشنا بشیم و بعد با یک دید باز از این ابزارهای توسعه یافته در پیشرفت پروژه هامون کمال استفاده رو ببریم

janbozorgi
سه شنبه 28 آبان 1387, 07:22 صبح
با سلام
خیلی خوبه، زحمت میکشید
منتظریم
والسلام

vahid4134
سه شنبه 28 آبان 1387, 14:19 عصر
من هم موافقم من نظرم اينه كه برنامه نويس بايد خودش كد بنويسه نه اينكه بره از كدهاي آماده يا فرم ورك ها استفاده كنه. هم برنامه نويس تنبل ميشه هم اينكه ديگه بايد دستش به سوي ديگران دراز باشه.
چرا اینطور فکر می کنید؟ فریم ورک خوبه بد نیست. برنامه نویس هم باهاش تنبل نمیشه. سرعت کد نویسی یکی از معیارهای مهم در برنامه نویسی هست. اصلا فریم ورکها به خاطر همین به وجود اومدند.
کدهای آماده هم خوب هستند. (البته مهندسی معکوس رو باید روش انجام داد)

البته در مورد کتابخانه های جاوااسکریپت واقعا فرق می کنه
این مطالب رو در ادامه فرمایشات zoghal عرض می کنم
توسعه توی کتابخانه های جاوااسکریپت به مراتب بیشتر از بقیه کتابخانه ها هست. مخصوصا حالا که بحث web app های شبیه به desktop app مطرح میشه.
تازه کتابخانه های جاوااسکریپت مثل jquery و مخصوصا extjs قدرت گسترش فراوانی رو داره. شما وقتی که می خوایید از جاوااسکریپت استفاده کنید (نه اینکه مثلا بخوایید یه alert بدید) وقتی که می خوایید واقعا از جاوااسکریپت استفاده کنید واقعا باید خیلی وقت بزارید که بتونید به زیبایی ازش استفاده کنید. خیلی هم وقت بزارید به پای این کتابخونه ها نمی رسید
حتی خود گوگل هم نتونسته که به درستی از جاوااسکریپت استفاده کنه. منظورم gmail هست که داره js حدود ۳۰۰ کیلوبایت رو لود می کنه (زیپ شده اینقدره) آخرشم کار شاقی رو نمی کنه. خداییش من هم با ۸۰ کیلوبایت می تونم بهتر از اینش رو در بیارم. (البته با extjs )
بهتره اول بریم از این کتابخونه های استفاده کنیم. یه ذره وقت بزاریم پاشون بعد واقعا به این نتیجه می رسیم که قدرت جاوااسکریپت چقدر هست و با کتابخونه ها به چه راحتی میشه از این قدرت استفاده کرد.

این رو با تجربه خودم میگم
اگر می خوایید بدونید که ajax چی هست ajax همون چند خطی هست که توی همه سایتها بگردید پیدا میشه. آموزشش هم ۱۰ دقیقه بیشتر طول نمی کشه
اگر می خوایید واقعا از جاوااسکریپت استفاده کنید بهتره یکی از کتابخونه ها رو استفاده کنید. البته درست استفاده کنید. نه اینکه یک مثال رو ببینید بعد اصلا نفهمید که بخوایید تغییرش بدید باید چیکار کنید

aligilani1986
سه شنبه 28 آبان 1387, 23:22 عصر
اسكريپت چك كردن دامنه براي سايتهاي ايراني و خارجي با آژاكس (كار خودمه) :لبخند:
مطمئنا خوشتون مياد.

كامله.
پسورد : ajaxian

امید امرایی
سه شنبه 28 آبان 1387, 23:46 عصر
گویا دوستان متوجه عرایض بنده نشدند.
بنده به هیچ وجه مخالف استفاده از فریم وورک ها نیستم ولی تاکید بر استفاده هم ندارم . صحبت بنده اینه که شما مباحث اصلی رو رها کردید و در مورد یک موضوع سلیقه ای بحث می کنید. درسته که مشورت امر خوب و مهمیه اما در نهایت برنامه نویس خودش باید تشخیص بده که چه کاری بهتره .

عرض بنده اینه که شما یه نگاهی به عنوان تاپیک و پست هایی که رد و بدل می شه بندازید ، یقینا متوجه می شید که چیزی به جز دلسردی برای بازدید کننده نداره.

یه بنده خدایی کلی جستجو کرده و یه مطلبی در مورد Ajax پیدا شده ، حتما با خوشحالی میاد نگاه می کنه و امیدواره که اینجا یه مطلبی در مورد Ajax یاد می گیره می بینه ما داریم بحث می کنیم که آیا از فریم وورک استفاده بکنیم یا نکنیم ! مجبور می شه بره یه تاپیک جدید یا دقیقا با همین عنوان یا شبیه به اون ایجاد کنه . حالا اگه تازه وارد و نا آگاه به قوانین هم باشه که بدتر .

و بدتر از همه اینها اینکه اولین پست هم در جوابش می گن :

جستجو کنید!!!!!

به نظر شما دیگه جایی واسه این جواب مونده ؟
کار درست رو aligilani1986 (http://barnamenevis.org/forum/member.php?u=39854) عزیز انجام دادن و اینجا جای همین کاره

به عنوان مثال vahid4134 (http://barnamenevis.org/forum/member.php?u=28668) عزیز فرمودن :


اگر می خوایید بدونید که ajax چی هست ajax همون چند خطی هست که توی همه سایتها بگردید پیدا میشه. آموزشش هم ۱۰ دقیقه بیشتر طول نمی کشه


اما اگه قرار باشه این بنده خدا تو هر تالاری بشینه پای اینجور بحث ها و در نهایت هم بهش بگن برو 10 دقیقه بگرد پیدا می کنی ! بنده بعید می دونم 10 سال هم بتونه چیزی پیدا کنه !!!
بازم خواهش بنده اینه :
تالار ها اون هم در کشور ما 90 میزبان افرادی هستند که مثل بنده هیچ اطلاعاتی ندارن و اومدن که یاد بگیرند . لطفا مراعات بازدید کننده رو بکنید.

یه نظر سنجی بزارید که فریم وورک بله یا خیر ؟ و چرا ؟ مطمئنا از صحبت های شما اساتید نتیجه بهتری عاید چند نفر کارآموز مثل بنده می شه .

با تشکر

aligilani1986
چهارشنبه 29 آبان 1387, 00:11 صبح
سلام دوستان.
تا حالا با چه نرمافزارهايي برنامه هاي آژاكس نوشته ايد؟

هر چي بوده ، حالا از اين برنامه استفاده كنيد. خيلي جالب و قدرتمنده. من كه وقتي باهاش كار كردم ، تو قدرت فوق العادش موندم. :متعجب: واسه همين خواستم كه شما هم استفاده كنيد:خجالت:

اينم لينك دانلودش. تقريبا 75 mb .

تقديم به همه دوستانم...
http://barnamenevis.org/forum/attachment.php?attachmentid=25614&stc=1&d=1226999192 لينك دانلود ويندوز (http://dl11.filekicker.net/private/$adv-rgn4$1227082187$60f754ef9ef24df4c97cd9be7555be64$/id/$FK60904$207366-TFOR$/cache/c47fdaf52bd61ac3a725c184f5f07010d1bf16a6216195fea0 95fa7651ebf6259e4fefdc53ba1a18ee7b772c2fb009d72d6d 34cefd44adeae46806e5dc2ec44d5b876b4317e2b718a315e5 adc6/wavemaker-4.0.2.24308-community.exe)
يا در اين صفحه (http://www.wavemaker.com/downloads/index.html)

zoghal
چهارشنبه 29 آبان 1387, 00:38 صبح
گویا دوستان متوجه عرایض بنده نشدند.
بنده به هیچ وجه مخالف استفاده از فریم وورک ها نیستم ولی تاکید بر استفاده هم ندارم . صحبت بنده اینه که شما مباحث اصلی رو رها کردید و در مورد یک موضوع سلیقه ای بحث می کنید. درسته که مشورت امر خوب و مهمیه اما در نهایت برنامه نویس خودش باید تشخیص بده که چه کاری بهتره .

عرض بنده اینه که شما یه نگاهی به عنوان تاپیک و پست هایی که رد و بدل می شه بندازید ، یقینا متوجه می شید که چیزی به جز دلسردی برای بازدید کننده نداره.

یه بنده خدایی کلی جستجو کرده و یه مطلبی در مورد Ajax پیدا شده ، حتما با خوشحالی میاد نگاه می کنه و امیدواره که اینجا یه مطلبی در مورد Ajax یاد می گیره می بینه ما داریم بحث می کنیم که آیا از فریم وورک استفاده بکنیم یا نکنیم ! مجبور می شه بره یه تاپیک جدید یا دقیقا با همین عنوان یا شبیه به اون ایجاد کنه . حالا اگه تازه وارد و نا آگاه به قوانین هم باشه که بدتر .

و بدتر از همه اینها اینکه اولین پست هم در جوابش می گن :

جستجو کنید!!!!!

به نظر شما دیگه جایی واسه این جواب مونده ؟
کار درست رو aligilani1986 (http://barnamenevis.org/forum/member.php?u=39854) عزیز انجام دادن و اینجا جای همین کاره

به عنوان مثال vahid4134 (http://barnamenevis.org/forum/member.php?u=28668) عزیز فرمودن :


اما اگه قرار باشه این بنده خدا تو هر تالاری بشینه پای اینجور بحث ها و در نهایت هم بهش بگن برو 10 دقیقه بگرد پیدا می کنی ! بنده بعید می دونم 10 سال هم بتونه چیزی پیدا کنه !!!
بازم خواهش بنده اینه :
تالار ها اون هم در کشور ما 90 میزبان افرادی هستند که مثل بنده هیچ اطلاعاتی ندارن و اومدن که یاد بگیرند . لطفا مراعات بازدید کننده رو بکنید.

یه نظر سنجی بزارید که فریم وورک بله یا خیر ؟ و چرا ؟ مطمئنا از صحبت های شما اساتید نتیجه بهتری عاید چند نفر کارآموز مثل بنده می شه .

با تشکر
حرف شما کاملا متین هست عنوان مطلب هم "پیاده سازی یک وب سایت پویا بوسیله ajax" هست
به قول شما یکی میاد اینجا یک چیزی رو یاد بگیره، اما قرار باشه ما اون رو با مسائل فنی و پیچیده راهنمایی کنیم کارآموز یا میره از کد هایی استفاده میکنه که هیچ ازش سر درنمی یاره یا بیخیال میشه،

اگر بحث، پیرامون چگونه کار کردن ایجکس هست پس باید در این مسائل بحث بشه به نظرمن.

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

aligilani1986
چهارشنبه 29 آبان 1387, 00:40 صبح
سلام دوستان.
ببخشيد كه اينو ميگم، فكر كنم هدف از ايجاد اين تاپيك ، پیاده سازی یک وب سایت پویا بوسیله ajax بوده ، ولي تا حالا جز 1 مورد پرتال نديدم. فكر ميكنم كه وقتشه به موضوع اصلي اين تاپيك بپردازيم.

ممنون از همه دوستاني كه همراهي ميكنند.

بازم ميام.:لبخند:

zoghal
چهارشنبه 29 آبان 1387, 00:51 صبح
ولي تا حالا جز 1 مورد پرتال نديدم

منظرورتون رو نگرفتم

deviant
چهارشنبه 29 آبان 1387, 08:52 صبح
آقا چقدر بحث الکی کردین.
هر کدومتون یک پست درستو حسابی تو این تاپیک می ذاشتین ، الان این تاپیک بهترین تاپیک آموزش Ajax می شد.
اینجا ما می خوایم Ajax یاد بگیریم نه این که framework بهتره یا نه. این مسئله بایدبه صورت دیگری مطرح بشه.
شرمنده همتون.

aligilani1986
چهارشنبه 29 آبان 1387, 09:10 صبح
منظرورتون رو نگرفتم

منظورم اين بود.
http://barnamenevis.org/forum/showpost.php?p=565597&postcount=62

aligilani1986
چهارشنبه 29 آبان 1387, 09:16 صبح
سلام.
براي امروز لينك xampp رو گذاشتم.
من هميشه از اين برنامه براي اجراي php استفاده ميكنم. ويژگيهاش هم اينه ...


Apache HTTPD 2.2.9 + Openssl 0.9.8i
MySQL 5.0.67
PHP 5.2.6
PHP 4.4.9
phpMyAdmin 2.11.9.2
FileZilla FTP Server 0.9.27
Mercury Mail Transport System 4.52

و بهترين ويژگيش هم استفاده از zend optimizer است. (قابل توجه دوستاني كه با zend guard برنامه هاشون رو كد ميكنند.)
لينك دانلود ويندوز (http://garr.dl.sourceforge.net/sourceforge/xampp/xampp-win32-1.6.8-installer.exe) يا اين صفحه (http://sourceforge.net/project/downloading.php?groupname=xampp&filename=xampp-win32-1.6.8-installer.exe&use_mirror=garr)

as13851365
چهارشنبه 29 آبان 1387, 09:23 صبح
اگه دوستان دقت کنند تایپیک از پست 79 به بعد کلی تغییر مسیر داده و از حالت آموزشی به حالت جنگی در اومده !!!!!

مثل این که قرار بود آقا سعید توی این تایپیک یک سایتی رو با استفاده از آژاکس طراحی کنه ( اگه اشتباه نکنم ) پس خواهشا دیگه پستی جز آموزش و سوال در پیرامون آژاکس مطرح نکنید ( این سوالات نباید شامل فرم ورک و از این جور چیزها باشه ها )

اگه دوستان کمک کنند ( نجنگند ) می تونند این تایپیک رو به یک منبع و آموزش خوب برای آژاکس تحت php تبدیل کنند .

نمی خوام تقصیرها رو گردن دیگران بندازم ولی دوست خوبمان ( خودشان می دونند که کی رو می گم ) نقش بیشتری در به بیراه گشیدن این تایپیک داشتن . هر چند که بعضی از پستهای 79 تا 100 کمی جالب بود ولی خواهشا از موضوع اصلی دور نشید ممنون می شم.

اگر دوستان می خوان در مورد فرم ورک هم اطلاعاتی قرار دهند به نظر من یک تایپیک جدید ایجاد کنند و هر فرم ورکی رو که می خواهند و می دونند ارزش داره و در کل بهتره رو توش قرار بدن و کمی هم درباره نحویه استفاده از اون ( نام توابع و کار توابع و .... ) توضیح بدن بهتر خواهد بود.

جناب zoghal خان در پست 86 شما یک نمونه برنامه قرار داده بودید که خیلی جالب بود شما می تونید در تایپیک جداگانه ای اقدام به آموزش استفاده از این فرم ورک ها بکنید تا دوستان دیگه از مطالب شما استفاده کنند.

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

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

(من قصد هیچ گونه توهین و یا محکوم کردن کسی رو نداشتم و امیدوارم که دوستان از دست من یکی ناراحت نشده باشند و هیچ گونه سوء تفاهمی هم پیش نیامده باشد )

musiox
چهارشنبه 29 آبان 1387, 09:35 صبح
به نظر شما کی حال داره 11 صفحه رو بخونه؟ من به بچه ها پیشنهاد میکنم یکی بحث رو جمع بندی کنه و اونو به فرمت pdf به صورت بخش بخش در بیاره تا این 11 صفحه و مطالب خوبش نابود نشن .

aligilani1986
چهارشنبه 29 آبان 1387, 12:34 عصر
سلام دوستان.

من واقعا ناراحتم:ناراحت:.
لطفا پستهاي مفيد بفرستيد.:لبخند:
من هم كه يكي دوتا پست ميفرستم ، نمي بينيد.:افسرده:
لطفا يك چيزي بفرستيد كه آموزنده باشه.

اگه بخواهد اينطوري پيش بره ، فكر نكنم بتونم سري به اين تاپيك بزنم.

tanha2007
پنج شنبه 30 آبان 1387, 20:51 عصر
من از سعید جان خواهش میکنم اون قولی را که داده بودند در باره این تاپیک لطفا ادامه دهند ... تا دیگران نیز بتوانند استفاده بهینه نمایند ...

تشکر

aligilani1986
شنبه 02 آذر 1387, 10:45 صبح
می بخشید اون کسی که این تاپیک رو زده چرا دیگه ولش کرده و رفته؟

و اینکه من نتونستم هیچ کدوم از مثال ها رو در ie ببینم و اصلا خبری از xml و غیره نبود.

بهتر نبود بانک رو هم قرارا می دادید.

و اینکه حتما برای ای جکس باید از php استفاده کرد نمیشه یه صفحه ساده html رو آجاکسی استفاده کنیم.
سلام .
میشه از html بعنوان صفحه ی اصلی استفاده کنی ، اما برای پردازش اطلاعات سمت سرور باید از زبان اسکریپت نویسی سمت سرور (php,asp,asp.net,... ) استفاده کنی. html برای نمایش اطلاعات بکار میره و جاوااسکریپت هم سمت کلاینت است.

seven7777777
یک شنبه 10 آبان 1388, 10:15 صبح
و این تاپیک هم مثل اکثر تاپیک های این فروم در نهایت نقص به دست فراموشی سپرده شد ...

رضا قربانی
شنبه 06 آذر 1389, 11:18 صبح
استاد کجایی - تاپیک مفغود شد رفت

@AM!R!
یک شنبه 07 آذر 1389, 18:54 عصر
من موضوعی رو در یک تاپیک با این لینک ایجاد کردم
http://barnamenevis.org/showthread.php?260790-%D8%A7%D8%AC%D8%B1%D8%A7%DB%8C-%DB%8C%DA%A9-query-%D8%A8%D8%A7-onchange-%D8%B4%D8%AF%D9%86-%DB%8C%DA%A9-Combobox

موضوع اینه که تو یه صفحه از سایتم یک COMBOBOX هست که کاربر با انتخاب هر آیتم از اون یک جدول که در زیر اون قرار داره و اطلاعاتش از بانک میاد رو همون لحظه و تو همون صفحه پر میکنه

راه حل رو دوستان گفتند AJAX

حالا سوال اینه که:
آیا میشه با AJAX با ارسال موضوع انتخابی کاربر به سرور و بعد اجرای یک دستور SELECT جدول چند سطری رو ایجاد کنم و یکجا برای کاربر برگردونم؟ اگر جواب مثبت هست راه حل شما چیه؟

MMSHFE
شنبه 18 دی 1389, 09:43 صبح
خیلی کار خوبی رو آغاز کردید. من کل پست ها رو خوندم . در ادامه اگر ارسال از طریق متد POST رو هم توضیح بدید تقریباً بحث کامل میشه.


فکر میکنم این مشکل با sitemap قابل حل باشه. مثلاً برای هر لینک آجاکسی میشه لینک معادل صفحه رو در site map قرار داد
با سلام و ضمن تشكر بابت بحث مفيدتون، از امروز اگه لياقت داشته باشم، من هم در جمع PHP كارهاي اين سايت در خدمت خواهم بود. درمورد سؤالتون درباره متد POST هم بايد بگم كه تفاوت زيادي با متد GET نداره. فقط يكسري تفاوتهاي جزئي هست كه در ادامه اشاره ميكنم:
1- موقع بازكردن شئ XMLHttpRequest بايد اون رو با روش POST باز كنيد:


ajaxRequest.open("POST", "serverTime.php", true);
2- ابتدا بايد توسط دستور زير، قبل از فراخواني تابع send از شئ XMLHttpRequest، نوع هدر درخواست رو اينطوري تنظيم كنيد:


ajaxRequest.setRequestHeader("Content-type", "application/x-www-form-urlencoded");
3- موقع صدا زدن تابع send، بجاي ارسال پارامتر null بايد مقاديري كه ميخواين رو براش ارسال كنيد:


ajaxRequest.send("id=<?PHP echo($id); ?>&date=<?PHP echo(date()); ?>");
اگه سؤالي بود در خدمتم.
موفق و مؤيد باشيد.

MMSHFE
شنبه 18 دی 1389, 10:29 صبح
با سلام، در جواب آقا امير عزيز هم عرض كنم بله اين امكان وجود داره. كافيه صفحه PHP شما اطلاعات رو از بانك اطلاعاتي استخراج كنه و به كمك تگهاي HTML بصورت جدول نمايش بده و خروجي اون صفحه رو توسط AJAX توي قسمتي از صفحه اصلي نمايش بديد. براي اطلاعات بيشتر، لينك زير رو دانلود كنيد:
ncis.ir/downloadfiles/ajaxtable.rar
نكته: آدرس رو كپي كنيد و توي صفحه جديد باز كنيد تا دانلود شروع بشه.
اگه توضيح بيشتري هم خواستيد در خدمتم.
موفق و مؤيد باشيد.

nader3
دوشنبه 01 اسفند 1390, 13:43 عصر
با تشکر از همه دوستانی که تو این تاپیک به بحث و گفتگو پرداختند و به خصوص از آقا سعید بابت آموزش.
تاپیک خیلی خوبی بود.