parsgreen.com
article

استفاده ترکیبی از جاوا اسکریپت (JavaScript) و PHP

javascript-php

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

هدف از ترکیب JavaScript و PHP


پیش از اینکه به ادامه آموزش بپردازیم، بد نیست در یک جمع بندی کلی با هدف این تکنیک آشنا شویم.
شرایطی که باعث می شود از جاوا اسکریپت و PHP به صورت ترکیبی استفاده کنیم اغلب به مواردی مربوط می شوند که بخواهیم به طور مثال محتوای داینامیک خروجی داده شده توسط کدهای PHP را به صورت فریم در صفحات HTML نمایش دهیم، به طور مثال فرض کنید فایل PHP با آدرس زیر یک آیکن پیج رنگ نمایش می دهد.
http://www.yoursite.com/page_rank.php?url=$url&img=5
واضح است که اگر آدرس فرضی بالا در یک مرورگر وارد شود، آیکن پیج رنک به نمایش در می آید، اما مسلما امکان درج مستقیم فایل PHP در صفحات HTML وجود ندارد و از طرفی تمام و شاید اغلب کاربران این امکان را ندارند که از دستورات سمت سرور استفاده کنند و محتوای فایل را نمایش دهند (که اگر هم در شرایطی این طور باشد، با مشکلات و دردسرهای بعدی روبرو خواهند شد)، به همین خاطر باید به دنبال یک واسطه بین فایل های داینامیک و صفحات HTML استاتیک باشیم، این واسطه نیز چیزی نیست جزء دستورات جاوا اسکریپت که به راحتی می توان به کمک آنها و تنها با چند خط کدنویسی ساده به هدف مورد نظر رسید و کد نهایی را به شکل نمونه زیر تغییر داد.
<script type="text/javascript" src="http://yoursite.com/page_rank.php?url=$url&img=5"></script>
اکنون می توان کد اسکریپتی بالا را در صفحات HTML به راحتی استفاده کرد، این روش جایگزین مناسبی است برای تکنیک های مشابه (مانند استفاده از iframe و...)، اما مراحل انجام این کار.

فراخوانی فایل PHP در JavaScript


اولین گام این است که آدرس فایل PHP خود را در قسمت src تگ های جاوا اسکریپت آدرس دهی کنیم، البته اگر تعداد فایل های سمت سرور بیش از یک مورد باشد، فایلی باید در این قسمت تنظیم شود که خروجی را تولید می کند و نیازی به وارد کردن سایر فایل ها درون دستورات جاوا اسکریپت نیست، به مثال زیر توجه کنید.
<script type="text/javascript" src="http://yoursite.com/output.php"></script>
نکته 1: اگر فایل سمت سرور (فایل PHP) نیاز به دریافت پارامترهایی داشته باشد، مانند متد GET در حالت عادی، می توانیم پارامترها را با افزودن علامت ? به انتهای آدرس و استفاده از علامت های & و =، به هر تعداد که لازم است تنظیم کنیم.
نکته 2: استفاده از این روش محدود به لینک های داینامیک نیست، درواقع با هر لینکی که فایل سرور به درستی توسط آن فراخوانی شود، خروجی دریافت شده و به نمایش در می آید.

تنظیمات JavaScript در فایل PHP


در گام دوم و در فایل PHP، باید خروجی کدها را مطابق با syntax دستور document.write تنظیم کنیم، همان طور که می دانیم یک دستور ساده document.write در جاوا اسکریپت به صورت زیر است:
<script type="text/javascript">
document.write('چاپ خروجی مورد نظر در مرورگر');
</script>
لذا وقتی این دستور را در کدهای PHP استفاده می کنیم باید به نکات زیر توجه داشته باشیم.
- درج موارد مربوط به document.write درون تگ های PHP مجاز نیست و باید خارج از علامت های php?> و ?> باشد.
نمونه اشتباه:
<?php
document.write('echo "ترکیب جاوا اسکریپت و PHP";');
?>
نمونه صحیح:
document.write('<?php
echo "ترکیب جاوا اسکریپت و PHP";
?>');
- به جهت رعایت syntax صحیح و مطابق با دستور العمل جاوا اسکریپت، علامت های ' و " در خروجی را با یک بک اسلش (\) ایمن سازی می کنیم، دقت کنید که در برخی سرور ها به جهت روشن بودن قابلیت magic_quotes_gpc (این قابلیت علامت های ' و " را با افزودن یک بک اسلش ایمن سازی می کند)، این کار به صورت خودکار انجام می شود و لذا ابتدا باید این قابلیت را غیر فعال کنید یا بک اسلش های اضافه شده را حذف نمائید تا از درج دو بک اسلش (یک بک اسلش توسط magic_quotes_gpc و یک بک اسلش دیگر توسط توابعی مانند addslashes) اجتناب شود، نمونه راه حل زیر می تواند هر دو مشکل را بر طرف کند.
document.write('<?php
//تابعی برای حذف بک اسلش های اضافه
function GpcClean($str){
    if(get_magic_quotes_gpc()){
        return stripslashes($str);    
    }
    return $str;
}
//افزودن بک اسلش به خروجی
echo addslashes(GpcClean("ترکیب جاوا اسکریپت و PHP"));
?>');
ملاحظه می کنید که برای بررسی روشن بودن قابلیت magic_quotes_gpc از تابع get_magic_quotes_gpc استفاده کرده ایم، اگر این قابلیت روشن باشد (مقادیر برگردانده شده توسط تابع get_magic_quotes_gpc برابر با TRUE بود)، مقادیر خروجی از فیلتر تابع stripslashes عبور کرده و بک اسلش های زائد حذف می شوند، در نهایت نیز با تابع addslashes، هر جا علامت ' یا " در خروجی وجود داشته باشد به صورت '\ و "\ تبدیل می شوند تا مطابق با syntax دستورات جاوا اسکریپت باشند.
نکته: استفاده از خط جدید (line break) در خروجی، مجاز نیست و موجب از کار افتادن نمایش کد می شود، به عبارت دیگر نباید از حالت Enter در خروجی کدهای PHP در ترکیب با جاوا اسکریپت استفاده شود.
sectionدسته بندی: آموزش کاربردی » JavaScript
related مطالب بیشتر:
» ساخت منوی آکاردئونی با جاوا اسکریپت و CSS
» ساخت افکت رنگی با جاوا اسکریپت (Javascript)
» نحوه ایجاد دکمه رفتن به بالای صفحه (go to top) با جاوا اسکریپت
» نمایش پیام در بالا یا پائین صفحات وبلاگ و سایت با جاوا اسکریپت
» کنترل و تغییر اندازه فونت صفحه با جاوا اسکریپت
commentنظرات (۶۷ یادداشت برای این مطلب ارسال شده است)
نویسنده: شریفی
زمان: ۲۱:۴۳:۵۰ - تاریخ: ۱۳۹۱/۱۲/۲۹
سلام. از سایت خوبتون تشکر می کنم.
کاش یه کم در مورد روش های جلوگیری از هک سایت یا لو رفتن اطلاعات ذخیره شده در مای اس کیو ال که هکر ها از طریق ارسال شل یا ارسال ویروس می تونن انجام بدن، توضیحاتی بنویسید.
همچنین نحوه نوشتن کد پی اچ پی « امن » فیلد های ورودی مثل نام یا ایمیل رو بنویسید.
پاسخ: 
سلام
ممنون از پیشنهادات خوب شما، حتما در این خصوص و البته در آینده نزدیک مطالبی منتشر خواهد شد.
نویسنده: شریفی
زمان: ۲۳:۳۳:۱۷ - تاریخ: ۱۳۹۱/۱۲/۲۹
ممنون.
راستی سایت شما رو در سایتم به صورت متد جدید گوگل لینک کردم.
adoniya.ir/Prolink/26
البته منتی به سر شما نیست. وظیفه ماست که از سایت های خوبی مثل وبگو حمایت کنیم...
با تشکر
پاسخ: 
سپاس فراوان از لطف شما.
نویسنده: فریبا
زمان: ۱۷:۳۳:۰۵ - تاریخ: ۱۳۹۲/۰۱/۰۹
سلام
بابت سایت خوبتون متشکرم
سوالی در مورد ساخت فایل در PHP داشتم چون نمی دونستم کجا بنویسم اینجا مطرح می کنم:
من با تابع tempnam در PHP یک فایل درست می کنم که می خوام اسمش فارسی باشه ولی اسم فایل را به این صورت می گذارد:
تعمیر موتورسیکلت درجه 1
از جوابتون ممنونم.
پاسخ: 
سلام
تا آنجا که می دانیم، نام فایل ها در PHP از استاندارد ISO-8859-1 یا (ASCII) پیروی می کند، لذا در حالت معمول نمی توانید فایل هایی به فرض با کاراکترهای فارسی بسازید و این کار نیاز به دستکاری های ساختاری دارد.
نکته دوم اینکه با فرض قابل ساخت بودن فایل هایی با کاراکترهای غیر معمول، بهتر است این کار را نکنید، چون ممکن است با مشکلات بعدی ناشی از سازگار نبودن توابع و مفسر PHP روبرو شوید.
نویسنده: سلام
زمان: ۰۳:۰۰:۳۸ - تاریخ: ۱۳۹۲/۰۱/۱۰
مرسی بابت سایت بسیار خوب و پر محتوای شما )):
چطور میشه چند تا عکس رو به اندازه های کوچک وکنارهم در یک پست وبلاگ قرار داد؟؟؟؟؟
اگر بخوام اخبار روز یک سایت را به صورت اسکرول در بالای وبلاگ داشته باشم چکار باید کرد؟؟؟؟
پاسخ: 
مواردی که مطرح کردید در این قسمت قابل آموزش نیست! برای نمایش چند عکس کنار هم باید با css و خاصیت های آن آشنا باشید که خود مبحث مفصلی دارد، مورد دوم نیز باید از ترکیب rss خوان و جاوا اسکریپت استفاده کنید.
نویسنده: رهگذر ....
زمان: ۱۱:۳۸:۳۳ - تاریخ: ۱۳۹۲/۰۱/۱۰
برای به کار بردن عبارتهای فارسی در پی اچ پی کافیه که استاندارد رو از ASCII به UTF8 تغییر بدین. اون وقت هر چی فارسی توی فایل بنویسید درست و حسابی نمایش داده میشه.
با تشکر
پاسخ: 
سلام
خیلی ممنون از مشارکت شما، اما مشکلی که در سوال بالا مطرح شده در ارتباط با نام فایل است نه محتوای درون فایل.
نویسنده: مهدي
زمان: ۱۴:۳۹:۳۲ - تاریخ: ۱۳۹۲/۰۱/۱۵
سلام واقعا مطالب سايتتون عاليه من كه لذت مي برم ببخشيد كه اينجا اين نظر رو مي نويسم شما به بزرگي خودتون ببخشيد ولي يه درخواست داشتم توضيحاتي رو كه در مورد اي جكس داده بوديد تو مطالب قبلي من نتوستم ازش استفاده كنم اما از آموزش اين آدرس زير استفاده كردم :
aliha.ir/2010/10/04/ajax-loading-content-with-jquery
/اين سايت ديگه آپديت نميشه بخاطر همين خواستم كه شما اين مطلب رو آموزش بديد با اين فرق كه
1- قسمت لودر سايت تا وقتي كه مطالب جديد هنوز بروز نشدن بياد اون قسمت و ناپديد نشه
2- يه سري اشكالاتي داره مثلا اين كه وقتي روي لينك كليك مي كني مطالب عوض نميشن بعد از چند ثانيه عوض ميشن لطفا راه رفع اين مشكل رو هم بگيد
ممنون
پاسخ: 
سلام
آموزش های مقدماتی سایت برای افرادی مناسب است که قصد دارند برنامه نویسی وب را از پایه یاد بگیرند، برای موارد کاربردی، باید از کدهای کاربردی استفاده کنید، به هر صورت در مورد لینکی که قرار دادید، متاسفانه این امکان برایمان مقدور نیست، ضمن اینکه مطلب مبتنی بر جی کئوری است و در حال حاضر این فریم ورک در سایت آموزش داده نمی شود، توصیه ما این است که از نمونه های کاملی که در وب کم هم نیستند استفاده کنید، یا به سایت های تخصصی در زمینه جی کئوری رجوع نمائید.
نویسنده: علی
زمان: ۰۳:۳۳:۳۳ - تاریخ: ۱۳۹۲/۰۱/۱۶
با سلام
سوالم زیاد به این موضوع نمیخوره , ممنون میشم کمکم کنید.
من یک کد دارم به این صورت
<?php echo $_smarty_tpl->tpl_vars['item']->value['content'];?>
حالا به چه صورت قرار دهم تا این کد
<div class="comment"></div>
در آن عمل کند. زیرا
['content']
در کد php بالا باید در
<div class="comment"> اینجا </div>
قرار گیرد تا کد عمل کند.
هر کاری میکنم کد php عمل نمیکند و یا بلعکس کد html عمل نمیکنه
راه چیست؟
پیشاپیش از زحماتتون سپاس گذارم.
پاسخ: 
سلام
پاسخ دقیق به سوال شما نیازمند بررسی کامل کد و کلاس های آن است اما اگر اشتباه نکنیم، روش ساده زیر می تواند قبل و بعد از content مقادیری را چاپ کند که به نظر مشکل شما همین است:
<?php echo '<div class="comment">';echo $_smarty_tpl->tpl_vars['item']->value['content'];echo"</div>";?>
نویسنده: علی
زمان: ۱۵:۲۶:۴۳ - تاریخ: ۱۳۹۲/۰۱/۱۶
خیلی ممنون از پاسختون :)
این آخرین سوال بنده هست.
<?php if ($_smarty_tpl->tpl_vars['item']->value['content']){?>
<div class="ow_newsfeed_content ow_smallmargin"><?php echo $_smarty_tpl->tpl_vars['item']->value['content'];?>
این کد های من است.
['content']
برای نمایش مطلب تنظیمشون کردم. (هردو شون)
حالا بنده ی کد نوشتم برای قرار دادن شکلک در متن , مثلا من اگه :) ارسال کنم. در سایت شکلکش نمایش داده بشه.
<div class="comment"> محل کد</div>
در بالا نوشتم محل کد, یعنی پست باید اونجا (محل کد) قرار بگیرد نمایش داده بشه تا در نهایت :) تبدیل به شکلک شود.
کد شکلک ها هم روی وبلاگ آزمایش کردم عمل میکنه.
حالا بنده چطور روی دو تا
['content']
بالا قرار دهم تا کد عمل کند؟
برای اینکه مطلبتون بهم نخوره من به اینجا سر میزنم , میتونید 24 ساعت بعد پاسخ حذفشون کنید.
با سپاس
پاسخ: 
برای این مورد باید ببیند مقادیر content چگونه فراخوانی می شود و سورس اصلی آن را پیدا کنید، سپس داخل آن سورس را باید ویرایش و موارد مد نظرتان را اضافه کنید، این مورد را نمی توانیم به سادگی برایتان توضیح دهیم، نیازمند آشنایی شما با مبحث آرایه ها و برنامه نویسی شی گرا در php است که خود مبحثی مفصل دارد.
نویسنده: 3minar
زمان: ۲۱:۱۷:۴۶ - تاریخ: ۱۳۹۲/۰۱/۱۶
ممنون به خاطر آموزش های خوبتون. دوستان می تونن از آموزش های این سایت
pix3l.ir/Programming.aspx
هم استفاده کنند . من هر روز یک سر میزنم مطالبش خیلی خوب و مفیده. توی زمینه پروژه برنامه نویسی هم کار می کنه.
تشکر
نویسنده: عليرضا
زمان: ۱۴:۵۴:۳۱ - تاریخ: ۱۳۹۲/۰۱/۲۲
سلام . ممنون از آموزشهاتون . در مورد فريم وركهاي php مثل zend ميخواستم ازتون بپرسم كه در چه جاهايي بايد از اين فريم وركها استفاده كنيم .من با php اشنا هستم و مشغول يادگيري شي گرايي هستم ولي گويا بايد فريم وركها را هم ياد بگيرم . مثلا ايا شما همين سايت را با فزيم ورك خاصي طراحي كرده ايد؟
پاسخ: 
سلام
استفاده از فریم ورک اجباری نیست و حتی در بیشتر موراد غیر ضروری است، PHP به تنهایی آنقدر قدرتمند است که بتواند نیازهای برنامه نویسان وب را پوشش دهد، استفاده از فریم ورک در موارد خاصی توصیه می شود، به طور مثال برای کسانی که تجربه کدنویسی ندارند یا برخی امکانات که به صورت عادی با PHP در دسترس نیست، به فرض تا آنجا که می دانیم PHP به صورت پیش فرض از زبان فارسی در هنگام خروجی pdf پشتیبانی نمی کند، اما فریم ورک zend این کار را انجام می دهد، حال اگر قرار است سایت شما فایل های pdf از محتوایی بسازد که فارسی است، نیاز به فریم ورک است که کار با آنها چندان سخت نیست، فریم ورک را در صفحه وارد می کنید و به این ترتیب به کلاس ها و توابع آن دسترسی دارید.
در مورد اینکه در سایت از فریم ورک استفاده شده یا خیر، در حال حاضر از هیچ فریم ورکی استفاده نشده است، مهم این است که شما با نظم و ساختار مشخص برنامه بنویسید که برای توسعه بعدی آن، نیاز به کمترین صرف وقت باشد، البته معمولا تجربه این مورد به تدریج کسب می شود.
زمان: ۲۰:۱۱:۴۸ - تاریخ: ۱۳۹۲/۰۴/۳۱
با عرض سلام و خدا قوت خدمت شما؛
ابتدا باید از سایت آموزنده و بسیار خوبتون تشکر کنم و براتون آرزوی موفقیت و سربلندی داشته باشم (إن شاء الله که بیش از پیش موفق باشید).
درباره 2 سؤال مزاحمتون میشم :
سؤال 1 :
بنده با استفاده از راهنمایی‌های شما برای ساخت RSS Feed Reader و همچنین تجربیاتی که درباره برنامه‌نویسی php داشتم، تونستم یه Feed Reader برای نمایش آخرین مطالب وبلاگ کلاسی خودمون بسازم (در قسمت بالای همه مطالب :
www.mums89.ir
با توجه به اینکه میهن‌ بلاگ اجازه استفاده از تگ iframe رو نمیده، مجبور شدم با استفاده از روشی غیرمستقیم، Feed Reader رو فراخوانی کنم :
http://www.stunet.ir/services/feed_reader/iframe.php?src=http://www.stunet.ir/services/feed_reader/feed_reader_3_1.php&height=550
).
منتهی برای نمایش دادن محتوای این Feed Reader، از روش iframe استفاده کردم و هر کاری کردم نتونستم از روش document.write استفاده کنم، چون همون‌ طور که توضیح داده بودید، به دلیل وجود line break در کد، امکان نمایش محتوا مختل خواهد شد.
سؤال بنده اینجاست که آیا راهی هست که بدون استفاده از iframe (با توجه به دست و پا گیر بودن این روش)، محتوای RSS رو نمایش داد؟
اگه روش document.write مد نظره، آیا امکان داره new line ها رو با استفاده از تابع str_replace، با <br> جایگزین کرد؟ یا به کار گرفتن تابعی شبیه به تابع trim؟ (چون قصد ندارم برخی فضاهای خالی به کار رفته در متن آخرین مطالب وبلاگ با استفاده از تابع trim از بین برن)
یا اگه راه حل دیگه‌ ای مد نظرتون هست بفرمایید.
اما سؤال 2 :
در ابتدا عذر می‌خوام اگه این سؤالم کمی با این مطلب نمی‌خونه، چون مطلب مرتبط دیگه‌ای برای پرسیدن این سؤال پیدا نکردم.
فرض کنید بنده ابزاری رو برای وبلاگ‌ها و وب‌ سایت‌ها توسط سایت خودم ارائه کنم (مثلاً همین Feed Reader رو با کمی بهینه‌سازی و افزایش انعطاف‌پذیری، به صورت ابزار ارائه کنم یا ابزار دیگه‌ ای مثل «رتبه‌بندی ستاره‌ ای» مطالب و ...).
سؤال بنده اینجاست که آیا راهی هست که بشه فهمید چه وبلاگ یا سایتی از ابزار مورد نظر ما استفاده می‌کنه (به طور خاص، برنامه‌ نویسی php رو در نظر دارم)؟
و تنها در صورتی که کاربر، وبلاگ یا سایت خودش رو در سایت ما ثبت‌ نام کرده باشه، اجازه استفاده از ابزار و نمایش اون رو به کاربر بدیم (با بررسی و چک کردن اینکه وبلاگ یا سایت کاربر در database ثبت شده)؟
درباره هر کدوم از سؤالات، اگه فقط اشاره‌ای اجمالی هم داشته باشید و بفرمایید که باید دنبال چه عنوان (title) هایی بگردم هم ممنون خواهم بود و نیازی به توضیح بیشتر و به زحمت افتادن شما نیست؛ ولی اگه علاوه بر اشاره به روش کار، توضیح مختصری هم بفرمایید، لطف مزیدی از جانب شما خواهد بود.
می‌بخشید اگه سرتون رو درد آوردم.
حق یار و نگهدارتون.
پاسخ: 
سلام
در مورد سوال اول:
نمایش خروجی کدهای PHP در سایر صفحات HTML به طور معمول از دو طریق iframe یا document.write امکانپذیر است، حالت اول چون حساسیت کم تری (از نظر syntax) دارد، برای خروجی های طولانی و چند خطه مناسب است، اما حالت دوم (document.write) نیاز به رعایت اصول خاصی دارد و با کوچک ترین اشتباه از کار می افتد، لذا برای گرفتن خروجی های کوچک کاربرد دارد، از طرفی همان طور که اشاره کردید، برخی سرویس ها اساسا امکان استفاده مستقیم از برخی تگ ها را نمی دهند و به ناچار باید آنها را به نوعی دور زد (همان کاری که کرده اید)، نتیجه اینکه راه دیگری برای حل مشکل شما به ذهن نمی رسد (این روشی است که خیلی از سایت های ارائه کننده ابزارهای وبلاگ نویسی نیز از آن استفاده می کنند).
در مورد سوال دوم:
زمانی که یک فایل PHP (فایل ابزار) فراخوانی می شود، یک سربرگ HTTP به سرور ارسال می شود که (معمولا) یک قسمت آن شامل آدرس سایت ارجاع دهنده است، در PHP این آدرس ارجاع با
$_SERVER['HTTP_REFERER']
قابل دریافت است، لذا:
<?php
$valid_domains = array(
'webgoo.ir',
'google.com'
);

$valid = FALSE;

foreach ($valid_domains as $domain){
if(preg_match("@https?://$domain/.*@", @$_SERVER['HTTP_REFERER'])){
$valid = TRUE;
}
}
if ($valid){
echo "OK!";
}
else{
echo "Error!";
}
?>
البته این کد در بیشتر موارد و برای اغلب کاربران کافی است، اما چون امکان تغییر REFERER برای کاربران حرفه ای وجود دارد، بهتر است از دستورات htaccess (هرچند به شکل دستی) استفاده کنید:
<Files script.php>
order deny,allow
deny from all
allow from domain1.com
allow from domain2.com
</Files>
نویسنده: amir
زمان: ۰۰:۴۳:۰۹ - تاریخ: ۱۳۹۲/۰۵/۲۹
درود بر شما و با تشكر از مطالب مفيد ي كه بدون چشم داشت به كاربران ارائه مي دهيد. من يك در خواست داشتم اميد است بتوانيد در اين مورد كمك كنيد:
در اسكريپت تبادل بنر softbiz banner ehchange ، كدي كه كاربران بايد در سايت خود قرار دهند به صورت iframe مي باشد ، حال اگر بخواهيم كد مورد نظر به صورت javascript باشد ( به خاطر اينكه بعضي از سيستم هاي وبلاگدهي كدهاي iframe را را قبول نمي كنند)، چگونه بايد كدها را تغيير داد ، ممنون ميشم اگر در اين مورد كمكم كنيد بسيار ضروري است.
پاسخ: 
کدهایی که به صورت iframe هستند معمولا حاوی مقادیر زیادی خروجی به صورت HTML می باشند لذا نمی توان خروجی را مستقیم در جاوا اسکریپت قرار داد، برای برخی از سیستم ها می توان تگ iframe را با جاوا اسکریپت درج کرد، مثال:
<script type="text/javascript">
var src = 'http://webgoo.ir';
var output;
output = '<if';
output += 'rame src="' + src;
output += '" width="300" height="200" frameborder="0"></if';
output += 'rame>';
document.write(output);
</script>
این روش تنها در برخی موارد کاربرد دارد، اما برای سیستم هایی مانند بلاگفا که محدودیت های دست و پا گیر زیادی دارند و علاقه زیادی به مچ گیری از کاربران، چاره عملی وجود ندارد، بهترین کار استفاده نکردن از اینچنین سرویس هایی است!
نکته: فراخوانی کدها می تواند از طریق قرار دادن آنها در یک فایل js و به صورت href نیز باشد.
نویسنده: مرتضی
زمان: ۱۱:۱۳:۵۰ - تاریخ: ۱۳۹۲/۱۰/۰۳
ضمن تشکر از مطالب خوب شما
برای ارسال فایل ضمیمه در ایمیل از php دارم استفاده می کنم. می خوام در صورتی که فرمت فایل ضمیمه موارد آرایه
$format
نبود اون وقت به جای پیغام زیر:
فایل ضمیمه شده مجاز نمی باشد. تنها فرمتهای
با جاوا اسکریپت همین پیغام رو نشون بده.
$formats = array('jpg','gif','png','jpeg','bmp');
// بررسی فرمت فایل ضمیمه
$ext = end(explode('.',$file_name));
if(!in_array($ext,$formats)){
echo"فایل ضمیمه شده مجاز نمی باشد.تنها فرمتهای ";
}
پاسخ: 
می توانید خروجی را به صورت نمونه زیر چاپ کنید:
<?php
if(!in_array($ext,$formats)){
echo "<script type=\"text/javascript\">alert('فایل ضمیمه شده مجاز نمی باشد.تنها فرمتهای');</script>";
}
?>
نویسنده: میلاد عباسی
زمان: ۱۴:۰۶:۵۹ - تاریخ: ۱۳۹۲/۱۰/۰۶
سلام.
من یک فایل ایجوری می خوام درست کنم برای ابزار جستجوی سایتم .
اما توی نمونه ها دیدم که 3 تا echo استفاده شده .
echo اول که با "باز و بسته شده و استایل و ... توش قرار داده شده.
echo دوم که echo توش نیست و فقط یک خط کد توش هست.
echo سوم که باز با "باز و بسته شده و سلکتور با </a></div> بسته شده .
خواستم بدونم کدهای خودم را باید کجاش بزارم .
کد های من 12 خط هست.
پاسخ: 
سلام
هر چند منظورتان از نمونه ها مشخص نیست! به هر صورت آنچه لازم بوده در آموزش توضیح داده شده، اینکه چند echo و... استفاده شود مهم نیست، مهم این است که خروجی نهایی مطابق با syntax دستورات در جاوا اسکریپت باشد (درک دقیق این مسئله نیازمند داشتن تجربه قبلی در کدنویسی جاوا اسکریپت است).
نویسنده: nima
زمان: ۲۱:۲۱:۲۲ - تاریخ: ۱۳۹۲/۱۰/۲۰
سلام
برای اینکه در سایت آنلاین یا آفلاین بودن کاربر رو مشخص کنیم ، یه دستور با جاوا اسکریپت که رویداد موقع خروج از مرورگر رو اجرا میکنه ، که موقع خروج با آپدیت دیتابیس این رو مشخص می کنیم ، سوال من اینکه که چطوری به جای دستور alert کد php رو اجرا کنیم ، البته کد رو که جایگزین می کنم بدون در نظر گرفتن شرط اجرا میشه ،
  window.onbeforeunload = confirmExit;
function confirmExit()
{

//code

}
پاسخ: 
سلام
این روش استاندارد و صحیحی نیست! جاوا اسکریپت یک زبان اسکریپت نویسی سمت کاربر است، خروج کاربر باید با فراخوانی یک کد در سرور انجام شود، البته این فراخوانی می تواند به شیوه Ajax (و ترکیب جاوا اسکریپت و PHP) نیز انجام شود، برای کسب اطلاعات بیشتر به آموزش های بخش Ajax مراجعه کنید.
نکته: در صورتی که می خواهید پس از بستن مرورگر توسط کاربر نشست او به پایان برسد، باید مدت اعتبار session را برای همان جلسه تنظیم کنید (رجوع به آموزش کار با سشن در PHP).
paged صفحه 1 از 5




more لطفا دقت کنید که یادداشت های زیر منتشر نشده و حذف خواهند شد:
- یادداشت های خارج از موضوع این مطلب.
- سوالات کلی، غیر ضروری و مشکلاتی که هیچ تلاشی برای رفع آن نکرده باشید.
- نظرات حاوی کدها و اسکریپت های خیلی طولانی (به طور مثال کد کامل قالب وبلاگ).

4 × 1
 refresh
آگهی
seonab.com
طراحی نرم افزار اندروید
رنگین کمان عکس
Ranginkamaan.com

آرشیو عکس های باکیفیت با موضوعات متنوع...