رندوم خوردن عکس با زمان از پیش تعیین شده

harbiline

Edris
عزیزان

میخوایم مثلا 5 تا عکس رو به صورت رندوم با زمان های تقریبی 5 دقیقه ای رندوم کنیم با یک اندازه سایز عکس

= یعنی یک مکان در قالب باشه که به صورت رندوم هر 5 دقیقه با رفرش صفحه یک عکس به همراه لینک به کاربر نشون بده =

راه حل ها و اعلانات خودتون رو بگید

با تشکر

 

MahdiY

راهبر انجمن
سلام

کد را در قالب jquery نیاز دارید یا php؟

یعنی اگه کاربر بعد 5 دقیقه رفرش نکرد تصویر بروز بشه یا خیر (فقط با رفرش کردن صفحه؟)

 

harbiline

Edris
سلام

کد را در قالب jquery نیاز دارید یا php؟

یعنی اگه کاربر بعد 5 دقیقه رفرش نکرد تصویر بروز بشه یا خیر (فقط با رفرش کردن صفحه؟)
درود

قاعدتا به صورت php باشه بهتر هستش اگر فراخوانیشم با jq باشه مشکلی نداره تو قالب میشه جاگذاری کردش

بله درسته اگ کاربر رفرش نکردش تصویر بروز نشود ( فقط با رفرش کردن صفحه تصویر برزو بشه )

مچکر

 

MahdiY

راهبر انجمن
درود

قاعدتا به صورت php باشه بهتر هستش اگر فراخوانیشم با jq باشه مشکلی نداره تو قالب میشه جاگذاری کردش

بله درسته اگ کاربر رفرش نکردش تصویر بروز نشود ( فقط با رفرش کردن صفحه تصویر برزو بشه )

مچکر
سلام به کد زیر توجه کن:

$list = array(
array(
'url' => '#1',
'img' => ''
),
array(
'url' => '#2',
'img' => ''
),
array(
'url' => '#3',
'img' => ''
),
array(
'url' => '#4',
'img' => ''
),
array(
'url' => '#5',
'img' => ''
),
);

echo $list[ceil( time() / 150 ) % 5]['url'];


سلام

ببین اطلاعات بنر ها رو ریختم داخل یدونه آرایه

و یه کد زدم که هر 5 دقیقه بیاد یکیشون را نشون بده

برای اینکه هر 5 دقیقه بیاد و یه رندم نشون بده باید از دیتابیس (یا مثلا ذخیر تو یه فایل) استفاده کرد

که زمان آخرین تغییر را داخلش ثبت کنه هنگام نمایش زمان فعلی و اون زمان مقایسه بشه. هر چی فکر کردم تا حالا راه حلی بدون دیتابیس به ذهنم برای رندم نرسیده

 

rocki3oy

کاربر عضو
سلام به کد زیر توجه کن:

$list = array(
array(
'url' => '#1',
'img' => ''
),
array(
'url' => '#2',
'img' => ''
),
array(
'url' => '#3',
'img' => ''
),
array(
'url' => '#4',
'img' => ''
),
array(
'url' => '#5',
'img' => ''
),
);

echo $list[ceil( time() / 150 ) % 5]['url'];


سلام

ببین اطلاعات بنر ها رو ریختم داخل یدونه آرایه

و یه کد زدم که هر 5 دقیقه بیاد یکیشون را نشون بده

برای اینکه هر 5 دقیقه بیاد و یه رندم نشون بده باید از دیتابیس (یا مثلا ذخیر تو یه فایل) استفاده کرد

که زمان آخرین تغییر را داخلش ثبت کنه هنگام نمایش زمان فعلی و اون زمان مقایسه بشه. هر چی فکر کردم تا حالا راه حلی بدون دیتابیس به ذهنم برای رندم نرسیده
دوست عزیز نمیشه از سیشن برای ثبت زمان استفاده کرد؟

 

harbiline

Edris
سلام به کد زیر توجه کن:

$list = array(
array(
'url' => '#1',
'img' => ''
),
array(
'url' => '#2',
'img' => ''
),
array(
'url' => '#3',
'img' => ''
),
array(
'url' => '#4',
'img' => ''
),
array(
'url' => '#5',
'img' => ''
),
);

echo $list[ceil( time() / 150 ) % 5]['url'];


سلام

ببین اطلاعات بنر ها رو ریختم داخل یدونه آرایه

و یه کد زدم که هر 5 دقیقه بیاد یکیشون را نشون بده

برای اینکه هر 5 دقیقه بیاد و یه رندم نشون بده باید از دیتابیس (یا مثلا ذخیر تو یه فایل) استفاده کرد

که زمان آخرین تغییر را داخلش ثبت کنه هنگام نمایش زمان فعلی و اون زمان مقایسه بشه. هر چی فکر کردم تا حالا راه حلی بدون دیتابیس به ذهنم برای رندم نرسیده
خب ممنون

اما ینی چی دیتابیس؟

یعنی باید براش دیتابیس بسازیم و یوزر پسورد و نام لوکال هاست و .. رو بهش بدیم؟

حالا به فرض ک مثلا این باشه اما کجا باید پیوست کرد

بدون دیتابیس نمیشه؟؟

شده مثلا با jq ؟؟( جی کوئری)

چون دیتابیس رو میشه به دست اورد

 

MahdiY

راهبر انجمن
دوست عزیز نمیشه از سیشن برای ثبت زمان استفاده کرد؟
سلام

کد با استفاده از راه پیشنهادی @rocki3oy عزیز:

کد:
<?php

session_start();

$list = array(
	array(
		'url' => '#1',
		'img' => 'IMG1'
	),
	array(
		'url' => '#2',
		'img' => 'IMG2'
	),
	array(
		'url' => '#3',
		'img' => 'IMG3'
	),
	array(
		'url' => '#4',
		'img' => 'IMG4'
	),
	array(
		'url' => '#5',
		'img' => 'IMG5'
	),
);

$num = ceil( time() / 150 ) % 5;
if(!isset($_SESSION['list_time']) || $_SESSION['list_time']['num'] !== $num )
	$_SESSION['list_time'] = array(
		'num' => $num,
		'list' => $list[mt_rand(0, count($list) - 1)]
	);

print_r($_SESSION['list_time']);
 
بالا