Kirjautuminen

Haku

Tehtävät

Keskustelu: Nettisivujen teko: [htm] Sivun päivitys ei toimi

Kulma [15.02.2006 16:18:32]

#

Miksi sivu ei päivity kun countteri=0?

<html>
<head> <title>HaukiTV</title><META http-equiv='Page-Enter' content='revealtrans(duration=3,transition=12'>
<META HTTP-EQUIV='Refresh' CONTENT=30;URL='http://80.186.4.152:4040/'><script>function countDown() {count.innerHTML = countValue;countValue = countValue - 1;if (countValue >= 0) {setTimeout('countDown()', 1000);}}</script></head><body OnLoad= 'countValue=20; countDown()' bgcolor=1d1d26 text=FFFFFF><center><FONT SIZE=4>HaukiTV</font><br><br>
<FONT SIZE=3>Odota: <font color=0000FF><span id='count'></font>&nbsp;&nbsp;</span> sekuntia, tai klikkaa Päivitä - nappia!</font><br><br>
<img src='shot.jpg' alt=Live-kuva><br>
<p>&nbsp;</p><FONT SIZE=1>HaukiTV by:<font color=FFFFFF> jrantala.com</font><br><br>
<!--WebServer 1.0-->
</body></html>

Meitsi [15.02.2006 16:35:23]

#

Koodin järkevä muotoilu auttaisi asiaa, debuggaus helpottuisi. Ja miksi ihmeessä käyttää javascriptiä kun tuossa on jo meta-päivitys.

Merri [15.02.2006 16:59:38]

#

Siistitään koodia hieman, eli korjataan virheitä, siirretään ulkoasu CSS:n huoleksi ja vain IE:ssä toimivat jutut pois:

<html><head>
	<title>HaukiTV</title>
	<script type="text/javascript">
function countDown() {
	count.innerHTML = countValue;
	countValue = countValue - 1;
	if (countValue >= 0) {
		setTimeout('countDown()', 1000);
	} else {
		document.location.href = 'http://80.184.4.152:4040/';
	}
}
	</script><style type="text/css">
body {
	background : #1D1D26;
	color : #FFF;
	text-align : center;
}
#dokumentti {
	margin : 0 auto;
	text-align : left;
	width : 20em;
}
h1 { font-size : 14pt; }
span { color : #00F; }
#tehnyt { font-size : 7pt; }
#tehnyt a,
#tehnyt a:active,
#tehnyt a:link,
#tehnyt a:visited { color : #FFF; }
	</style>
	</head><body onload="countValue = 20; countDown();">
		<div id="dokumentti">
		<h1>HaukiTV</h1>
		<p>Odota <span id="count"></span> sekuntia tai klikkaa päivitä-nappia!</p>
		<p><img alt="Live-kuva" src="shot.jpg"></p>
		<p id="tehnyt">HaukiTV by: <a href="http://jrantala.com">jrantala.com</a></p>
	</div>
</body></html>

Otin metatagit kokonaan pois, jotta JavaScript saa hoitaa kaiken ja että laskuri myös oikeasti laskee sitä aikaa, mikä tullaan odottamaan.

Olisi vielä hyvä sijoittaa suora linkki sinne minne ollaan menossa, jotta sivu pelittäisi silloinkin kun JavaScripti on pois päältä.

Kulma [16.02.2006 18:16:28]

#

Ok. Miten saisin ton lähetettyä winsockilla vb:llä?
Edellisen lähetin näin:

    sendSock.SendData httpHeader
    sendSock.SendData "<html>" & vbCrLf
    sendSock.SendData "<head> <title>HaukiTV</title>"
    sendSock.SendData "<META http-equiv='Page-Enter' content='revealtrans(duration=3,transition=12'>" & vbCrLf
    sendSock.SendData "<META HTTP-EQUIV='Refresh' CONTENT=10;URL='http://" & GetInternetIP(True) & ":" & txtport.Text & "/'>"


   sendSock.SendData "<script>"
   sendSock.SendData "function countDown() {"
   sendSock.SendData "count.innerHTML = countValue;"
   sendSock.SendData "countValue = countValue - 1;"
   sendSock.SendData "if (countValue >= 0) {setTimeout('countDown()', 1000);}"
   sendSock.SendData "}"
   sendSock.SendData "</script>"

    sendSock.SendData "</head>"
    sendSock.SendData "<body OnLoad= 'countValue=10; countDown()' bgcolor=1d1d26 text=FFFFFF>"
    sendSock.SendData "<center>"

    sendSock.SendData "<FONT SIZE=4>HaukiTV</font><br><br>" & vbCrLf

    sendSock.SendData "<FONT SIZE=3>Odota: <font color=0000FF><span id='count'></font>&nbsp;&nbsp;</span> sekuntia, tai klikkaa Päivitä - nappia!</font><br><br>" & vbCrLf
    sendSock.SendData "<img src='shot.jpg' alt=Live-kuva><br>" & vbCrLf
    sendSock.SendData "<p>&nbsp;</p>"
    sendSock.SendData "<FONT SIZE=1>Serveri ohjelman tekijän sivut:<font color=FFFFFF> www.jrantala.com</font><br><br>" & vbCrLf

    sendSock.SendData "<!--WebServer 1.0-->" & vbCrLf
    sendSock.SendData "</body>"
    sendSock.SendData "</html>"
    PageSent = True


 End If

End Sub

Merri [16.02.2006 19:50:00]

#

Samalla tavalla. Jokaisen lainausmerkin tilalle voi laittaa " & ChrW$(34) & "

Toinen tapa on tallentaa tuo tiedostoksi, avata se stringiin ja sitten korvata sieltä halutut kohdat, esim. laittaa vaikka tyyliin {IP} siihen kohtaan, johon sijoitetaan IP ja sitten Teksti = Replace$(Teksti, "{IP}", GetInternetIP(True))

Ja sitten selviää tiedonlähetyksessä yhdellä rivillä: sendSock.SendData Teksti & vbCrLf

Vastaus

Aihe on jo aika vanha, joten et voi enää vastata siihen.

Tietoa sivustosta