Kezdőoldal » Számítástechnika » Programozás » Szükségem lenne egy visszaszám...

Szükségem lenne egy visszaszámlálóra! Valaki segítene ebben nekem?

Figyelt kérdés

Sziasztok! Szükségem lenne egy visszaszámlálóra, egy weboldalba. Egy olyanra, ami CSAK a napokat számolja vissza.

Úgy képzeltem, hogy így nézzen ki:

A következő fejezet:

X

nap múlva.


És amikor az adott naphoz ér, akkor átváltana erre:

A következő fejezet:

ma

jelenik meg.


Tudom hogy bunkósság mástól kérni ilyeneket, meg stb, de sajnos én nem értek ehhez...:( A weboldalam is egy ingyenes szolgáltatónál van, ott pedig nem nehéz weboldalt szerkeszteni! :D


Nagyon szépen köszönöm annak aki segít!!:)

Üdv.

16/L


2011. júl. 23. 17:53
 1/8 Mugen ***** válasza:

2-3 hetente van ilyen kérdés. Ha visszaolvasol akkor rengeteget találsz:

http://www.gyakorikerdesek.hu/kereses.php?kategoria=18&keres..

2011. júl. 23. 18:24
Hasznos számodra ez a válasz?
 2/8 A kérdező kommentje:
Jajam, de ez egyik sem olyan, amit én szeretnék..:S Nekem olyan kéne, ami csak a napokat számolja vissza...
2011. júl. 24. 13:37
 3/8 Mugen ***** válasza:
Ha keresel egy olyat ezek között, ami mindet kiírja, átírom neked olyanra hogy csak a napot írja ki.
2011. júl. 24. 13:42
Hasznos számodra ez a válasz?
 4/8 A kérdező kommentje:

Találtam egy ilyet, nem tudom, hogy ez jó-e...:S


<?php

function CountDown($year, $month, $day, $hour = 00, $minute = 00, $second = 00, $what = "A visszaszámlálás lejártáig")

{

// A jövõbeli dátum Unix-ban

$future = strtotime("$month/$day/$year $hour:$minute:$second");

// jelenlegi dátum Unix-ban

$now = time();

// Különbségük

$difference = $future - $now;

// Na, valóban jövõbeli?

if($difference > 0)

{

// Ha igen, akkor kiszámoljuk, hány év, nap, óra, perc és mp van hátra.

$year_double = $difference/(365*24*60*60);

$year = floor($year_double);

$difference = $difference - $year * 365*24*60*60;

$day_double = $difference/(24*60*60);

$day = floor($day_double);

$difference = $difference - $day * 24*60*60;

$hour_double = $difference/(60*60);

$hour = floor($hour_double);

$difference = $difference - $hour * 60*60;

$minute_double = $difference/60;

$minute = floor($minute_double);

$second = $difference - $minute * 60;


// Az évet csak akkor írjuk ki, ha nem 0.

$printer = $what . " még ";

if($year > 0)

{

$printer .= $year . " év, ";

}

$printer .= $day . " nap, " . $hour . " óra, " . $minute . " perc és " . $second . " másodperc van hátra!";

print($printer);

}

else

{

// Ha nem, akkor nem kell számolni.

print("A jelölt idõpont már elmúlt!");

}

}

?>


Nos az lenne igazából a lényeg, hogy amikor számol, akkor az látszódjon, hogy:

A köv. fejezet:

X

nap múlva.


Ha az adott naphoz ér, akkor pedig ennek kéne lenni:

A köv. fejezet:

ma

jelenik meg.



Ha ezt megcsinálod nekem, és mükszeni is fog, imádni foglak:$ :DD

2011. júl. 24. 14:18
 5/8 A kérdező kommentje:

De találtam egy ilyet is, ez talán jobb lesz :)

/*

Author: Robert Hashemian

[link]


You can use this code in any manner so long as the author's

name, Web address and this disclaimer is kept intact.

******

Usage Sample:


<script language="JavaScript">

TargetDate = "2009/12/11 12:00";

BackColor = "palegreen";

ForeColor = "navy";

CountActive = true;

CountStepper = -1;

LeadingZero = true;

DisplayFormat = "%%D%% Days, %%H%% Hours, %%M%% Minutes, %%S%% Seconds.";

FinishMessage = "Boldog Karácsonyt!";

</script>


*/


function calcage(secs, num1, num2) {

s = ((Math.floor(secs/num1))%num2).toString();

if (LeadingZero && s.length < 2)

s = "0" + s;

return "" + s + "";

}


function CountBack(secs) {

if (secs < 0) {

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 0: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);


:) Köszönöm!!!! :)

2011. júl. 24. 16:38
 6/8 Mugen ***** válasza:

nos mutatom:


Sajnos a második nem teljes. Legalábbis biztosan nincs lezárva, így úgy gondoltam hogy inkább írok egy másikat:



<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">


<html>


<head>

<style type="text/css">

span.napok {font-weight: bold; font-family: Helvetica,Arial,sans-serif; font-size: 16pt; text-align: right; padding-right: 10px; padding-top: 25px; vertical-align: top;}

span.string {color: grey;font-weight: bold; font-family: Helvetica,Arial,sans-serif; font-size: 16pt; text-align: right; padding-right: 10px; padding-top: 25px; vertical-align: middle;}

</style>


<script type="text/javascript">


/***********************************************


* Dynamic Countdown script- Š Dynamic Drive ( [link]


* This notice MUST stay intact for legal use


* Visit [link] for this script and 100s more.


***********************************************/


function cdtime(container, targetdate){


if (!document.getElementById || !document.getElementById(container)) return


this.container=document.getElementById(container)


this.currentTime=new Date()

//itt kell megadnod a következő rész megjelenésének dátumát

//csak itt kell módosítanod!

//egy kis leiras hogy tudd hogy kell a datumot megadni

//(2011,00,26) megfelel 2011 január 26ának.

//

//

//

this.targetdate=new Date(2011,6,27)


this.timesup=false


this.updateTime()


}


cdtime.prototype.updateTime=function(){


var thisobj=this


this.currentTime.setSeconds(this.currentTime.getSeconds()+1)


setTimeout(function(){thisobj.updateTime()}, 1000) //update time every second


}


cdtime.prototype.displaycountdown=function(baseunit, functionref){


this.baseunit=baseunit


this.formatresults=functionref


this.showresults()


}


cdtime.prototype.showresults=function(){


var thisobj=this


var timediff=(this.targetdate-this.currentTime)/1000 //difference btw target date and current date, in seconds


if (timediff<0){ //if time is up


this.timesup=true


this.container.innerHTML=this.formatresults()


return


}


var oneMinute=60 //minute unit in seconds


var oneHour=60*60 //hour unit in seconds


var oneDay=60*60*24 //day unit in seconds


var dayfield=Math.floor(timediff/oneDay)


var hourfield=Math.floor((timediff-dayfield*oneDay)/oneHour)


var minutefield=Math.floor((timediff-dayfield*oneDay-hourfield*oneHour)/oneMinute)


var secondfield=Math.floor((timediff-dayfield*oneDay-hourfield*oneHour-minutefield*oneMinute))


if (this.baseunit=="hours"){ //if base unit is hours, set "hourfield" to be topmost level


hourfield=dayfield*24+hourfield


dayfield="n/a"


}


else if (this.baseunit=="minutes"){ //if base unit is minutes, set "minutefield" to be topmost level


minutefield=dayfield*24*60+hourfield*60+minutefield


dayfield=hourfield="n/a"


}


else if (this.baseunit=="seconds"){ //if base unit is seconds, set "secondfield" to be topmost level


var secondfield=timediff


dayfield=hourfield=minutefield="n/a"


}


this.container.innerHTML=this.formatresults(dayfield, hourfield, minutefield, secondfield)


setTimeout(function(){thisobj.showresults()}, 1000) //update results every second


}


function formatresults(){


if (this.timesup==false &&(arguments[0]+""!="0")){//if target date/time not yet met

// ezt kell módosítanod a számláló kíírásához

var displaystring="<span class='napok'>"+arguments[0]+ "<span class='string'> nap<span class='string'> múlva jelenik meg</span> </span>"


}


else{ //else if target date/time met


var displaystring="ma jelenik meg"


}


return displaystring


}


</script>


<title></title>


</head>


<body>


<span style="color: rgb(255, 0, 0);"></span>

<p> A kovetkezo fejezet:</p>

<table


style="border-width: 0px; height: 30px; width: 600px; color: rgb(255, 153, 0);"


cellpadding="0" cellspacing="0">


<tbody>


<tr>


<td


style="font-weight: bold; font-family: Helvetica,Arial,sans-serif; font-size: 32pt; text-align: right; padding-right: 10px; padding-top: 25px; vertical-align: top;">


<div id="countdowncontainer"></div>


<br>


<script type="text/javascript">


var futuredate=new cdtime("countdowncontainer", "július 25, 2011 24:00:00")


futuredate.displaycountdown("days", formatresults)


</script>


</td>


</tr>


</tbody>


</table>


</body>


</html>

2011. júl. 25. 18:16
Hasznos számodra ez a válasz?
 7/8 Mugen ***** válasza:
Ha kérdésed van akkor írj rám!
2011. júl. 25. 18:17
Hasznos számodra ez a válasz?
 8/8 A kérdező kommentje:

Jaj, nagyon szépen köszönöm :)

Megértettem mindent a leírások alapján!:)

Hálás köszöneteM!!!

2011. júl. 26. 02:35

Kapcsolódó kérdések:





Minden jog fenntartva © 2024, www.gyakorikerdesek.hu
GYIK | Szabályzat | Jogi nyilatkozat | Adatvédelem | Cookie beállítások | WebMinute Kft. | Facebook | Kapcsolat: info(kukac)gyakorikerdesek.hu

A weboldalon megjelenő anyagok nem minősülnek szerkesztői tartalomnak, előzetes ellenőrzésen nem esnek át, az üzemeltető véleményét nem tükrözik.
Ha kifogással szeretne élni valamely tartalommal kapcsolatban, kérjük jelezze e-mailes elérhetőségünkön!