Her kan du diskutere koding generelt sett. Har du noensinne lurt på hvordan du gjør enkelte ting i php, MySQL eller HTML, spør her! Koding forbundet med phpBB skal i et av de forumene, som oftest MOD-forumet, mens all koding som ikke har noe med phpBB å gjøre skal hit.
-
SumSum
- Supporter
- Innlegg: 180
- Registrert: 21. jan 2011, 03:18
Legg inn
av SumSum » 22. feb 2013, 09:29
ConSenzo skrev:Hei, jeg bare lurer på om noen kan hjelpe meg med å lage en slik
funksjon, altså sette den opp slik som denne siden forklarer.
http://stackoverflow.com/questions/3172332/
convert-seconds-to-hourminutesecond
Jeg driver selv å utvikler en virksomhet som kunne trengt denne
funksjonen som konvertere sekunder til minutter (PHP)
- Håper dere er mere seriøse en Freak.
script kan sendes om du kan hjelpe meg!
Det står jo faktisk i klartekst på den siden du henviser til, men her har du det i en liten teskje:
Kode: Velg alt
$allofit = date("G:i:s", $original);
$result = explode (':',$allofit);
Resultatet er et array som inneholder tre elementer: Timer, minutter og sekunder.
Hvis du vil ha detaljene, altså uten å bruke date-funksjonen, så:
Kode: Velg alt
$hours = floor($original/3600);
$temp = $original%3600;
$minutes = floor($temp/60);
$seconds = $temp%60;
echo "Tid: $hours:$minutes:$seconds\n";
support og vedlikehold
-
kgun
- Henger med
- Innlegg: 43
- Registrert: 30. jan 2006, 15:16
- Sted: Moss
-
Kontakt:
Legg inn
av kgun » 22. jan 2016, 13:07
Server kode som php er nok bedre enn klient kode som JavaScript på et nettsted der server språket er php.
Med moderne JS bibliotkerer som jQuery, jQuerymobile, three.js, node.js, angular.js etc. etc. får man ikke samme problemer med ulike nettlesere. Her er en jQuery kode for å telle ned sekunder som kan være aktuell for noen:
Kode: Velg alt
(function($) {
$.fn.countdown = function(options, callback) {
//custom 'this' selector
thisEl = $(this);
//array of custom settings
var settings = {
'date': null,
'format': null
};
//append the settings array to options
if(options) {
$.extend(settings, options);
}
//main countdown function
function countdown_proc() {
eventDate = Date.parse(settings['date']) / 1000;
currentDate = Math.floor($.now() / 1000);
if(eventDate <= currentDate) {
callback.call(this);
clearInterval(interval);
}
seconds = eventDate - currentDate;
days = Math.floor(seconds / (60 * 60 * 24)); //calculate the number of days
seconds -= days * 60 * 60 * 24; //update the seconds variable with no. of days removed
hours = Math.floor(seconds / (60 * 60));
seconds -= hours * 60 * 60; //update the seconds variable with no. of hours removed
minutes = Math.floor(seconds / 60);
seconds -= minutes * 60; //update the seconds variable with no. of minutes removed
//conditional Ss
if (days == 1) { thisEl.find(".timeRefDays").text("day"); } else { thisEl.find(".timeRefDays").text("days"); }
if (hours == 1) { thisEl.find(".timeRefHours").text("hour"); } else { thisEl.find(".timeRefHours").text("hours"); }
if (minutes == 1) { thisEl.find(".timeRefMinutes").text("minute"); } else { thisEl.find(".timeRefMinutes").text("minutes"); }
if (seconds == 1) { thisEl.find(".timeRefSeconds").text("second"); } else { thisEl.find(".timeRefSeconds").text("seconds"); }
//logic for the two_digits ON setting
if(settings['format'] == "on") {
days = (String(days).length >= 2) ? days : "0" + days;
hours = (String(hours).length >= 2) ? hours : "0" + hours;
minutes = (String(minutes).length >= 2) ? minutes : "0" + minutes;
seconds = (String(seconds).length >= 2) ? seconds : "0" + seconds;
}
//update the countdown's html values.
if(!isNaN(eventDate)) {
thisEl.find(".days").text(days);
thisEl.find(".hours").text(hours);
thisEl.find(".minutes").text(minutes);
thisEl.find(".seconds").text(seconds);
} else {
alert("Invalid date. Here's an example: 12 Tuesday 2012 17:30:00");
clearInterval(interval);
}
}
//run the function
countdown_proc();
//loop the function
interval = setInterval(countdown_proc, 1000);
}
}) (jQuery);