include ?

server

Erfahrenes Mitglied
Hi,

Folgendes Problem:
Ich möchte ein Countdownscript (Javascript) includieren.
Wenn ich das einmal mache, funktioniert das, aber mehr als einmal kann ich es nicht includieren....

Warum?

Ausserdem ist mir aufgefallen, dass der Befehl Update tabellenname set ......where Id = '".$id."'
nur funktioniert, wenn Id in der mysql Tabelle auto_increment ist.
Warum ist das so?
Mit select kann man hingegen auch andere Zellen ansprechen....
 
Folgendes Problem:
Ich möchte ein Countdownscript (Javascript) includieren.
Wenn ich das einmal mache, funktioniert das, aber mehr als einmal kann ich es nicht includieren....
1.) Code-Ausschnitte wären hilfreich!
2.) Warum soll das Countdown-Script mehrmals eingebunden werden?

Ausserdem ist mir aufgefallen, dass der Befehl Update tabellenname set ......where Id = '".$id."'
nur funktioniert, wenn Id in der mysql Tabelle auto_increment ist.
Warum ist das so?
Das ist definitiv nicht so!
 
Hi,
Mehrmals eingebunden, weil es von verschiedenen Zeiten herunterzählt.

Hier das Script:
PHP:
<head>
   <title>Sourcefinder</title>
 </head>
 <body text="#000000" bgcolor="#FFFFFF">
<?

$zeit1 = $zeit1 - time();
$counter = "<div id=\"contdown\"><script type=\"text/javascript\">
var start="."$zeit1".";
 var ptime=document.getElementById('contdown');
 adate=new Date();
 function countdown()
  {
   jetzt=new Date();
   var stunden=\"0\";
   var minuten=\"0\";
   var sekunden=start-Math.round((jetzt.getTime()-adate.getTime())/1000.);
   if
   (sekunden<0)
   {
   ptime.innerHTML=\"<a href='intern.php'>-</a>\"
   
  
   }
   else
   {if
   (sekunden>59){minuten=Math.floor(sekunden/60);
   sekunden=sekunden-minuten*60}if(minuten>59){stunden=Math.floor(minuten/60);
   minuten=minuten-stunden*60}
   if(sekunden<10){sekunden=\"0\"+sekunden}
   if(minuten<10){minuten=\"0\"+minuten}ptime.innerHTML=\"<font size='3' face='Verdana, Arial, Helvetica, sans-serif'>\"+stunden+\":\"+minuten+\":\"+sekunden+\"</font>\"}
   window.setTimeout(\"countdown();\",200); }window.onload=countdown;
</script>";


?>
</body>
</html>

es ist egal, wo ich es einbaue, anscheinend kann man es nicht öfter als ein Mal anzeigen lassen, auch nicht, wenn ich das Script umbenenne.
 
Dass Du das Script nicht mehrmals einbinden kannst ist durch JavaScript bedingt. Im JavaScript wird eine Funktion deklariert. Bindest Du es nun mehrfach ein, wird die gleiche Funktion wieder deklariert. Und das ist in JavaScript genauso unzulässig, wie in PHP und in wahrscheinlich jeder anderen Sprache auch.

snuu
 
Hi,

Also verstehe ich das Richtig, wenn ich die variable $counter einfach in $counter2 umbenenne, dann sollte es gehen?
 
Hi,

Ok, danke.
Nun, ich habs probiert, schaff es aber immer noch nicht.

Gibts überhaupt eine möglichkeit, zwei von diesen Countdowns auf einer Seite einzublenden?

Wenn ja, wie muss ich das Javascript ändern?

Ich hab jetzt hinter allen Countdown einen 2er gesetzt, funktioniert aber nicht.
 
Hier die Seite, in der die zwei Countdowns aufgerufen werden sollen.
PHP:
<html>
<head>
<title>Untitled Document</title>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
</head>

<body bgcolor="#FFFFFF" text="#000000">

<table width="781" border="0" cellpadding="0" cellspacing="0">
  <tr> 
    <td width="171" height="75"></td>
    <td width="264"></td>
    <td width="346"></td>
  </tr>
  <tr> 
    <td height="104"></td>
    <td valign="top">&nbsp;<?php
	
	include ("cdown1.php");
	echo $counter;
	?></td>
	
    <td></td>
  </tr>
  <tr> 
    <td height="98"></td>
    <td></td>
    <td></td>
  </tr>
  <tr>
    <td height="131"></td>
    <td valign="top">
      <?php
	
	include ("cdown2.php");
	echo $counter2;
	?>
    </td>
    <td></td>
  </tr>
  <tr>
    <td height="115"></td>
    <td></td>
    <td></td>
  </tr>
</table>
</body>
</html>

Hier der zweite Countdown cdown2.php:
PHP:
 <head>
   <title>Sourcefinder</title>
 </head>
 <body text="#000000" bgcolor="#FFFFFF">
<?

$zeit = 3600;
$counter2 = "<div id=\"contdown2\"><script type=\"text/javascript\">
var start="."$zeit".";
 var ptime=document.getElementById('contdown2');
 adate=new Date();
 function countdown2()
  {
   jetzt=new Date();
   var stunden=\"0\";
   var minuten=\"0\";
   var sekunden=start-Math.round((jetzt.getTime()-adate.getTime())/1000.);
   if
   (sekunden<0)
   {
   ptime.innerHTML=\"<a href='intern.php'>Fertig!</a>\"
   
  
   }
   else
   {if
   (sekunden>59){minuten=Math.floor(sekunden/60);
   sekunden=sekunden-minuten*60}if(minuten>59){stunden=Math.floor(minuten/60);
   minuten=minuten-stunden*60}
   if(sekunden<10){sekunden=\"0\"+sekunden}
   if(minuten<10){minuten=\"0\"+minuten}ptime.innerHTML=\"<font size='3' face='Verdana, Arial, Helvetica, sans-serif'>\"+stunden+\":\"+minuten+\":\"+sekunden+\"</font>\"}
   window.setTimeout(\"countdown2();\",200); }window.onload=countdown2;
</script>";

?>
</body>
</html>
 
Schon auf den ersten Blick sehe ich das einige Variablen in beiden Scripts vorhanden sind , also doppelt :

z.B.;

jetzt, stunden , minuten, ....


alles umbenennen und am besten eindeutig und nicht nur durch anhängen einer Ziffer!
 
Zurück