article

ذخیره و نمایش اطلاعات فایل با ای جکس (Ajax) و PHP

ajax-php-txt-file

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

تابع فراهم سازی امکان ارسال درخواست ای جکس (Ajax)


همانطور که در آموزش های مقدماتی برنامه نویسی ای جکس (Ajax) گفتیم، برای ارسال پارامترها یا دریافت پاسخ سرور به واسطه دستورات ای جکس قبل از هر کاری ابتدا باید شرایط ارسال درخواست را فراهم کنیم که معمولا این ساز و کار در مفسر جاوا اسکریپت مرورگرها با استفاده از آبجکت (object) یا شی XMLHttpRequest ایجاد می شود و به این صورت می توانیم درخواست را در بستر ای جکس از مرورگر به سرور ارسال یا پاسخ را از سرور دریافت و در مرورگر پردازش کنیم، به هر صورت از آنجایی که مرورگر اینترنت اکسپلورر در نسخه های قدیمی (ماقبل 7) از متدهای خاص خود استفاده می کند برای نوشتن تابع فراهم سازی امکان ارسال درخواست ای جکس (Ajax) سازگار با این مرورگر و خطایابی ساده تر معمولا از روش try و catch استفاده می کنیم، در نمونه کد زیر تابع فراهم سازی امکان ارسال درخواست ای جکس (Ajax) سازگار با نسخه های قدیمی مرورگر اینترنت اکسپلورر را درج کرده ایم:
<script>
//تابع درخواست ای جکس
function ajaxRequest(){
    var xmlHttp;
    
    try{
        //Opera, Firefox, Safari
        xmlHttp = new XMLHttpRequest();
    } catch (e){
        //Internet Explorer
        try{
            xmlHttp = new ActiveXObject("Msxml2.XMLHTTP");
        } catch (e) {
            try{
                xmlHttp = new ActiveXObject("Microsoft.XMLHTTP");
            } catch (e){
                alert("متاسفانه مرورگر شما از ای جکس پشتیبانی نمی کند");
                return false;
            }
        }
    }
    
    //return
    return xmlHttp;
}
</script>
به این صورت هر زمان که تابع را فراخوانی کنیم در پاسخ یک شی XMLHttpRequest ساخته می شود (مرورگر اینترنت اکسپلورر در نسخه های ماقبل 7 از قابلیت ActiveXObject استفاده می کند).
این نمونه کدها را می توانیم در فایلی با نام دلخواه ajax_request.js ذخیره و در صفحه وارد کنیم یا اینکه کدها را به صورت مستقیم در صفحه HTML درج کنیم.
نکته: در هنگامی که کدهای جاوا اسکریپتی را در فایل های مستقل با فرمت js درج می کنیم قاعدتا تگ های script باید حذف شوند، با این توضیح دقت کنیم که اگر تابع را در فایل ajax_request.js درج می کنیم نباید به همراه تگ های script باشد!

کدهای ارسال درخواست و دریافت پاسخ با ای جکس (Ajax)


پس از اینکه شرایط درخواست ای جکس را با کمک آبجکت XMLHttpRequest مهیا کردیم به کدهایی نیاز داریم که ارسال، دریافت و نمایش اطلاعات را مدیریت کنیم، برای این کار از نمونه کد زیر استفاده می کنیم:
<script>
//ارسال اطلاعات فیلدها و ذخیره در فایل متنی
function sendRequest(id){
    var ajax_request = ajaxRequest();
    var php_file = 'php-file.php';
    var value = document.getElementById(id).value;
    
    ajax_request.onreadystatechange = function(){
        if(ajax_request.readyState == 4){
            if(ajax_request.status == 200){
                displayContent('مقادیر با موفقیت به سرور ارسال شد!<br>');
            } else{
                displayContent('دریافت خطا! HTTP کد: ' + ajax_request.status + '<br>');
            }
        } else{
            displayContent('لطفا چند لحظه صبر کنید...<br>');
        }
    };
    
    ajax_request.open("POST", php_file, true);
    ajax_request.setRequestHeader("Content-Type", "application/x-www-form-urlencoded");
    ajax_request.send('value=' + value);       
}

//دریافت اطلاعات فایل متنی و فراخوانی تابع نمایش در مرورگر
function receiveResponse(){
    var ajax_request = ajaxRequest();
    var ajax_caching = false;
    var text_file = 'text-file.txt';
    
    ajax_request.onreadystatechange = function(){
        if(ajax_request.readyState == 4){
            if(ajax_request.status == 200){
                displayContent(ajax_request.responseText);
            } else{
                displayContent('دریافت خطا! HTTP کد: ' + ajax_request.status + '<br>');
            }
        } else{
            displayContent('لطفا چند لحظه صبر کنید...<br>');
        }
    };
    
    if(ajax_caching == false){
        text_file = text_file + '?nocache=' + Math.random();
    }
    
    ajax_request.open("GET", text_file, true);
    ajax_request.send(null);
}

//تابع نمایش اطلاعات در مرورگر (بلاک div)
function displayContent(content){
    var show_result = document.getElementById("show-result");
    
    show_result.innerHTML = content;
}
</script>
این کدها را نیز می توانیم در فایلی با نام دلخواه ajax-send-receive.js ذخیره کنیم.
توضیح:
- در این کد سه تابع تعریف شده است، تابع sendRequest، receiveResponse و displayContent که هر کدام مربوط به بخش خاصی از فرآیند ارسال، دریافت و نمایش اطلاعات با ای جکس است.
- تابع sendRequest درون خود تابع فراهم سازی امکان درخواست ای جکس (ajaxRequest) را فراخوانی می کند، در هنگامی که حالت آماده یا نتیجه متد readyState برابر 4 است وضعیت پاسخ سرور با متد status بررسی می شود، اگر مقدار status برابر 200 باشد یعنی مشکلی در سمت سرور وجود ندارد اما اگر هر کدی به جزء 200 دریافت شود یعنی در فرآیند پردازش درخواست در سرور و کدهای PHP مشکلی رخ داده است، به طور مثال دریافت کد خطای HTTP 404 یعنی منبع درخواستی از سرور یافت نشده است، در ادامه تابع displayContent فراخوانی شده که وظیفه ی آن نمایش اطلاعات مد نظر ما در بلاک div مورد نظر است.
- برای جلوگیری از ذخیره سازی احتمالی درخواست های GET یا به اصطلاح کش (Cache) شدن ناخواسته اطلاعات از پارامتر دلخواه nocache با مقادیر اتفاقی در آدرس URL استفاده کرده ایم که در تابع receiveResponse به صورت متغیر ajax_caching مشخص است، مقادیر اتفاقی باعث می شود مرورگر در هر درخواست مشابه آدرس URL جدید رفتار کند و اطلاعات به صورت خودکار تازه سازی (Refresh) شوند، این کار از ذخیره سازی موقت یا Caching درخواست های  ای جکس در مرورگر جلوگیری می کند.
- تابع displayContent با متد جاوا اسکریپتی innerHTML محتویات مد نظرمان را در بلاک div با آی دی تعریف شده (در اینجا show-result) مقداردهی می کند.
- مقادیر responseText در تابع receiveResponse محتوایی است که از فایل txt خوانده می شود، در واقع درخواست ای جکس محدود به فایل های PHP نیست و می توانیم محتوای فایل های متنی را نیز به عنوان نتیجه درخواست دریافت کرده و به نحو دلخواه پردازش کنیم.

دستورات PHP برای دریافت مقادیر و ذخیره در فایل متنی


همان طور که به کارگیری ای جکس (Ajax) در سمت کاربر مستلزم استفاده از جاوا اسکریپت است، در سمت سرور نیز باید از زبان های برنامه نویسی قابل اجرا در سرور نظیر PHP بهره بگیریم، با دستورات PHP می توانیم مقادیر ارسالی از طریق متدهای متداول POST یا GET را دریافت کرده و پردازش مورد نظر را روی آنها اعمال کنیم، به طور مثال در نمونه کد زیر اطلاعات دریافتی از درخواست ای جکس در فایل فرضی text-file.txt ذخیره می شود:
<?php
@$value = $_POST['value'];
$text_file = 'text-file.txt';

file_put_contents($text_file, $value);
?>
این فایل را با نام php-file.php در کنار سایر فایل ها ایجاد می کنیم.
نکته 1: متد استفاده شده در کدهای PHP بستگی به متدی دارد که در درخواست ارسال اطلاعات سمت کاربر برای ای جکس استفاده شده است (در اینجا متد POST).
نکته 2: تابع استفاده شده در کدهای PHP برای ذخیره سازی اطلاعات در فایل متنی تابع درونی و از پیش تعریف شده file_put_contents است.
https://www.php.net/manual/en/function.file-put-contents.php

کدهای HTML سمت کاربر و پیش نمایش آنلاین


توابع جاوا اسکریپتی را می توانیم به نحو دلخواه با رویدادها (Events) در سمت کاربر فراخوانی کنیم، به طور مثال رویداد onload با بارگذاری کامل صفحه اجرا می شود یا با اختصاص رویداد onclick به دکمه (Button) تابع پس از کلیک کاربر فراخوانی می شود، به هر صورت شیوه و زمان فراخوانی بستگی به نیاز و هدف برنامه دارد به طور مثال در کدهای HTML صفحه زیر دو نمونه دکمه جهت ارسال مقادیر از فیلد input به سرور و دریافت اطلاعات فایل متنی از سرور طراحی شده که مبتنی بر رویداد onclick هستند:
<!DOCTYPE html>
<html lang="fa">
<head>
<meta charset="utf-8">
<meta name="viewport" content="width=device-width, initial-scale=1">
<title>وبگو | خواندن و نوشتن فایل متنی با ای جکس (Ajax) و PHP</title>
<!-- Webgoo.ir -->
<style>
body {
    font-family: Tahoma, Geneva, sans-serif;
    font-size: 12px;
    direction: rtl;
    line-height: 22px;    
}
#show-result {
    background: #999999;
    color: #FFFFFF;
}
</style>
<script src="ajax-request.js"></script>
<script src="ajax-send-receive.js"></script>
</head>
<body>
<noscript>جاوا اسکریپت در مرورگر شما غیر فعال است یا پشتیبانی نمی شود!</noscript>
<label for="ajax-input">ابتدا یک مقدار متنی در این فیلد وارد کنید:</label>
<input name="ajax_input" id="ajax-input"><br><br>
<button onclick="sendRequest('ajax-input');">ارسال مقادیر</button>
<button onclick="receiveResponse();">دریافت اطلاعات</button><br><br>
<div id="show-result">پاسخ های برنامه در این بلاک نمایش داده می شود.</div>
<hr>
- با فشردن دکمه "ارسال مقادیر" مقدار از فیلد input دریافت و از طریق تابع sendRequest به فایل php-file.php ارسال و با برنامه نویسی PHP در فایل متنی text-file.txt ذخیره می شود.<br>
- با فشردن دکمه "دریافت اطلاعات" مقدار از طریق تابع receiveResponse از فایل متنی text-file.txt دریافت و در بلاک show-result نمایش داده می شود.<br>
- وظیفه نمایش پاسخ های برنامه را تابع displayContent بر عهده دارد.<br>
- برای نوشتن فایل متنی از Ajax + PHP و برای خواندن اطلاعات فایل متنی از Ajax استفاده کرده ایم.
</body>
</html>
پیش نمایش آنلاین

دانلود نمونه فایل های آموزش


در صورت تمایل به تست و بررسی نمونه کدهای ارائه شده در این آموزش در لوکال هاست یا سرور شخصی و جهت سهولت کار می توانیم بسته زیر را در قالب فایل فشرده دریافت کنیم، این بسته حاوی فایل های زیر است:
- ajax-request.js، فایل فراهم سازی امکان ارسال درخواست ای جکس.
- ajax-send-receive.js، فایل حاوی توابع ارسال، دریافت و نمایش اطلاعات با ای جکس.
- text-file.txt، فایل متنی جهت ذخیره و دریافت اطلاعات.
- php-file.php، فایل PHP حاوی دستورات برنامه نویسی جهت نوشتن مقادیر ارسالی کاربر در فایل متنی.
- ajax-send-receive.html، فایل HTML جهت اجرا در مرورگر و تست.
دانلود نمونه فایل های آموزش
نکته: آدرس فرخوانی فایل ajax-send-receive.html در لوکال هاست به صورت نمونه زیر خواهد بود:
http://localhost/ajax-php-text-file/ajax-send-receive.html
sectionدسته بندی: آموزش مقدماتی » Ajax
related مطالب بیشتر:
» نمایش افکت fade in با ای جکس (Ajax)
» آموزش ای جکس (Ajax)، تکنیک غیرهمزمانی در وب
» نمایش پیام در حال بارگذاری با ای جکس (Ajax)
» ارسال و دریافت اطلاعات با متد GET و POST در ای جکس (Ajax)
» فریم ورک های ای جکس (Ajax Frameworks)
commentنظرات (۱۷ یادداشت برای این مطلب ارسال شده است)
more یادداشت های جدید بر اساس تاریخ ارسال در انتهای یادداشت های موجود نمایش داده می شوند.
نویسنده: محمود
۱۱:۰۹ ۱۳۹۷/۰۶/۲۲
از راهنمایی شما کمال تشکر را دارم مهندس عزیز.
من با ajax زیاد اشنا نبودم ولی از وقتی که با سایت شما آشنا شدم، با جاوا اسکریپت و ajax یک کمی در حد ابتدایی آشنا شدم کمک های بالا را به دستورات زیر اضافه کردم ولی نمی توانم دلیل اینکه چرا فقط قسمت اولیه محتویات div را ذخیره می کند را پیدا کنم و باز برای چندمین بار درخواست کمک از شما سرور گرامی را دارم.
کد جاوا اسکریپت و ajax:
حذف شد
ببخشید که جدول طولانی است خواستم کاملا با مشکل من آشنا شوید. البته من در لوکال امتحان می کنم.
کد php:
<?php
$name=($_POST["name"]);
if(empty($name)){
echo "empty";
}
else {
$file=fopen("name.txt", "a", "<br>");
if(fwrite($file,$name)){
echo "saved.";
}
else {
echo "error.";
}
fclose($file);
}
?>
در قسمت
$name = ($_POST["name"]);
میتوانستم برای امنیت از
$name = strip_tags($_POST["name"]);
استفاده کنم ولی در آن صورت جدول ارسال نمی شد و فقط متن ارسال میشد.
چون خیلی ابتدایی با کدها آشنایی دارم فکر کنم کدهای من اشتباه هستند خواهش می کنم آن را تصحیح کنید.
پاسخ: 
برای ارسال مقادیر طولانی که ممکن است بین آنها کاراکترهای خاصی مانند علامت & باشد بهتر است ابتدا مقادیر را با تابع encodeURIComponent به استاندارد URL تبدیل کنیم، لذا خط زیر را به این شکل اصلاح کنید:
var params = "name=" + encodeURIComponent(test);
نکته: علامت & در URL برای جداسازی پارامترها از هم استفاده می شود و برای ارسال آن باید ابتدا به مقادیر معادل در استاندارد URL تبدیل شود.
نویسنده: ابوالفضل
۰۰:۰۴ ۱۳۹۹/۰۷/۲۰
سلام وقتتون بخیر
من میخوام یه افزونه برای مرورگر کروم طراحی کنم و میخوام یه متنی رو هر سری از سایت دریافت کنه و در یک فایل تکست دنبالش بگرده و در صورت برقرار بودن شرط یسری عملیات انجام بده
ایا کسی هست که مرا یاری کند
پاسخ: 
سوالتان کلی است، مشخص نیست دقیقا در کدام قسمت مشکل دارید؟ ابتدا باید بخش های اصلی اکستنشن مورد نظر را کدنویسی کنید (در این خصوص آموزش هایی در وب وجود دارد، به انگلیسی جستجو کنید) سپس در هر مرحله به صورت موردی مشکلتان را مطرح نمائید تا امکان راهنمایی وجود داشته باشد.
more لطفا پیش از ارسال یادداشت نکات زیر را مد نظر داشته باشید:
- موارد غیرمرتبط با مباحث آموزش ها را در فرم منوی "تماس با ما" مطرح و پاسخ را از طریق ایمیل دریافت کنید.
- به سوالات کلی، مبهم و مشکلاتی که تلاشی برای رفع آن نکرده باشید پاسخ مختصر داده خواهد شد.
- کدها و اسکریپت های طولانی را ترجیحا در یک صفحه وب آنلاین قرار دهید تا امکان تست و بررسی وجود داشته باشد.
- از درج عناوین تبلیغاتی در فیلدها خودداری کنید، در صورتی که یادداشت تبلیغاتی تشخیص داده شود حذف خواهد شد.
- تمام یادداشت ها بررسی و زمانی جهت پاسخگویی در نظر گرفته می شود، لطفا از طرح سوالات متعدد خودداری کنید.





8 × 1
 refresh

آخرین دیدگاه ها
more برای دسترسی سریع به یادداشت مربوطه می توانید از لینک مطلب در کادر زیر استفاده کنید.
form عبدالمالت ریالی
در:
سلام علیک میشه از چند فونت در یک صفحه html استفاده کرد.؟
۱۳۹۹/۰۸/۰۱

form مبینا
در:
سلام من برنامه ای میخواستم که داخل ارایه 5 رنگ قرار گرفته باشه. و با استفاده از حلقه for این یک متنو به اون پنج...
۱۳۹۹/۰۸/۰۱

form mohadeseh
در:
ممنون از راهنماییتون مشکلم حل شد
۱۳۹۹/۰۷/۲۸

form محمد
در:
سلام. یک کد نوشته ام بدین صورت: وقتی صفحه باز شده یک پنجره پیام خالی با یک ok باز شده هر چه ok را...
۱۳۹۹/۰۷/۲۸

form فایز پور جهانبخشی
در:
سلام اگر بخواهیم برنامه ای که داخل متلب نوشتیم تا یک ثانیه اجرا شود و بعد از ثانیه اول در حالت خطا که...
۱۳۹۹/۰۷/۲۸

form mohadeseh
در:
الان کد من که توی تگ <head> گزاشتم میخواستم بدونم ایا امکانش هست که توی تگ link که ایکون رو باهاش اوردم بتونم...
۱۳۹۹/۰۷/۲۷

form mohadeseh
در:
سلام ببخشید لطفا راهنمایی کنید که چجوری title برای favicon در html بزارم؟ جوری که وقتی موس روی icon قرار بگیره متن...
۱۳۹۹/۰۷/۲۷

form ryomaechizen
در:
سلام. اگه حافظه وب پر بشه و مجبورا عکسا کپی باشن چطور باید مشکل بارگزاریشون حل بشه؟
۱۳۹۹/۰۷/۲۶

form رونا
در:
پرونده فرستاده شده نمی‌تواند به wp-content/uploads/2020/10 برود. سلام این ارور برای چی رخ می ده
۱۳۹۹/۰۷/۲۵

form reza
در:
سلام خوبید انشاالله؟ خواستم بدونم این نوار ابزار رو چطور باید اونایی رو دوست دارم بزارم سمت راست وبلاگم. هر چی کد و ......
۱۳۹۹/۰۷/۲۴

form سینا
در:
چگونه میتوانیم با استفاده از HTML فرمول شیمیایی مواد را بنویسیم؟ با عدد اتمی، جرمی و بار اتمی
۱۳۹۹/۰۷/۲۱

form فاطمه
در:
سلام ممنونم... خیلی ساده و روون توضیح دادین.. اونقدر که تشویق شدم محتوای یه فایل تکس رو با ایجکس درون یه div بیارم ولی...
۱۳۹۹/۰۷/۲۱

form امیرحسین
در:
خب متوجه شدم. که باید خط اول عدد فانکشن رو تغییر بدم. بسته به تعداد آرایه یا هر عدد دیگه تغییر بدم جوابمو...
۱۳۹۹/۰۷/۲۱

form امیرحسین
در:
عالی بود. خیلی ممنونم. ولی هر چند کلمه داخل آرایه داشته باشم به همون میزان خروجی گرفته میشه. من اگه 10 کلمه در آرایه داشته...
۱۳۹۹/۰۷/۲۱

form سعادتی
در:
سلام کاش روش برطرف کردن این بهم ریختگی رو هم توضیح میدادید. ممنون
۱۳۹۹/۰۷/۲۰
form امیرحسین
در:
موفق شدم اینو پیدا کنم. ولی میخوام کلمات تکراری داخلشون نباشه. مثال AAA فقط یک بار در اون خط وجود داشته باشه.
۱۳۹۹/۰۷/۲۰
form امیرحسین
در:
سلام. نه محدودیت زمانی وجود نداره.
۱۳۹۹/۰۷/۲۰
form امیرحسین
در:
سلام خسته نباشید. میخوام از این تابع برای بدست آوردن لیست های متفاوت استفاده کنم. مثلا یه آرایه داشته باشم. امیدوارم کمکم...
۱۳۹۹/۰۷/۲۰
form ابوالفضل
در:
سلام وقتتون بخیر من میخوام یه افزونه برای مرورگر کروم طراحی کنم و میخوام یه متنی رو هر سری از سایت دریافت کنه و...
۱۳۹۹/۰۷/۲۰
form mahdi
در:
سلام چطور می تونم از ip خارجی استفاده کنم؟ برای دریافت لانچر میخام. مرسی
۱۳۹۹/۰۷/۱۹
form احسان عباسی
در:
با سلام و تشکر از سایت خوبتون من یه کد تعریف کردم که در بورس ایران سهم مدنظرمو بیاره .. میخواستم ببینم امکانش هست دستوری...
۱۳۹۹/۰۷/۱۷
form شبنم
در:
سلام وقتتون بخیر، ببخشید از کلمه event یا e دقیقا چه زمانی توی فانکشن استفاده میکنیم؟
۱۳۹۹/۰۷/۱۷
form احمد
در:
با عرض سلام مجدد ساختار کلی دستورم به این صورت هست. بعد از حلقه وایل اون دیو کلاس 1 و 2 و 3 میخواهم...
۱۳۹۹/۰۷/۱۶
form احمد
در:
با عرض سلام ببخشید چطوری میتونم یه قسمت از تگ ها رو داخل حلقه وایل رد کنم دوباره تگ های بعدی داخل حلقه قرار بگیرن...
۱۳۹۹/۰۷/۱۶
form ابوالفضل
در:
سلام واقعا من خیلی گشتم تا بتونم این آموزش رو پیدا کنم چون واقعا نمی دونستم چی بنویسم تا یک رتبه بندی برای نتایج جستجو...
۱۳۹۹/۰۷/۱۵
form mahtab
در:
سلام وقتتون بخیر ببخشید میشه بفرمایید چجوری کلیپ رو بزاریم وبلاگ ؟؟ بی زحمت کامل بفرمایین ممنون و متشکر
۱۳۹۹/۰۷/۱۴
form Saeid Azari
در:
سلام ببخشید اگه امکانش هست سوال منو جواب بدید یکم گیج شدم...من یک کد html دارم که باید یک سایت درست کنم و ان را...
۱۳۹۹/۰۷/۱۳
form ابوالفضل
در:
سلام یک سوال دارم چجوری یک متنی که درون تگ td هست و بعد تگ br هست (تگ br درون تگ td است) رو...
۱۳۹۹/۰۷/۱۳
form parnian
در:
با سلام با توجه به این که این مطلب در سال 91 نوشته شده ایا تغیری هم کرده؟ مثلا استفاده و مهم بودن تگ های...
۱۳۹۹/۰۷/۱۳
form fahimeh
در:
سلام من دارم پروژه واسه دانشگاه مینویسم طراحی سایتو کردم برای کار با پایگاه داده دستور insert و delete کار میکنه ولی...
۱۳۹۹/۰۷/۱۲
form امین
در:
با عرض سلام ببخشید یه فرم دارم اخر فرمم یه دکمه دارم میخواستم بدونم چطوری باید بعد از کلیک کردن دکمه به صفحه دیگه انتقال...
۱۳۹۹/۰۷/۱۱
form محسن
در:
سلام من از فرم ساز گرویتی استفاده میکنم آیا امکان استفاده همچین چیزی رو میتونم داخلش داشته باشم آیا کدی داره که در قسمت...
۱۳۹۹/۰۷/۱۱
form مالکی
در:
چرا وبلاگم بالا نمی یاد
۱۳۹۹/۰۷/۰۹
form احمد
در:
با عرض سلام مجدد و خسته نباشید ببخشید نمونه کد رو اگر امکانش هست نگاه کنید که چطوری این متغییری رو که بدست اوردم در...
۱۳۹۹/۰۷/۰۹
form الناز
در:
سلام وقتتون بخیر. چطور میشه برنامه ای رو در php نوشت که کدملی رو تبدیل به شماره دانشجویی کنه اگه برام بنویسید ممنون میشم.
۱۳۹۹/۰۷/۰۹
form محمد
در:
سلام من میخواستم بدونم چه طوری میشه بدون اینکه از کاربر بپرسی که میخواهد از حساب خروج پیدا کند خود سایت بفهمد که کاربر از...
۱۳۹۹/۰۷/۰۹
form احمد
در:
با سلام ببخشید چطوری باید در جکوری از یک متغییر در صفحات دیگه استفاده کنم مثال دو عدد را باهم جمع کردم و ریختم داخل...
۱۳۹۹/۰۷/۰۹
form مهسا
در:
سلام و خسته نباشید مشکلی برای وبلاگ من پیش اومده موقع ورود بهم پیام میده وبلاگ داره بروز رسانی میشه و بعدا وارد وبلاگ شوید...
۱۳۹۹/۰۷/۰۸
form Moshtagh
در:
سلام و خسته نباشید بنده چند روزه که وقتی اطلاعات ورود به وبلاگم رو وارد تیترها و کلیک میکنم با چنین پاسخی مواجه میشم...
۱۳۹۹/۰۷/۰۸
form mahtab
در:
سلام خسته نباشین ببخشید چرا بلاگفا باز نمیکنه ؟؟؟ میرم مدیریت وبلاگ نه تو بروز شده ها وبی هستم نه هم که...
۱۳۹۹/۰۷/۰۷
form جواد
در:
سلام و عرض ادب. سایت من هک شده و یک کد ریدایرکت تو دیتابیس هاستم بارگزاری شده که آخر همه پست ها تو...
۱۳۹۹/۰۷/۰۷
  در انتظار بررسی: ۰
 پاسخگویی به سوالات ممکن است تا 24 ساعت زمان ببرد.