PDA

View Full Version : باز شدن پاپ اپ بیش از یک بار



DelDard
سه شنبه 18 آذر 1393, 21:25 عصر
سلام دوستان
من این کد رو برای پاپ اپ تو سایتم گذاشتم تا "فقط برای اولین کلیک" پاپ اپ باز شه:


<?php
$cookie_name = 'popup1';
$cookie_value = 'visited';
if(!isset($_COOKIE[$cookie_name]) && $title=='rules') {
setcookie($cookie_name, $cookie_value, time() + (86400 * 30), "/");

require_once ROOT.'/includes/function/encryption.php';
require_once ROOT.'/includes/class/SQLManager.class.php';

$obj = new SQLManager();
$sql = "SELECT * FROM `ads` WHERE `adname` = 'popup'";
$result = $obj->query_mysql($sql);
$result = $obj->array_mysql($result);
$address = dec($result['address']);
?>
<script type="text/javascript">
function WinOpen(){
var url = "<?php echo $address;?>";
window.open(url, 'عنوان سایت', "height=900, width=1300, resizable=1, left=0, top=0, status=1, scrollbars=yes");
}
</script>
<?php }?>
</head>
<body <?php if($title=='rules'){echo 'onclick="WinOpen()"' ;} ?> >

خب واضحه که من برای این که فقط بار اول که طرف کلیک میکنه پاپ اپ باز شه اومدم یه کوکی گذاشتم تا چک کنه ببینه قبلا تو این بروزر پاپ اپ من باز شده یا نه. اما مشکل اینجاست که برای اینکه این کار انجام بشه من مجبورم صفحه رو دوباره ریفرش کنم چون بالاخره اون کد جاوا اسکریپت تو سایت درج شده و با وجود کوکی باز هم کد پاپاپ اجرا میشه!
الان من متوجه هستم اشکال کد از نظر منطقی کجاست ولی برای حل مشکل چیزی به ذهنم نمیرسه چون با جاوا تا حالا کار نکردم زیاد!
البته یه سوال دیگه هم در همین رابطه داشتم که ممنون میشم راهنمایی بفرمایید: چی کار کنم که پنجره تبلیق پشت پنجره اصلی باز شه؟
پیشاپیش تشکر از وقتی که گذاشتید برای این سوال

arta.nasiri
سه شنبه 18 آذر 1393, 21:54 عصر
سلام

این بخش از کار رو باید توسط javascript مدیریت کنید پس سوالتون رو تو انجمن http://barnamenevis.org/forumdisplay.php?160-JavaScript-%D9%88-Framework-%D9%87%D8%A7%DB%8C-%D9%85%D8%A8%D8%AA%D9%86%DB%8C-%D8%A8%D8%B1-%D8%A2%D9%86 مطرح کنید.

session رو هم توسط js میتونید بسازید و مدیریتش کنید و سمت server نیازی به اینکارا نیست.

sairon123
چهارشنبه 19 آذر 1393, 12:40 عصر
این کد هر 12 ساعت یه بار باز میشه:


<script type="text/javascript">
var needpop = 1;

var vc_cn = "jot9843504";
var vc_url = "ادرس سایت شما";
if (readCookie(vc_cn)) {
needpop = 0;
}else{
needpop = 1;
}
var PopWidth = 1024;
var PopHeight = 768;
var PopTargetingMethod = 100;
var PopUseDivLayer = 1;
var RTSDomain = vc_url;
var debugDomain = vc_url;
var Page_Popped = false;
var Page2_Popped = false;
var Page_Loaded = false;
var Page_Enter;
var MySiteDomain = window.location.href.split('/');
if (needpop == 1) {
InitPop()
}
function InitPop() {
Page_Enter = new Date();
if (window.captureEvents) {
window.captureEvents(Event.CLICK);
window.onclick = LoadStandardPop
} else document.onclick = LoadStandardPop
}
function SiteEnter() {
Page_Loaded = true
}
function createCookie(name, value, days) {
if (days) {
var date = new Date();
date.setTime(date.getTime()+(12*60*60*1000));
var expires = "; expires=" + date.toGMTString()
} else var expires = "";
document.cookie = name + "=" + value + expires + "; path=/";
}
function readCookie(name) {
var ca = document.cookie.split(';');
var nameEQ = name + "=";
for (var i = 0; i < ca.length; i++) {
var c = ca[i];
while (c.charAt(0) == ' ') c = c.substring(1, c.length);
if (c.indexOf(nameEQ) == 0) return c.substring(nameEQ.length, c.length)
}
return null
}
function RetrieveCount() {
var cookieName = vc_cn;
var popSuccesses = readCookie(cookieName);
if (popSuccesses != null) popSuccesses = parseInt(popSuccesses);
else popSuccesses = 0;
return popSuccesses
}
function IncrementCount() {
var cookieName = vc_cn;
var popSuccesses = readCookie(cookieName);
if (popSuccesses != null) createCookie(cookieName, parseInt(popSuccesses) + 1, 1);
else createCookie(cookieName, 1, 1)
}
function LoadStandardPop() {
if (Page_Popped == true) return;
var pLoaded = false;
if (window.SymRealWinOpen) {
open = SymRealWinOpen
}
if (window.NS_ActualOpen) {
open = NS_ActualOpen
}
var pxLeft = 0;
var pxTop = 0;
if (screen.width > 0 && screen.height > 0) {
pxLeft = (screen.width / 2) - (PopWidth / 2);
pxTop = (screen.height / 2) - (PopHeight / 2) - 50;
if (pxLeft < 0) pxLeft = 0;
if (pxTop < 0) pxTop = 0
}
pLoaded = open(vc_url, '', 'toolbar=1,scrollbars=1,location=1,statusbar=1,men ubar=1,resizable=1,top=' + pxTop + ',left=' + pxLeft + ',width=' + PopWidth + ',height=' + PopHeight);
if (pLoaded) {
var w2 = window.open('about:blank');
if(w2) {w2.focus();w2.close();}

Page_Popped = true;
IncrementCount()
} else {
Page_Popped = true;
if (Page_Loaded) initAdLayer();
else XBrowserAddHandlerPops(window, "load", "initAdLayer")
}
window.focus();
window.close();
}

</script>


برای تغییر زمان باز شدن پاپ آپ هم تو این خط رو پیدا کنید و تغییر دهید:
12*60*60*1000
برای باز شدن هر 24 ساعت : 24*60*60*1000