انجمن‌های فارسی اوبونتو

کمک و پشتیبانی => برنامه‌سازی => نویسنده: rahmani در 12 خرداد 1393، 11:44 ق‌ظ

عنوان: refresh صفحه پس از بازگشت با استفاده از فشردن back- برنامه نويسي php
ارسال شده توسط: rahmani در 12 خرداد 1393، 11:44 ق‌ظ
سلام

در يك سايت براي فروش نرم افزار form طراحي شده كه كاربر پس از پر كردن form و وارد كردن serial number يك شناسه كاربري براي فعال كردن نرم افزار دريافت مي كند هنگامي كه كاربر اولين بار form را پر مي كند بدون هيچ مشكلي فعال سازي انجام مي شود. اما هنگامي كه با استفاده از فشردن  back به صفحه قبل باز مي گردد تا serial number ديگري وارد كند و شناسه و رمز ورود ديگري دريافت كند گويا فعالسازي دچار مشكل مي شود

چه بايد كرد
سپاسگزارم
عنوان: پاسخ : refresh صفحه پس از بازگشت با استفاده از فشردن back- برنامه نويسي php
ارسال شده توسط: Ma3X در 12 خرداد 1393، 12:23 ب‌ظ
متد فرم POST هست یا GET؟
من حدود یک ماهه که دارم به‌طور جدی PHP کار می‌کنم؛ به نظر من مشکل از کد PHP نیست، در بعضی مرورگرها با فشردن کلید back محتوای کش شده نشون داده می‌شه و request جدیدی به سرور فرستاده نمیشه. اگر بتونی کاربر رو مجبور به ریفرش کنی، احتمالا مشکل حل میشه.
چیزایی که به ذهن من رسید:
- با یک کد جاوا اسکریپت صفحه رو ریلود کنید.
- در صورتی که معمول کاربران بیشتر از یک شماره سریال وارد می‌کنند، برنامه PHP رو طوری بنویسید که بعد از پردازش، دوباره فرم نمایش داده بشه.
- متد رو روی POST ست کنید تا وقتی کاربر back کرد، فرم expire شده باشه و مجبور بشه ریلود کنه.
عنوان: پاسخ : refresh صفحه پس از بازگشت با استفاده از فشردن back- برنامه نويسي php
ارسال شده توسط: M!lad در 12 خرداد 1393، 01:27 ب‌ظ
میتونید از این روش استفاده کنید:

<html>
<head>
<script src="https://code.jquery.com/jquery-2.1.1.min.js"></script>
<script type="text/javascript">
window.onload = function() {
if( $('#r').val() == '')
{
$('#r').val('1');
}
else
{
$('#r').val('');
location.reload(true);
}
};
window.onunload = function(){};
   </script>
</head>
<body>
<h1>A</h1>
<form method="get" action="b.html">
<input type="text" value="" />
<input type="submit" value="send">
</form>
<input id="r" type="hidden" name="r" value="" />
</body>
</html>
عنوان: پاسخ : refresh صفحه پس از بازگشت با استفاده از فشردن back- برنامه نويسي php
ارسال شده توسط: rahmani در 12 خرداد 1393، 02:50 ب‌ظ

- متد رو روی POST ست کنید تا وقتی کاربر back کرد، فرم expire شده باشه و مجبور بشه ریلود کنه.

سلام من از همان ابتدا از post استفاده كردم
عنوان: پاسخ : refresh صفحه پس از بازگشت با استفاده از فشردن back- برنامه نويسي php
ارسال شده توسط: Ma3X در 12 خرداد 1393، 06:16 ب‌ظ
مورد اول و دوم رو هم نگاه کردین؟!
عنوان: پاسخ : refresh صفحه پس از بازگشت با استفاده از فشردن back- برنامه نويسي php
ارسال شده توسط: rahmani در 12 خرداد 1393، 06:37 ب‌ظ
مورد اول و دوم رو هم نگاه کردین؟!
سلام اره ممنون تلاش كردم با راهنمايي شما و جناب M!lad يك كارهايي با javascript كردم اما نتيجه نگرفتم
سپاس
عنوان: پاسخ : refresh صفحه پس از بازگشت با استفاده از فشردن back- برنامه نويسي php
ارسال شده توسط: Ma3X در 12 خرداد 1393، 07:51 ب‌ظ
اگه صفحه رو ریفرش کنی، فرم به درستی کار می‌کنه؟
عنوان: پاسخ : refresh صفحه پس از بازگشت با استفاده از فشردن back- برنامه نويسي php
ارسال شده توسط: rahmani در 13 خرداد 1393، 08:48 ق‌ظ
میتونید از این روش استفاده کنید:

<html>
<head>
<script src="https://code.jquery.com/jquery-2.1.1.min.js"></script>
<script type="text/javascript">
window.onload = function() {
if( $('#r').val() == '')
{
$('#r').val('1');
}
else
{
$('#r').val('');
location.reload(true);
}
};
window.onunload = function(){};
   </script>
</head>
<body>
<h1>A</h1>
<form method="get" action="b.html">
<input type="text" value="" />
<input type="submit" value="send">
</form>
<input id="r" type="hidden" name="r" value="" />
</body>
</html>
سلام
 من مي خواهم فقط در صورتي كه كاربر روي back كليك كند صفحه refresh شود اما اين طوري هميشه refresh مي شود  دقيقا code شما را به كاربردم. بلافاصله پس از فعالسازي يك پيام نمايش داده مي شود و بعد هم كه ok را زدم صفحه refresh مي شود و اجازه نمي دهد كاربر متن پيام را ببيند
سپاسگزارم