• 0 رای - 0 میانگین
  • 1
  • 2
  • 3
  • 4
  • 5
بارگذاری صفحه با آژاکس
#1
با سلام

من میخواستم یک صفحه ای رو که توش اطلاعات مختلفی از جمله یک فایل pdf توش لود میشه و یک زمان سنج و... هست رو طوری لود کنم که ابتدا یک لوادینگ بیاد مثل جیمیل هست و تمام اطلاعات صفحه لود بشن بعد صفحه شروع به کار کنه و نمایش داده بشه از جمله اون زمان سنج

من این کار رو انجام دادم ولی اون زمان سنج که با جاوا اسکریپت نوشته شده و اطلاعات شروع زمانش از دیتابیس گرفته میشه محو میشه

این کد منه
:
کد پی‌اچ‌پی:
<?php
session_start
();
//include('test_main.php');

?>

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<html dir="rtl" xmlns="http://www.w3.org/1999/xhtml">
<head><title>Web Tools</title>
<script type="text/javascript">
var request;

function getHTTPObject() 
{
    var xhr = false;
    if (window.XMLHttpRequest) 
    {
        xhr = new XMLHttpRequest();
    } else if (window.ActiveXObject) {
        try 
        {
            xhr = new ActiveXObject("Msxml2.XMLHTTP");
        } 
        catch(e) 
        {
            try 
            {
                xhr = new ActiveXObject("Microsoft.XMLHTTP");
            } 
            catch(e) 
            {
                xhr = false;
            }
        }
    }
    return xhr;
}

function getContent()
{
    request = getHTTPObject();
    request.onreadystatechange = sendData;
    request.open("POST", "test.php", true);
    request.send(null);
}

function sendData()
{
    var dC = document.getElementById("dCo");
    if(request.readyState == 4)
    {        
        dC.innerHTML = request.responseText;
    }
    else if(request.readyState == 1)
    {
        dC.innerHTML = "<img src='loading.gif' /> Requesting content..."
    }
}
</script>

</head>
<body>


<div id="dCo">
<?php
//include('test_main.php');
$Tname $_POST['name'];
$run $_POST['run'];
$_SESSION['name'] = $Tname;
$_SESSION['run'] = $run;
?>
</div>
<script type="text/javascript">getContent();</script>
</body>
</html> 

حالا این ssession ها مال اطلاعات مورد نیاز برای راه اندازی صفحه مورد نظرذ من هست همه چیز تو اون صفحه خوب کار میکنه الا این کد زمان سنج که از کار افتاده

کد پی‌اچ‌پی:
<style type "text/css">
        
#informationbar
            
{
            
positionfixed;
            
left0;
            
width100%;
            
text-indent5px;
            
padding5px 0;
            
background-colorlightyellow;
            
border-bottom1px solid black;
            
fontbold 12px Verdana;
            }

        * 
html#informationbar
            
/*IE6 hack*/
            
positionabsolute;
            
widthexpressiondocument.compatMode=="CSS1Compat"document .documentElement .clientWidth+"px" body.clientWidth+"px"
                
);
            }
    </
style>

    <
script language "javascript"  type "text/javascript">
        <!-- 
Begin
        startday 
= new Date();

        
clockStart startday.getTime();

        function 
initStopwatch()
            {
            var 
myTime = new Date();
            return ((
myTime.getTime() - clockStart) / 1000);
            }

        function 
getSecs()
            {
            var 
tSecs Math.round(initStopwatch());
            var 
iSecs tSecs 60;
            var 
iMins Math.round((tSecs 30) / 60);
            var 
sSecs "" + ((iSecs 9) ? iSecs "0" iSecs);
            var 
sMins "" + ((iMins 9) ? iMins "0" iMins);
            
document.Time.timespent.value sMins ":" sSecs;
            
window.setTimeout('getSecs()'1000);
            }

        function 
Go()
            {
            
window.setTimeout('getSecs()'1)
            }
        
window.onload Go;
        
// End -->
    
</script>


    <
script type "text/javascript">


var 
currentTime = new Date()
var 
month currentTime.getMonth() + 1
var day currentTime.getDate()
var 
year currentTime.getFullYear()
var 
hours currentTime.getHours()
var 
seconds currentTime.getSeconds()
var 
minutes currentTime.getMinutes()
if (
minutes+<? echo (''.$minute.''); ?> >59){
minutes = minutes+<? echo (''.$minute.''); ?>-59
hours++
} else {
minutes = minutes+<? echo (''.$minute.''); ?>
}
if((hours+<? echo (''.$hour.''); ?> > 11) && (hours+<? echo (''.$hour.''); ?> < 24)){
var pm = "PM"
} else {
var pm = "AM"
}
if(hours+<? echo (''.$hour.''); ?> > 12){
hours = hours+<? echo (''.$hour.''); ?>-12
} else {
hours = hours+<? echo (''.$hour.''); ?>
}
    <!--Invocation code-->
TargetDate = ""+month+"/"+day+"/"+year+" "+hours+":"+minutes+":"+seconds+" "+pm+"";
BackColor = "red";
ForeColor = "white";
CountActive = true;
CountStepper = -1;
LeadingZero = true;
if (<? echo (''.$hour.''); ?>>0){
DisplayFormat = "%%H%% <? echo (''._TEST_HOURS.'&nbsp;'._TEST_TIME_AND.''); ?> %%M%% <? echo (''._TEST_MINUTES.'&nbsp;'._TEST_TIME_AND.''); ?> %%S%% <? echo (''._TEST_SECONDS.' '._TEST_TIME_REMAINED.''); ?>";
} else {
DisplayFormat = "%%M%% <? echo (''._TEST_MINUTES.'&nbsp;'._TEST_TIME_AND.''); ?> %%S%% <? echo (''._TEST_SECONDS.' '._TEST_TIME_REMAINED.''); ?>";
}
FinishMessage = "<? echo (''._TEST_ENDED.''); ?>";
    </script>
    <? echo ('<DIV style="RIGHT: 0px; BACKGROUND: #FFFF95; WIDTH: 100%;  POSITION: fixed; TOP: 0px;" dir="rtl"><font face="Tahoma" style="font-size: 9pt" color="#C0C0C0"><b>');
    
    echo ('<script language="javascript">
    function calcage(secs, num1, num2) {
  s = ((Math.floor(secs/num1))%num2).toString();
  if (LeadingZero && s.length < 2)
    s = "0" + s;
  return "<b>" + s + "</b>";
}

function CountBack(secs) {
  if (secs < 0) {
    '._ONBEFORE3.'
    location.href="result.php";
    document.getElementById("cntdwn").innerHTML = FinishMessage;
    
    return;
  }
  DisplayStr = DisplayFormat.replace(/%%D%%/g, calcage(secs,86400,100000));
  DisplayStr = DisplayStr.replace(/%%H%%/g, calcage(secs,3600,24));
  DisplayStr = DisplayStr.replace(/%%M%%/g, calcage(secs,60,60));
  DisplayStr = DisplayStr.replace(/%%S%%/g, calcage(secs,1,60));

  document.getElementById("cntdwn").innerHTML = DisplayStr;
  if (CountActive)
    setTimeout("CountBack(" + (secs+CountStepper) + ")", SetTimeOutPeriod);
}

function putspan(backcolor, forecolor) {
 document.write("<span id=\'cntdwn\' style=\'background-color:" + backcolor + 
                "; color:" + forecolor + "\'></span>");
}

if (typeof(BackColor)=="undefined")
  BackColor = "white";
if (typeof(ForeColor)=="undefined")
  ForeColor= "black";
if (typeof(TargetDate)=="undefined")
  TargetDate = "12/31/2020 5:00 AM";
if (typeof(DisplayFormat)=="undefined")
  DisplayFormat = "%%D%% Days, %%H%% Hours, %%M%% Minutes, %%S%% Seconds.";
if (typeof(CountActive)=="undefined")
  CountActive = true;
if (typeof(FinishMessage)=="undefined")
  FinishMessage = "";
if (typeof(CountStepper)!="number")
  CountStepper = -1;
if (typeof(LeadingZero)=="undefined")
  LeadingZero = true;


CountStepper = Math.ceil(CountStepper);
if (CountStepper == 0)
  CountActive = false;
var SetTimeOutPeriod = (Math.abs(CountStepper)-1)*1000 + 990;
putspan(BackColor, ForeColor);
var dthen = new Date(TargetDate);
var dnow = new Date();
if(CountStepper>0)
  ddiff = new Date(dnow-dthen);
else
  ddiff = new Date(dthen-dnow);
gsecs = Math.floor(ddiff.valueOf()/1000);
CountBack(gsecs);
</script>');
    
    echo ('&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;|&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;'._TODAY.' '.$day_name .' '.$day_number.' / '.$month_number.' / '.$year_number.' </b></font></DIV>'); ?>

میشه کمکم کنید که این مشکل برطرف بشه و یا یک کد خوب در اختیارم بگذارید
فقط سریع نیاز دارم
با تشکر
با تشکر ممل آمریکایی
  پاسخ
تشکر شده توسط :


پرش به انجمن:


کاربران در حال بازدید این موضوع: 1 مهمان