Avatar billede techboy992 Praktikant
17. december 2012 - 03:47 Der er 15 kommentarer og
1 løsning

countdown problem

Jeg har problem med at countdown viser for meget:

Count.js:
/*
Author: Robert Hashemian
http://www.hashemian.com/

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 = "12/31/2020 5:00 AM";
BackColor = "palegreen";
ForeColor = "navy";
CountActive = true;
CountStepper = -1;
LeadingZero = true;
DisplayFormat = "%%D%% Days, %%H%% Hours, %%M%% Minutes, %%S%% Seconds.";
FinishMessage = "It is finally here!";
</script>
<script language="JavaScript" src="http://scripts.hashemian.com/js/countdown.js"></script>
*/

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) {
    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);

Show.php
$date = date('d/m/Y g:i:s A', strtotime('+15 minutes'))

<script language='JavaScript'>
TargetDate = '$date';
BackColor = 'palegreen';
ForeColor = 'navy';
CountActive = true;
CountStepper = -1;
LeadingZero = true;

DisplayFormat = '%%H%% : %%M%% : %%S%%';
FinishMessage = 'Show er slut!';
</script>
<script language='JavaScript' src='/count.js'></script>

For at se scriptet koere brug denne url:
http://sexleg.dk/show.php?id=i9m2GkXhYt

viser over 16 timer for meget i countdown
Avatar billede olsensweb.dk Ekspert
17. december 2012 - 13:25 #1
prøv at se hvikle dato format den forvendter det i og sammenlign med det format du angiver
TargetDate = "12/31/2020 5:00 AM"; // dvs måned / dag / år Timer:minutter
du angiver $date = date('d/m/Y g:i:s A', strtotime('+15 minutes')) dvs dag/måned/år

hvordan får du din php variabel over i JS ??
har du en id der hedder cntdwn du kan udskrive i ??
hedder din js fil count org hedder den countdown.js


<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
    <title></title>
    <style type="text/css">
    </style>
    <script type="text/javascript">
    </script>
</head>
<body>
<?php
$date = date('m/d/Y g:i:s A', strtotime('+15 minutes'))
?>
<script type="text/javascript">
TargetDate = '<?php echo $date; ?>';
BackColor = 'palegreen';
ForeColor = 'navy';
CountActive = true;
CountStepper = -1;
LeadingZero = true;

DisplayFormat = '%%H%% : %%M%% : %%S%%';
FinishMessage = 'Show er slut!';
</script>
<script type="text/javascript" src='countdown.js'></script>
<span id="cntdwn"></span>
</body>
</html>
Avatar billede techboy992 Praktikant
17. december 2012 - 14:06 #2
hi ronols

Naar jeg laver dato til det rigtige format siger den hele tiden show finish.

uanset hvad jeg goer.

jeg kan ikke bruge html da counteren er indbygget i et php script som en part af scriptet, og igen indbygget i et cms system (E107).

proev at kigge:www.sexleg.dk/show.php?id=i9m2GkXhYt

Her hele PHP scriptet:
<?php
require_once 'class2.php';
require_once(HEADERF);
require 'database.php';
require 'countdown.php';
include_lan(e_LANGUAGEDIR.e_LANGUAGE.'/lan_show.php');
$id = isset($_GET['id']) ? $_GET['id'] : '';
$caption = "'".LAN_SHOW_22."'";
if (!USER) {
  $ns->tablerender("'".LAN_SHOW_24."'", "'".LAN_SHOW_23."'");
  require_once(FOOTERF);
  exit;
}
$result = mysql_query("SELECT * FROM shows where show_id='".$id."'");
while ($row=mysql_fetch_array($result))
$show_min = $row["show_name"];

$result = mysql_query("SELECT * FROM shows where show_id='".$id."'");
while ($row=mysql_fetch_array($result))
$model_id= $row["model_id"];

$result = mysql_query("SELECT * FROM e107_user WHERE user_id='".$model_id."'");
while ($row=mysql_fetch_array($result))
$avatar = $row["user_image"];

$result = mysql_query("SELECT * FROM e107_user WHERE user_id='".$model_id."'");
while ($row=mysql_fetch_array($result))
$model_name = $row["user_name"];



$result = mysql_query("SELECT * FROM priser where tekst='".$show_min."'");
while ($row=mysql_fetch_array($result))
$show_minutes = $row["min"];

$result = mysql_query("SELECT * FROM shows where show_id='".$id."'");
while ($row=mysql_fetch_array($result))
$show_over = $row["showover"];

//model accept
$result = mysql_query("SELECT * FROM shows where show_id='".$id."'");
while ($row=mysql_fetch_array($result))
$modelaction1 = $row["model_accept"];

$result = mysql_query("SELECT * FROM shows where show_id='".$id."'");
while ($row=mysql_fetch_array($result))
$customeraction1 = $row["show_paid"];

$result = mysql_query("SELECT * FROM shows where show_id='".$id."'");
while ($row=mysql_fetch_array($result))
$cust_id = $row["cust_id"];

$result = mysql_query("SELECT * FROM shows where show_id='".$id."'");
while ($row=mysql_fetch_array($result))
$modelstart = $row["model_showstart"];

$result = mysql_query("SELECT * FROM shows where show_id='".$id."'");
while ($row=mysql_fetch_array($result))
$custstart = $row["cust_showstart"];

$result = mysql_query("SELECT * FROM shows where show_id='".$id."'");
while ($row=mysql_fetch_array($result))
$showstart = $row["show_started"];


   
if ($showstart=='NEJ'){
$start = "<img src='statusbar.gif' width='300' height='25'>'".LAN_SHOW_1."'";
}
Else {
    if ($username==$cust_id){
    $start = "'".LAN_SHOW_2."'";
    }
    elseif ($username==$model_id){
$start= "'".LAN_SHOW_3."'";
}
}

if ($modelaction1=="NEJ"){
    $status = "'".LAN_SHOW_4."'";
        if ($username==$model_id){
            $action = "<a href='http://www.sexleg.dk/acceptshow.php?id=$id'>'".LAN_SHOW_17."'</a>";
        }
    }

elseif ($customeraction1=="NEJ"){
    $status = "'".LAN_SHOW_5."'";
    if ($username==$cust_id){
            $action = "<a href='betal.php?id=$id'>'".LAN_SHOW_18."'</a>";
        }
}

elseif ($modelstart=="NEJ"){
    $status = '"'.LAN_SHOW_19.'"';
        if ($username==$model_id){
            $action = "<a href='mstartshow.php?id=$id'>'".LAN_SHOW_20."'</a>";
        }
}

elseif ($custstart=="NEJ"){
    $status = '"'.LAN_SHOW_6.'"';
        if ($username==$cust_id){
            $action = "<a href='cstartshow.php?id=$id' target='_blank'><img src='startshow.png'></a>";
        }
}


$nu = time();
$nu += 15*60;
if ($showstart=='JA'){
//$date = date('d/m/Y g:i:s A', strtotime('+15 minutes'));
$date =  date("m/d/Y g:m:s A", $nu);
$now = date("d/m/Y g:m:s A");
}
else {
    $date = '"'.LAN_SHOW_21.'"';
}
$result = mysql_query("SELECT * FROM shows where show_id='".$id."'");
while ($row=mysql_fetch_array($result))
echo "

<table border='0' width='100%'>
    <tr>
        <td>
        <table border='0' width='100%' height='83'>
            <tr>
                <td bgcolor='#0000FF'>
                <h1 align='center'><font color='#FFFFFF'>SHOW &nbsp;&nbsp;$id</font></h1>
                </td>
                <td width='166' valign='top' bgcolor='#0000FF'>
                <p align='center'>&nbsp;</td>
            </tr>
        </table>
        </td>
    </tr>
    <tr>
        <td>
        <table border='0' width='100%' height='256'>
            <tr>
                <td valign='top'><center>$start<br>$status<br>$action</center></td>
                <td width='231' valign='top'>
                <table border='0' width='100%' style='border-collapse: collapse'>
                    <tr>
                        <td colspan='2' align='center'>SHOWINFO</td>
                    </tr>
                    <tr>
                        <td colspan ='2'><center><img src='$avatar'><br>$model_name<hr color='red'></center></td>
                    </tr>
                    <tr>
                        <td align='center' width='79%'>
                        <p align='left'>'".LAN_SHOW_7."'</td>
                        <td width='19%' align='center'><img src='$row[model_accept].gif'></td>
                    </tr>
                    <tr>
                        <td align='center' width='79%'>
                        <p align='left'>'".LAN_SHOW_8."'</td>
                        <td width='19%' align='center'><img src='$row[cust_accept].gif'></td>
                    </tr>
                    <tr>
                        <td align='center' width='79%'>
                        <p align='left'>'".LAN_SHOW_9."'</td>
                        <td width='19%' align='center'><img src='$row[show_paid].gif'></td>
                    </tr>
                    <tr>
                        <td align='center' width='79%'>
                        <p align='left'>'".LAN_SHOW_10."'</td>
                        <td width='19%' align='center'><img src='$row[show_started].gif'></td>
                    </tr>
                    <tr>
                        <td width='179'>'".LAN_SHOW_16."'</td>
                        <td width='19%' align='center'><img src='$row[show_finish].gif'></td>
                    </tr>
                </table>
                <table border='0' width='100%' style='border-collapse: collapse'>
                    <tr>
                        <td width='110'>'".LAN_SHOW_11."'</td>
                        <td>$row[model_ym]</td>
                    </tr>
                    <tr>
                        <td width='110'>'".LAN_SHOW_12."'</td>
                        <td>$row[cust_ym]</td>
                    </tr>
                    <tr>
                        <td width='110'>'".LAN_SHOW_13."'</span></td>
                        <td>$show_minutes min</td>
                    </tr>
                    <tr>
                        <td width='110'>'".LAN_SHOW_14."'</td>
                        <td><script language='JavaScript'>
TargetDate = '12/16/2012 4:12:44 pm';
BackColor = 'palegreen';
ForeColor = 'navy';
CountActive = true;
CountStepper = -1;
LeadingZero = true;

DisplayFormat = '%%H%% : %%M%% : %%S%%';
FinishMessage = '".LAN_SHOW_15."';
</script>
<script language='JavaScript' src='/count.js'></script></td>
                    </tr>
                </table>
                <table border='0' width='100%' style='border-collapse: collapse'>
                   
                </table>
                </td>
            </tr>
        </table>
        </td>
    </tr>
</table>
";
echo $date;
echo '<br>';
echo $now;
$result = mysql_query("SELECT * FROM shows where show_id='".$id."'");
while ($row=mysql_fetch_array($result))
$show_finish = $row["show_finish"];
if ($show_finish=='JA'){
    header ("location: index.php");
}
require_once(FOOTERF);
?>
Avatar billede techboy992 Praktikant
17. december 2012 - 14:31 #3
OPPPS
Skal bruge dette link, da det andet link er sat som faerdig :
http://www.sexleg.dk/show.php?id=mhTu5EYQ7K
Avatar billede olsensweb.dk Ekspert
17. december 2012 - 18:11 #4
prøvede lige at debug din side feks med FireBug add-on til FireFox

"NetworkError: 404 Not Found - http://www.sexleg.dk/e107_themes/Kisse-me/js/jquery-ui.js"
detailed error: ReferenceError: $ is not defined
[Break ved denne fejl]    
$(document).ready(function() {
script.js (linje 3)
error:
"NetworkError: 404 Not Found - http://www.sexleg.dk/e107_themes/Kisse-me/js/jquery-ui.js"
ReferenceError: jQuery is not defined
[Break ved denne fejl]    
$(document).ready(function(){
show.p...u5EYQ7K (linje 48)
detailed error: ReferenceError: $ is not defined
[Break ved denne fejl]    
$(document).ready(function(){
show.p...u5EYQ7K (linje 48)
"NetworkError: 404 Not Found - http://www.sexleg.dk/e107_themes/Kisse-me/images/reflejo-to.png"
"NetworkError: 404 Not Found - http://www.sexleg.dk/e107_themes/Kisse-me/images/.png"
"NetworkError: 404 Not Found - http://www.sexleg.dk/e107_themes/Kisse-me/images/caption-left-1.png"

hvor indlæsser du count.js ?? (org countdown.js)
har din indlæst jquery ?? (kan ikke lige se det)
du bruger $(document).ready(function(){ en del steder, hvilke bruger jquery
ret disse fejl først.
tag et kig på http://validator.w3.org/check?uri=http%3A%2F%2Fwww.sexleg.dk%2Fshow.php%3Fid%3DmhTu5EYQ7K&charset=%28detect+automatically%29&doctype=Inline&group=0 og ret de fejl

det mysql API du anvender udgår at support i en af de næste vertioner af PHP, brug mysqli eller PDO
Avatar billede techboy992 Praktikant
18. december 2012 - 09:17 #5
Har rettet de fleste fejl , men den her med script.js, ved jeg ikke hvordan jeg retter.

Her scriptet fra script.js:

$(document).ready(function() {
   
            $('.notification').hover(function() {
                $(this).css('cursor','pointer');
            }, function() {
                    $(this).css('cursor','auto');
                });

            $('.notification span').click(function() {
                $(this).parent().fadeOut(800);
            });
           
            $('.notification').click(function() {
                $(this).fadeOut(800);
            });
           
        });
Avatar billede techboy992 Praktikant
18. december 2012 - 09:26 #6
kunne jeg evt faa et exsempel paa en mysqli_quiry paa denne fore spoergelse i mysql_quiry format:

$result = mysql_query("SELECT * FROM e107_user_extended where user_extended_id='".$id."'");
while ($row=mysql_fetch_array($result))
$sprog = $row["lang"];
Avatar billede techboy992 Praktikant
18. december 2012 - 09:45 #7
$query = "SELECT * FROM e107_user_extended where user_extended_id='".$id."'";
    $result = $mysqli->query($query);
    while ($row = mysqli_fetch_array($query)) {
        $sprog = $row["lang"];
    }


vil dette virke ??
Avatar billede olsensweb.dk Ekspert
18. december 2012 - 14:19 #8
#5
fejl ved
$(document).ready(function() {

er pga du ikke har includeret jquery
her er nogle link hvor du kan hente dem online
https://ajax.googleapis.com/ajax/libs/jquery/1/jquery.min.js <-- google cdn altid den nyeste
https://ajax.googleapis.com/ajax/libs/jquery/1.6.1/jquery.min.js <-- google cdn hvis det er en bestemt vertion
http://code.jquery.com/jquery-latest.min.js <-- jquery cdn altid den nyeste
http://code.jquery.com/jquery-1.5.min.js <-- jquery cdn hvis det er en bestemt vertion
https://ajax.aspnetcdn.com/ajax/jQuery/jquery-1.7.1.min.js  microsoft cdn hvis det er en bestemt vertion
http://www.asp.net/ajaxlibrary/cdn.ashx <-- microsoft cdn

læg denne linje ind som det første js i din header, deri ligger fortolkningen af $(document).ready


#7 >vil dette virke ??
ser man bort fra den lille skrive fejl i din while så JA.
mange vil dog ikke blande Procedural style og Object oriented style men man kan sagtens og det er fuldt lovligt

$query = "SELECT * FROM e107_user_extended where user_extended_id='".$id."'";
$result = $mysqli->query($query);
while ($row = mysqli_fetch_array($result)) {
    $sprog = $row["lang"];
}


med ren OOP style

$query = "SELECT * FROM e107_user_extended where user_extended_id='".$id."'";
$result = $mysqli->query($query);
while ($row = $result->fetch_assoc()){
    $sprog =$row["lang"];       
}


at det ikke er helt pjat når jeg skriver det gamle API udgår at PHP kan du se af dette citat
ref http://dk.php.net/manual/en/mysqlinfo.api.choosing.php
citat
It is recommended to use either the mysqli or PDO_MySQL extensions. It is not recommended to use the old mysql extension for new development, as it has been deprecated as of PHP 5.5.0 and will be removed in the future. A detailed feature comparison matrix is provided below. The overall performance of all three extensions is considered to be about the same. Although the performance of the extension contributes only a fraction of the total run time of a PHP web request. Often, the impact is as low as 0.1%.

/citat

gammal query http://dk.php.net/manual/en/function.mysql-query.php
ny query http://dk.php.net/manual/en/mysqli.query.php

gammal fetch-array http://php.net/manual/en/function.mysql-fetch-array.php
ny fetch-array http://php.net/manual/en/mysqli-result.fetch-array.php
Avatar billede techboy992 Praktikant
19. december 2012 - 08:19 #9
Tusinde tusinde tak Ronols :) :) alle fejl rettet tester mysqli nu her.
Avatar billede techboy992 Praktikant
19. december 2012 - 09:56 #10
der er bare et problem, mit portal system er endnu ikke opdateret til mysqli, bruger stadig mysql. Men haaber det kommer i en af de naeste opdateringer :-)
Avatar billede techboy992 Praktikant
19. december 2012 - 13:45 #11
eeewww mysqli er ikke supported paa hosten :( :(

http://sexleg.dk/phpinfo.php


Fatal error: Class 'mysqli' not found in /home/sexleg/public_html/databasemysqli.php on line 2

kan ikke blive installeret foer naeste maaned, da jeg har brugt mine frie installationer oev oev oev.
Avatar billede olsensweb.dk Ekspert
19. december 2012 - 15:20 #12
>eeewww mysqli er ikke supported paa hosten :( :(
det er supporteret og enablet

mysqli
MysqlI Support    enabled
Client API library version     5.1.65
Client API header version     5.1.65
MYSQLI_SOCKET     /var/lib/mysql/mysql.sock


>Fatal error: Class 'mysqli' not found in /home/sexleg/public_html/databasemysqli.php on line 2
har du lavet en connection til din database ??

prøv at gemme dette som en fil og lig det op. (husk at skrive de rigtige værdier i $host, $user, $password, $db)
(utested)

<?php
/* make connection */
$mysqli = new mysqli($host, $user, $password, $db); 
/* check connection */
if (!$mysqli) {
    echo 'Der opsod en fejl.';
    exit();       
}
// $mysqli->set_charset("utf8");   


$query = "SELECT `lang` FROM `e107_user_extended` limit 5";
$result = $mysqli->query($query);
while ($row = $result->fetch_assoc()){
    echo $row["lang"]."<br>";       
}
?>

ovenstående skulle gerne skrive sprogene ud for de 5 første brugere
Avatar billede techboy992 Praktikant
19. december 2012 - 15:40 #13
Ja jeg fik dem til at enable det , og connection er ogsaa rettet var bruger og database der var forkert :)

Men et andet problem nu er kan man ikke kalde flere felter i en query med mysqli feks:

$query = "SELECT * FROM Shows WHERE show_id='".$id."'";
$result =$mysqli->query($query);
while ($row = $result->fetch_array()){
<td>$row[something];</td><td>$row[something2]</td>
}
Avatar billede techboy992 Praktikant
19. december 2012 - 15:44 #14
Faar fejl paa fetch_assoc() og fetch_array()


Localhost via UNIX socket
Fatal error: Call to a member function fetch_array() on a non-object in /home/sexleg/public_html/show2.php on line 198
Avatar billede olsensweb.dk Ekspert
19. december 2012 - 17:21 #15
>Men et andet problem nu er kan man ikke kalde flere felter i en query med mysqli feks:
det kan man sagtens kig på
http://php.net/manual/en/mysqli-result.fetch-array.php #eks 1
http://php.net/manual/en/mysqli-result.fetch-assoc.php #eks 1 <-- vil jeg bruge

mangler da nogle plinger
<td>$row[something];</td><td>$row[something2]</td>
bør være
<td>$row["something"];</td><td>$row["something2"]</td>
Avatar billede techboy992 Praktikant
03. februar 2013 - 08:09 #16
tak for hjael ronols
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
Vi tilbyder markedets bedste kurser inden for webudvikling

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester