امتیاز موضوع:
  • 0 رأی - میانگین امتیازات: 0
  • 1
  • 2
  • 3
  • 4
  • 5
Simple Ajax Example
نویسنده پیام
mehdvirus آفلاین
در حال پیشرفت
***

ارسال‌ها: 439
موضوع‌ها: 27
تاریخ عضویت: اسفند ۱۳۸۲

تشکرها : 0
( 39 تشکر در 26 ارسال )
ارسال: #1
Toungue  Simple Ajax Example
خوب اين كد رو اول داخل يه فايل ذخيره كنيد حالا چه پي اچ پي چه اچ تي ام ال
کد php:
<html>
<
head>
<
script language="javascirpt">

function 
xmlhttpPost(strURL) {
    var 
xmlHttpReq false;
    var 
self this;
    
// Mozilla/Safari
    
if (window.XMLHttpRequest) {
        
self.xmlHttpReq = new XMLHttpRequest();
    }
    
// IE
    
else if (window.ActiveXObject) {
        
self.xmlHttpReq = new ActiveXObject("Microsoft.XMLHTTP");
    }
    
self.xmlHttpReq.open('POST'strURLtrue);
    
self.xmlHttpReq.setRequestHeader('Content-Type''application/x-www-form-urlencoded');
    
self.xmlHttpReq.onreadystatechange = function() {
        if (
self.xmlHttpReq.readyState == 4) {
            
updatepage(self.xmlHttpReq.responseText);
        }
    }
    
self.xmlHttpReq.send(getquerystring());
}

function 
getquerystring() {
    var 
form     document.forms['form1'];
    var 
name form.name.value;
    
qstr 'w=' escape(name);  // NOTE: no '?' before querystring
    
return qstr;
}

function 
updatepage(str){

    
document.getElementById("result").innerHTML str;

}
</
script>
</
head>

<
form name="form1" >
  <
p>Name: <input name="name" type="text" >  
  <
input value="Go" type="button" onclick='javascirpt:xmlhttpPost("b.php")'></p>
  </
form>
<
div id="result"></div>
</
body>
</
html
خوب توضيحات
ما در اول كدمون
کد php:
if (window.XMLHttpRequest) {
        
self.xmlHttpReq = new XMLHttpRequest();
    }
    
// IE
    
else if (window.ActiveXObject) {
        
self.xmlHttpReq = new ActiveXObject("Microsoft.XMLHTTP");
    } 
تعييين ميكنيم اگه مرورگر كاربر اينترنت اكسپلورر بود ميگيم از اكتيو ايكس استفاده كنه نه اگه موزيلا يا صفري بود از ايكس ام ال اچ تي تي پي ريكوئست
در خط بعدي :
کد php:
self.xmlHttpReq.open('POST'strURLtrue); 
ميگيم كه اطلاعاتي داريم كه بايد پست بشن همونطور كه ميدونيد دو روش داريم يا گت يا پست ...اگه ما اينجا گت بزاريم فقط قادر خواهيم بود اطلاعات رو دريافت كنيم و نميتونيم هيچ چيزي ارسال كنيم
در خط بعديش ميگيم كه اطلاعات ما داخل يك فرم هستن
کد php:
if (self.xmlHttpReq.readyState == 4) { 
در اين خط ميگيم اگه دريافت اطلاعات موفقيت آميز بود
کد php:
updatepage(self.xmlHttpReq.responseText); 
يعني اگه موفقيت آميز بود اطلاعات جديد رو جايگزين كن و در تابعي كه برا همين منظور هست اطلاعات رو داخل ديو قرار ميديم
کد php:
function updatepage(str){

    
document.getElementById("result").innerHTML str;


كار تابع
کد php:
function getquerystring() {
    var 
form     document.forms['form1'];
    var 
name form.name.value;
    
qstr 'w=' escape(name);  // NOTE: no '?' before querystring
    
return qstr;

اينه كه مياد اطلات رو بصورت كويري دريافت ميكنه
------
حالا ميرسيم به كد اچ تي ام الي كه بايد اينكارو بكنه برامون
کد php:
<form name="form1" >
  <
p>Name: <input name="name" type="text" >  
  <
input value="Go" type="button" onclick='javascirpt:xmlhttpPost("b.php")'></p>
  </
form>
<
div id="result"></div
----
فكر ميكنم همه چيزش واضح هست و نيازي به توضيح نداره , فقط اينكه اطلاعات ما درون تگ ديو با ايدي result قرار ميگيره
حالا بايد صفحه دوم خودمون يعني b.php رو بسازيم
پس يه فايل باز ميكنيم با اين نام و اين كد رو توش قرار ميديم
کد php:
$name=$_REQUEST['w'];
$ip=$HTTP_SERVER_VARS["REMOTE_ADDR"];
print
"Hello <b>$name</b> ,Your Ip Address Is : <b>$ip</b> ,You Are Trying Simple Ajax Example."
اين كد هم كه ديگه خيلي واضح و روشنه
خوب برنامه ما تموم شد تنها كاري كه بايد بكنيد اينه كه تستش كنيد Biggrin
اگه سوالي داشتيد درباره اين مقاله بپرسيد

مهدي صفري
۱۷-اردیبهشت-۱۳۸۵, ۱۹:۲۴:۲۴
ارسال‌ها
پاسخ
mehdvirus آفلاین
در حال پیشرفت
***

ارسال‌ها: 439
موضوع‌ها: 27
تاریخ عضویت: اسفند ۱۳۸۲

تشکرها : 0
( 39 تشکر در 26 ارسال )
ارسال: #2
RE: Simple Ajax Example
در ضمن اينو خيلي راحت ميتونيد با هرزبون ديگه اي بنويسيد چه دات نت چه پرل
قسمت b.php رو اينطوري هم ميتونيد بنويسيد
کد php:
<?php
$name
=$_REQUEST['w'];
$ip=$HTTP_SERVER_VARS["REMOTE_ADDR"];
if (
$name=="mehdi"){
print
"Hello Dear<b>$name</b> :X ,Your Ip Address Is : <b>$ip</b> ,You Are Trying Simple Ajax Example.";
}else{
print
"hey <b>$name</b> :-| ";
}
?>
ميتونيد اينجا هم نمونه انلاينشو ببينيد
۱۷-اردیبهشت-۱۳۸۵, ۱۹:۲۴:۳۹
ارسال‌ها
پاسخ
mehdvirus آفلاین
در حال پیشرفت
***

ارسال‌ها: 439
موضوع‌ها: 27
تاریخ عضویت: اسفند ۱۳۸۲

تشکرها : 0
( 39 تشکر در 26 ارسال )
ارسال: #3
RE: Simple Ajax Example
اينم برا دات نت [تصویر:  65.gif]
قسمت اول كد همونه و فقط در قسمت دوم يعني b.php  مينويسيد
کد php:
Dim strName as String
strName 
Request.Form"w" )
response.write("Hello" strName
(آخرین ویرایش در این ارسال: ۱۷-اردیبهشت-۱۳۸۵, ۱۹:۲۶:۰۶، توسط mehdvirus.)
۱۷-اردیبهشت-۱۳۸۵, ۱۹:۲۴:۵۵
ارسال‌ها
پاسخ
mehdvirus آفلاین
در حال پیشرفت
***

ارسال‌ها: 439
موضوع‌ها: 27
تاریخ عضویت: اسفند ۱۳۸۲

تشکرها : 0
( 39 تشکر در 26 ارسال )
ارسال: #4
RE: Simple Ajax Example
و البته پرل[تصویر:  105.gif]                            
b.php
کد php:
use CGI;

$myquery = new CGI;

$name $query->param('w');
$ip $query->remote_host();

print 
$myquery->header;
print
"Hello <b>$name</b> ,Your Ip Address Is : <b>$ip</b> ,You Are Trying Simple Ajax Example."
(آخرین ویرایش در این ارسال: ۱۷-اردیبهشت-۱۳۸۵, ۱۹:۲۷:۲۸، توسط mehdvirus.)
۱۷-اردیبهشت-۱۳۸۵, ۱۹:۲۵:۱۰
ارسال‌ها
پاسخ
amirjan آفلاین
مدیر بازنشسته
*****

ارسال‌ها: 1,105
موضوع‌ها: 24
تاریخ عضویت: تير ۱۳۸۳

تشکرها : 348
( 697 تشکر در 251 ارسال )
ارسال: #5
RE: Simple Ajax Example
تکنولوژی نو پایی هست . خیلی دوست دارم یاد بگیرم . ممنون. بازم از این کارا بکن Biggrin
راستی کاش اول یه مقاله کوچولو براش میزاشتی که اصلا مخفف چی هست ، برای چی به وجود اومده ، .... ، اونطوری فکر کنم استقبال بیشتری بشه.

سید امیر حسین حسنینی

Human knowledge belongs to the world ...
۱۵-تير-۱۳۸۵, ۱۴:۱۶:۰۲
ارسال‌ها
پاسخ
ha_60 آفلاین
بنيانگذار سايت
******

ارسال‌ها: 4,637
موضوع‌ها: 216
تاریخ عضویت: آبان ۱۳۸۳

تشکرها : 560
( 6556 تشکر در 2385 ارسال )
ارسال: #6
RE: Simple Ajax Example
اول اين تكنولوژي سرور سايد نيست كلاينت سايد Biggrin
"ميگيم كه اطلاعاتي داريم كه بايد پست بشن همونطور كه ميدونيد دو روش داريم يا گت يا پست ...اگه ما اينجا گت بزاريم فقط قادر خواهيم بود اطلاعات رو دريافت كنيم و نميتونيم هيچ چيزي ارسال كنيم"
فكر كنم اينو اشتباه نوشتي
"راستی کاش اول یه مقاله کوچولو براش میزاشتی که اصلا مخفف چی هست ، برای چی به وجود اومده "
و اما براي چي به وجود اومده توي صفحات معمولي تمام عمليات سمت سرور انجام مي شن و تمام داده ها از سرور گرفته مي شن اين باعث بالا رفتن حجم كار سرور و ترافيك سمت سرور مي شه اين در حاليه كه هزاران كامپيوتر سمت كلاينت ها داريم كه تقريبا هيچ استفاده از اونها نمي شه(كسايي كه دارن صفحات سايت رو مي بينن)
حالا اگه مقداري از كد ها رو توي سمت كلاينت بنويسيم اولا داده هاي فرستاده و در يافت شده به صورت پردازش شده خواهد بود يعني داده اضافه ديگه نمي فرستيم و در يافت كنيم مثلا اگه فقط مي خوايم بگيم كه داده رو در يافت كرديم يك كلمه "Send Complet" رو مي فرستيم نه يه صفحه HTML‌ با كلي عكس و ... در طرف كلاينت هم هر جا دوست داشتيم و به هر شكلي كه دلمون خواست نشون مي ديم اين رو اين كار پردازش سرور رو كم مي كنه پهناي باند سرور رو هم پايين مي ياره و در طرف يوزر هم به علت پهناي باند كمتر مصرف شده سرعت بسيار بالاتري رو خواهيم داشت كه باعث محبوبيت اين تكنولوژي شده
قشنگ ترين تعريفي هم كه ازش ديدم اين بود "Ajax يعني هنر استفاده از XMLHttpRequest"
و اگه بر داشت منو بخواي Ajax يعني برنامه نويسي با JScript

هادی امین زاده
دیدن چیزی که همه می بینند هنر نیست
بانک اطلاعات صنایع ایران.
۱۶-تير-۱۳۸۵, ۰۷:۵۶:۴۴
وب سایت ارسال‌ها
پاسخ
amirjan آفلاین
مدیر بازنشسته
*****

ارسال‌ها: 1,105
موضوع‌ها: 24
تاریخ عضویت: تير ۱۳۸۳

تشکرها : 348
( 697 تشکر در 251 ارسال )
ارسال: #7
RE: Simple Ajax Example
هادی جان ایول !
راستی یه سوال ، گفتی که : "اگه بر داشت منو بخواي Ajax يعني برنامه نويسي با JScript" . مگه با VBscript نمیشه یه XMLHttpRequest ایجاد کرد ؟ یعنی کد سمت کلاینت ما حتما باید جاوا اسکریپت باشه ؟AtQuestion نمیشه گفت Avbax ؟! Tongue

سید امیر حسین حسنینی

Human knowledge belongs to the world ...
۱۷-تير-۱۳۸۵, ۱۶:۴۷:۳۳
ارسال‌ها
پاسخ
ha_60 آفلاین
بنيانگذار سايت
******

ارسال‌ها: 4,637
موضوع‌ها: 216
تاریخ عضویت: آبان ۱۳۸۳

تشکرها : 560
( 6556 تشکر در 2385 ارسال )
ارسال: #8
RE: Simple Ajax Example
اينم حرفيه فقط بديش اينه كه AJAX هم ديگه بچه بازي مي شه :d
فكر خيلي خوبيه ها خيلي كار رو راحت مي كنه مخصوصا وقتي داري با ASP‌ مي نويسي

هادی امین زاده
دیدن چیزی که همه می بینند هنر نیست
بانک اطلاعات صنایع ایران.
۱۷-تير-۱۳۸۵, ۱۹:۲۰:۳۵
وب سایت ارسال‌ها
پاسخ
amirjan آفلاین
مدیر بازنشسته
*****

ارسال‌ها: 1,105
موضوع‌ها: 24
تاریخ عضویت: تير ۱۳۸۳

تشکرها : 348
( 697 تشکر در 251 ارسال )
ارسال: #9
RE: Simple Ajax Example
ای نامرد ! حالا دیگه هر چی وی بی شد ، بچه بازی شد !؟Biggrin

سید امیر حسین حسنینی

Human knowledge belongs to the world ...
۱۷-تير-۱۳۸۵, ۱۹:۲۵:۱۱
ارسال‌ها
پاسخ
ha_60 آفلاین
بنيانگذار سايت
******

ارسال‌ها: 4,637
موضوع‌ها: 216
تاریخ عضویت: آبان ۱۳۸۳

تشکرها : 560
( 6556 تشکر در 2385 ارسال )
ارسال: #10
RE: Simple Ajax Example
:d
بابا چت كه نمي كنيم بزار جوهرش خشك شه :d
والا آخه اين سبزي فروش سر كوچه ما هم vb‌ كار مي كنه ولي ايده بسي جالبي بود يه بار بايد تست كنم

هادی امین زاده
دیدن چیزی که همه می بینند هنر نیست
بانک اطلاعات صنایع ایران.
۱۷-تير-۱۳۸۵, ۱۹:۲۹:۲۱
وب سایت ارسال‌ها
پاسخ
NabiKAZ آفلاین
مدیر بازنشسته
*****

ارسال‌ها: 520
موضوع‌ها: 48
تاریخ عضویت: اسفند ۱۳۸۲

تشکرها : 6
( 60 تشکر در 46 ارسال )
ارسال: #11
RE: Simple Ajax Example
سلام ،
منم گفتم در این باره یه ابراز وجود بکنم به دلیل اینکه من هم فوق العاده به این تکنولوژی نه چندان جدید ! (قابل توجه امیرجان) علاقه مند شدم .
AJAX خیلی جدید نیست ، فقط کمتر مورد توجه و استفاده قرار میگرفته .

راستی در مورد مثالی که مهدی جان ارائه داد از متد POST استفاده شده بود، ساده تر از اون استفاده از متد GET است که کدش رو براتون میزارم.

راستی یه پورتال جستجوگر بانک اطلاعاتی نوشتم که بی ارتباط به بحث نیست چون تا حد امکان سعی کردم از این تکنولوژی استفاده کنم مخصوصا بخش مدیریتیش که کار مدیر رو بسیار راحت و سریع کرده .
نسخه آزمایشی اون رو در اینجا مشاهده کنید:
http://www.ahwazserver.net/dbsearch
ورود به بخش مدیریت:
http://www.ahwazserver.net/dbsearch/admin
user: admin
pass: ahwazserver
(به بخش مدیریت مورد جزئی و کلی توجه کنید ، افزودن ، ویرایش، حذف و ...)
به نظرتون چند قیمت روش بزارم ؟!

تشکر
نبی

۲۱-تير-۱۳۸۵, ۰۳:۴۴:۴۴
وب سایت ارسال‌ها
پاسخ


موضوعات مرتبط با این موضوع...
موضوع نویسنده پاسخ بازدید آخرین ارسال
  گرفتن مقدار یک session با ajax ahsanjan 18 14,987 ۲۵-خرداد-۱۳۹۳, ۱۲:۳۳:۵۲
آخرین ارسال: PouriaAmid
  آموزش AJAX peyman59 0 2,615 ۱۷-مهر-۱۳۹۱, ۱۹:۰۹:۳۱
آخرین ارسال: peyman59
  اجرای فایل های ajax Vig 2 3,411 ۰۷-فروردین-۱۳۸۷, ۰۲:۳۳:۳۹
آخرین ارسال: Mamad2003
  مشكل با كاراكتر space و % در Ajax siamak-s 3 3,475 ۲۹-مرداد-۱۳۸۶, ۲۳:۱۱:۱۱
آخرین ارسال: siamak-s

پرش به انجمن:


کاربرانِ درحال بازدید از این موضوع: 1 مهمان

صفحه‌ی تماس | IranVig | بازگشت به بالا | | بایگانی | پیوند سایتی RSS