PDA

View Full Version : گفتگو: دادن محلت به یک صفحه php



djscsi
یک شنبه 27 مرداد 1387, 01:47 صبح
نمی دونم باید سوالم رو اینجا بپرسم یا نه
فرض کنید من در صفحه a.php هستم و یه مقداری رو به صفحه b.php می فرستم حالا میخام اون مقدار در صفحه b.php پردازش بشه و خروجی دیده بشه و بعد مثلا 10 ثانیه به نمایش در اومدن خود به خود بره تو صفحه a.php و منتظر مقدار بعدی باشه:متفکر:
ممنون

sama01
یک شنبه 27 مرداد 1387, 02:46 صبح
شما باید از کدهای جاوااسکریپ استفاده کنید. مثل این:


<script language="javascript" type="text/javascript">
window.setTimeout("location='URL'", time);
</script>

توجه داشته باشید که مقدار time برحسب میلی ثانیه است. یعنی مثلا برای پنج ثانیه باید مقدار 5000 را وارد کنید.
اگر سوالی درباره‌ی همین کد داشتید، لطفا در بخش مربوط به جاوااسکریپت سوال بفرمایید.

amir-haghighi
یک شنبه 27 مرداد 1387, 19:33 عصر
به ياد او::

فكر كنم اينجا انجمن php باشه و نه انجمن java script.

خود php توانايي انجام اين كار رو داره به كد زير كه همين الان نوشتم دقت كنيد::



<?php
/* your first php code here
#############
#
#
#
#
#syntax by amir haghighi
#
#
#
#
#
#
#
#
#
#############
*/
sleep(header('Location: http://./a.php'),10000);
?>

sama01
یک شنبه 27 مرداد 1387, 20:02 عصر
این کد به چه دردی می‌خودره؟ (البته در این مورد)
هدف سوال کننده اینه که صفحه اول نمایش داده بشه و بعد یک وقفه چند ثانیه‌ای به صفحه‌ی دوم بره.
کد شما سمت سرور اجرا می‌شه و باعث ایجاد وقفه در اجرای کد می‌شه. ولی تمام کدهای صفحه یک‌جا برای کاربر فرستاده می‌شه و به محض دریافت Header شما، به صفحه‌ی بعدی مراجعه می‌کنه. یعنی اصلا صفحه‌ی اول دیده نمی‌شه

yaqubian
دوشنبه 28 مرداد 1387, 08:20 صبح
دوست عزیز

echo ("<META HTTP-EQUIV=Refresh CONTENT=\"10; URL=a.php\">");

موفق باشید

aghasina
دوشنبه 28 مرداد 1387, 12:03 عصر
amir-haghighi جان دقیقا همین چیزی که شما دادی می خاستم بگم با این وجود دستت درد نکنه
(http://barnamenevis.org/forum/member.php?u=41902)

djscsi
چهارشنبه 30 مرداد 1387, 00:05 صبح
mair-haghighi جان ممکن یه کم بیشتر در مورد کد توضیح بدی اینو باید تو کدوم صفحه بنویسم a.php یا b.php ؟
ممنون

sama01
چهارشنبه 30 مرداد 1387, 16:53 عصر
آقا؛ sleep‌اصلا به درد کار شما نمی‌خوره.
با استفاده از این دستور عملا شما اصلا صفحه‌ی اول را نمی‌بینید. فقط n ثانیه تاخیر در لود صفحه‌ی اول وجود داره که دقیقا بعد از همین زمان و بدون نمایش صفحه اول، شما به صفحه دوم می‌روید.

اگر شما می‌خواهید صفحه‌ی اول را هم ببینید و بعد به صفحه‌ی دوم بروید، این کد مناسب نیست. تنها راه استفاده از JavaScrip هست.

tanha2007
چهارشنبه 30 مرداد 1387, 19:23 عصر
باید آن خط کد را تو صفحه b.php بنویسی ، چون تو بصورت دستی میری تو صفحه b.php و میخوای بصورت خودکار بعد از یک وقفه زمانی بری دوباره تو صفحه a.php




mair-haghighi جان ممکن یه کم بیشتر در مورد کد توضیح بدی اینو باید تو کدوم صفحه بنویسم a.php یا b.php ؟
ممنون

djscsi
پنج شنبه 31 مرداد 1387, 06:23 صبح
ممنون sama01 البته کد yaqubian جواب داد ولی من می خاستم کد های دیگر رو هم امتحان کنم

Arman_gh
پنج شنبه 31 مرداد 1387, 10:40 صبح
<?php

function redirect_do($url, $wait = 5)
{
header("Refresh:$wait; URL=$url");
}

?>
این را در صفحه‌ی b.php بگذار.

amir-haghighi
جمعه 29 شهریور 1387, 20:06 عصر
به ياد او::

همه راه هايي رو كه دوستان گفتند رو ميتونيد اجرا كنيد.

اما در مورد كدي كه من گفته بودم بايد بگم كه شما بايد ابتدا در صفحه b.php كد هاي خودتون رو كه ميخواهيد قرار بديد سپس در انتهاي صفحه تابع sleep رو صدا ميزنيد.

نيازي هم نيست كه خيلي شلوغش كنيد و از توابع و يا كلاس ها استفاده كنيد.در نهايت شما بايد از تابع sleep براي ايجاد مكس و از تابع redirict براي هدايت مجدد كاربر استفاده كنيد.