webForumDet fria alternativet

undefined i dhtml-scriptet

12 svar · 236 visningar · startad av WebbisNet

WebbisNetMedlem sedan feb. 20032 182 inlägg
#1

Detta script funkade perfekt med access, nu har jag MySQL och jag får nu undefined istället för meddelandet, alla poster sparas som de ska i databasen

<script type="text/javascript">

/***********************************************
* Memory Ticker script- © Dynamic Drive DHTML code library ([url]www.dynamicdrive.com[/url])
* This notice MUST stay intact for legal use
* Visit Dynamic Drive at [url]http://www.dynamicdrive.com/[/url] for full source code
***********************************************/

//configure tickercontents[] to set the messges you wish be displayed (HTML codes accepted)
//Backslash any apostrophes within your text (ie: I\'m the king of the world!)

<%If user.EOF then
	Response.Write "Inga data finns"
Else
	response.write "var tickercontents=new Array()"
i=0
	Do until user.eof
	%>
tickercontents[<%=i%>]='<a class="menu" target="_top" href="/view.asp?userID=<%=user("userID")%>"><%=user("username")%>:&nbsp; <%=left(Mid(Server.HTMLEncode(user("message")),15),120)%></a>'
<%
i=i+1
user.MoveNext: Loop
	End If%>

var persistlastviewedmsg=1 //should messages' order persist after users navigate away (1=yes, 0=no)?
var persistmsgbehavior="onload" //set to "onload" or "onclick".

//configure the below variable to determine the delay between ticking of messages (in miliseconds):
var tickdelay=10000

////Do not edit pass this line////////////////

var divonclick=(persistlastviewedmsg && persistmsgbehavior=="onclick")? 'onClick="savelastmsg()" ' : ''
var currentmessage=0

function changetickercontent(){
if (crosstick.filters && crosstick.filters.length>0)
crosstick.filters[0].Apply()
crosstick.innerHTML=tickercontents[currentmessage]
if (crosstick.filters && crosstick.filters.length>0)
crosstick.filters[0].Play()
currentmessage=(currentmessage==tickercontents.length-1)? currentmessage=0 : currentmessage+1
var filterduration=(crosstick.filters&&crosstick.filters.length>0)? crosstick.filters[0].duration*1000 : 0
setTimeout("changetickercontent()",tickdelay+filterduration)
}

function beginticker(){
if (persistlastviewedmsg && get_cookie("lastmsgnum")!="")
revivelastmsg()
crosstick=document.getElementById? document.getElementById("memoryticker") : document.all.memoryticker
changetickercontent()
}

function get_cookie(Name) {
var search = Name + "="
var returnvalue = ""
if (document.cookie.length > 0) {
offset = document.cookie.indexOf(search)
if (offset != -1) {
offset += search.length
end = document.cookie.indexOf(";", offset)
if (end == -1)
end = document.cookie.length;
returnvalue=unescape(document.cookie.substring(offset, end))
}
}
return returnvalue;
}

function savelastmsg(){
document.cookie="lastmsgnum="+currentmessage
}

function revivelastmsg(){
currentmessage=parseInt(get_cookie("lastmsgnum"))
currentmessage=(currentmessage==0)? tickercontents.length-1 : currentmessage-1
}

if (persistlastviewedmsg && persistmsgbehavior=="onload")
window.onunload=savelastmsg

if (document.all||document.getElementById)
document.write('<div id="memoryticker" '+divonclick+'></div>')
if (window.addEventListener)
window.addEventListener("load", beginticker, false)
else if (window.attachEvent)
window.attachEvent("onload", beginticker)
else if (document.all || document.getElementById)
window.onload=beginticker

</script>
Peter SMedlem sedan dec. 20025 484 inlägg
#2

Posta koden som den syns i "Visa källa" (eller liknande) i webbläsaren.

WebbisNetMedlem sedan feb. 20032 182 inlägg
#3
<style type="text/css">

#memoryticker{
background-color: lightyellow;
width: 640px;
font: bold 10px Verdana;
/*Tip: add in height attribute here for multiple line scroller*/
border: 1px solid black;
padding: 1px;
/*Change 0.7 below to a different number if desired (0.7=0.7 seconds)*/
/*Remove below line to remove transitional effect in IE. Below line should always appear last within this CSS*/
filter: progid:DXImageTransform.Microsoft.GradientWipe(GradientSize=1.0 Duration=1,5)
}

</style>

</head>
<style type="text/css">
<!--
.shadow {
font-size: 10px;
filter: DropShadow(Color=#000000, OffX=1, OffY=1, Positive=1);
width: 100%;
height: 7px;
}
-->
</style>
<body style="background-color:#D4E6EA;">

<table width="100%" style="margin-left:0px; margin-top:0px; margin-right:0px; margin-bottom:0px;" border="0" cellpadding="0" cellspacing="0">
<tr>
<td valign="top" align="left" style="background-color:#D4E6EA;">
<a class="linkpresentation" href="/smsmessageinfo.asp" target="_top">
<img src="/images/lajvinfo.gif" border="0" /></a>
</td>
<td style="background-color:#D4E6EA;">
<script type="text/javascript">

/***********************************************
* Memory Ticker script- © Dynamic Drive DHTML code library ([url]www.dynamicdrive.com[/url])
* This notice MUST stay intact for legal use
* Visit Dynamic Drive at [url]http://www.dynamicdrive.com/[/url] for full source code
***********************************************/

//configure tickercontents[] to set the messges you wish be displayed (HTML codes accepted)
//Backslash any apostrophes within your text (ie: I\'m the king of the world!)

var tickercontents=new Array()
tickercontents[0]='<a class="menu" target="_top" href="/view.asp?userID=1">Webbisen:&nbsp; &#229;&#228;&#246;</a>'

tickercontents[1]='<a class="menu" target="_top" href="/view.asp?userID=1">Webbisen:&nbsp; test</a>'

tickercontents[2]='<a class="menu" target="_top" href="/view.asp?userID=1">Webbisen:&nbsp; V&#228;lkomna till lajven p&#229; webbisen</a>'

var persistlastviewedmsg=1 //should messages' order persist after users navigate away (1=yes, 0=no)?
var persistmsgbehavior="onload" //set to "onload" or "onclick".

//configure the below variable to determine the delay between ticking of messages (in miliseconds):
var tickdelay=10000

////Do not edit pass this line////////////////

var divonclick=(persistlastviewedmsg && persistmsgbehavior=="onclick")? 'onClick="savelastmsg()" ' : ''
var currentmessage=0

function changetickercontent(){
if (crosstick.filters && crosstick.filters.length>0)
crosstick.filters[0].Apply()
crosstick.innerHTML=tickercontents[currentmessage]
if (crosstick.filters && crosstick.filters.length>0)
crosstick.filters[0].Play()
currentmessage=(currentmessage==tickercontents.length-1)? currentmessage=0 : currentmessage+1
var filterduration=(crosstick.filters&&crosstick.filters.length>0)? crosstick.filters[0].duration*1000 : 0
setTimeout("changetickercontent()",tickdelay+filterduration)
}

function beginticker(){
if (persistlastviewedmsg && get_cookie("lastmsgnum")!="")
revivelastmsg()
crosstick=document.getElementById? document.getElementById("memoryticker") : document.all.memoryticker
changetickercontent()
}

function get_cookie(Name) {
var search = Name + "="
var returnvalue = ""
if (document.cookie.length > 0) {
offset = document.cookie.indexOf(search)
if (offset != -1) {
offset += search.length
end = document.cookie.indexOf(";", offset)
if (end == -1)
end = document.cookie.length;
returnvalue=unescape(document.cookie.substring(offset, end))
}
}
return returnvalue;
}

function savelastmsg(){
document.cookie="lastmsgnum="+currentmessage
}

function revivelastmsg(){
currentmessage=parseInt(get_cookie("lastmsgnum"))
currentmessage=(currentmessage==0)? tickercontents.length-1 : currentmessage-1
}

if (persistlastviewedmsg && persistmsgbehavior=="onload")
window.onunload=savelastmsg

if (document.all||document.getElementById)
document.write('<div id="memoryticker" '+divonclick+'></div>')
if (window.addEventListener)
window.addEventListener("load", beginticker, false)
else if (window.attachEvent)
window.attachEvent("onload", beginticker)
else if (document.all || document.getElementById)
window.onload=beginticker

</script>
Peter SMedlem sedan dec. 20025 484 inlägg
#4

I Internet Explorer får jag inga felmeddelanden med den koden.

WebbisNetMedlem sedan feb. 20032 182 inlägg
#5

Jag ser iaf undefined trots att jag inte ser ngt fel i koden eller den exekverade koden.

Fält Typ Attribut Null Standard Extra Åtgärd
mCounter int(11) Nej auto_increment
userID int(11) Ja 0
username varchar(50) Ja NULL
message longtext Ja NULL
messageTime varchar(50) Ja NULL
messageDate varchar(50) Ja NULL
Visar tinyint(1) Ja NULL

  1 1 Webbisen webbis04 medd testar 01:20:03 2005-11-14 0 
  2 1 Webbisen webbis04 medd Välkomna till lajven på webbisen 01:21:50 2005-11-14 1 
  3 1 Webbisen webbis04 medd test 01:24:32 2005-11-14 1 
  4 1 Webbisen webbis04 medd åäö 01:32:06 2005-11-14 1
Peter SMedlem sedan dec. 20025 484 inlägg
#6

Men om du tar koden du postade senast och klistrar in den i ett nytt dokument; får du då något felmeddelande? Om inte, vad är då för kod som felet uppstår av?

WebbisNetMedlem sedan feb. 20032 182 inlägg
#7

det enda jag gjorde från förra gången då det funkade var att jag bytte från access till mysql och tömde db på alla data och la in nya

ska testa med det du skrev

WebbisNetMedlem sedan feb. 20032 182 inlägg
#8

funkar här med när jag klistrar in den exekverade koden, frågan är då varför jag får undefined

utskrift av sql-satsen

INSERT INTO tblUsers_messagescroll(userID, username, message, messageTime, messageDate, Visar) VALUES(1,'Webbisen','webbis04 medd nytt test','15:07:37','2005-11-14', 1)
Peter SMedlem sedan dec. 20025 484 inlägg
#9

Ligger den där koden innanför <script>-taggar? Om inte, är det inget fel på den.

Kan du lägga upp sidan online, så att man kan ta en titt?

WebbisNetMedlem sedan feb. 20032 182 inlägg
#10

logga in med Demo och Demo på https://www.webbisen.com , det är lajven under menyn

WebbisNetMedlem sedan feb. 20032 182 inlägg
#11

om du klickar på Lajvinfo så ser du att alla meddelanden visas korrekt, det är bara där scriptet körs som jag får felet

Peter SMedlem sedan dec. 20025 484 inlägg
#12

Jag upplever inget JS-fel. Däremot får jag på index.asp:

Microsoft OLE DB Provider for ODBC Drivers error '80040e14'

[MySQL][ODBC 3.51 Driver][mysqld-4.0.25-max]You have an error in your SQL syntax. Check the manual that corresponds to your MySQL server version for the right syntax to use near '' at line 1

/index.asp, line 17

WebbisNetMedlem sedan feb. 20032 182 inlägg
#13

NU funkar det helt plösligt i IE med Demokontot, men inte i Avant browser och funkar i FF2

Genererad på 378 ms · cache AV · v20260730165559-full.f96bc7eb