640
צפיות
צפיות
35
תשובות
תשובות
בעיה בבניית פורום רקורסיבי
השגיאה:
Microsoft VBScript compilation error '800a0401'
Expected end of statement
/masterPlus/forums/forum.asp, line 104
cntRec = cint(rs1.fields("total"));
———————————-^
שורה 101:
cntRec = cint(rs1.fields("total"));
חלק מהקוד (השורה נמצאת בו):
<%
paggingQuery = "SELECT COUNT(fixedForum.rootID) as total FROM fixedForum"
rs1.Open paggingQuery, oConn
cntRec = cint(rs1.fields("total"));
rs.Close
%>
מה הבעיה? (ניר, הקוד מהמאמר שלך)
תודה
35 תשובות
תוריד את ה;
עכשיו השגיאה היא
Microsoft JET Database Engine error '80040e14'
Syntax error in FROM clause.
/masterPlus/forums/forum.asp, line 59
שורה 59
rs.Open query, Conn
נסה את זה:
paggingQuery = "SELECT COUNT(fixedForum.rootID) as [total] FROM fixedForum"
תודה אבל זה לא עובד
שאלה שקשורה
גם לי יש את הבעיה הזאת אבל יש לי בעיה יותר גדולה
איך אני יוצר את השאילתה ?
הרי נכנסתי לשאילתות עשיתי יצירת חדשה
העברתי את כל העמודות ולחצתי על SQL העתקתי כל מה שהיה רשום וזה הציג לי שגיאה
שמשהו שם לא תואם !
ניר תוכל אולי להביא לי תמונה או משהו כזה מה לכתוב בשאילתה
ואם תוכל גם לענות על השאלה הקודמת של תומר גם אני נקתעתי בה !
תודה מראש נועם
תגדיר "לא עובד"
אותה השגיאה שאמרתי קודם
Microsoft JET Database Engine error '80040e14'
Syntax error in FROM clause.
/masterPlus/forums/forum.asp, line 59
שורה 59
rs.Open query, Conn
חלק מהקוד ששורה 59 נמצאת בו
query ="SELECT forum.fId, forum.id, forum.parentId, forum.subjet,forum.message,forum.rootId" & _
" FROM forum" &_
"WHERE fId=" & request.querystring("fId") & "forum.rootId in ("&subQuery&")" &_
" ORDER BY forum.id"
SET rs = Server.CreateObject("ADODB.Recordset")
rs.Open query, Conn
cntFields = rs.fields.count ' count of fields that we selected
strRecArray = rs.getString(2,-1, ",", ",")
rs.Close
Set rs = Nothing
סידרתי את זה אבל יש לי שאלה אחרת
ולתשובה בשבילך הוא רשם
SUBJECT בלי C תשנה את זה וזה יפעל לך
ולשאלתי
הבכול הסתדר אבל כשניסיתי ללחוץ כדי שההודעה תיפתח
זה הביא לי שגיאה !
"נדרש אובייקט"
והוא לא רושם שורה!
עוד משהו שהוא מציג לי רק את הרשומה הראשונה !
איך אפשר לסדר את זה ??
תודה מראש נועם
נסה את זה:
query ="SELECT forum.fId, forum.id, forum.parentId, forum.subjet,forum.message,forum.rootId" & _
" FROM forum" &_
" WHERE fId=" & request.querystring("fId") & " forum.rootId in ("&subQuery&")" &_
" ORDER BY forum.id"
SET rs = Server.CreateObject("ADODB.Recordset")
rs.Open query, Conn
cntFields = rs.fields.count ' count of fields that we selected
strRecArray = rs.getString(2,-1, ",", ",")
rs.Close
Set rs = Nothing
אוריקס אל תטעה אותו
מה שעשית זה בסדר גמור רק החלק הזה
forum.subjet
לא נכון
תעשה כך:
"WHERE fId=" & request.querystring("fId") & " and forum.rootId in ("&subQuery&")" &_
בקשר למאמר
לפני כמה זמן הפנו את תשומת ליבי שיש טעויות בקודים
כתבתי קובץ תיקון ושלחתי אותו לאיציק(SETUP) ולמנהלי האתר(הילדה והפשוי)
הילדה הייתה אמורה לתקן את המאמר ביום שבת האחרון אך לא הזדמן לה לתקנו. (מקווה שזה יעשה בשבת הקרובה)
בקשר לתיקון המאמר ב-SETUP אני צריך לדבר עם איציק ועד עכשיו לא יצא לי
קובץ התיקון מצורף (בקוד) מבקש שלא תעשו העתק-הדבק אלא תראו איפה היו הטעויות
??
אוקיי הסתדר עכשיו לשאלה אחרת
תיקנתי את הטעויות שהיו והכול פועל עד שאני צריך להוסיף תגובה
אני לוחץ הוסף תגובה וכתוב לי למעלה ADDMESS.asp?ID=
וזהו הנה הקוד של "הוסף תגובה"
תגידו לי איפה הטעות !
document.write("<a href="addMess.asp?id="" + recArray[index] + "&rootId=" + recArray[index+4] + "" >הוסף תגובה</a>")
ועוד שאלה איך נועצים ??
צודק… איך לא חשבנו על זה
רק שהוא צריך גם רווח בין המילים, אין רווח בין ה WHERE ל FROM.
טוב…
document.write("<a href="addMess.asp?id="" + recArray[index] + "&rootId=" + recArray[index+4] + "" >הוסף תגובה</a>")
הופך לזה
document.write("<a href="addMess.asp?id=" + recArray[index] + "&rootId=" + recArray[index+4] + "" >הוסף תגובה</a>")
נעיצה זה groupDate גדול מהתאריך של היום ובכך גם נועצים וגם אפשר לעשות להגביל את זמן הנעיצה
אוקיי עכשיו הוא אומר לי
קבוע מחרוזת לא גמור !
השגיאה נמצאת פה
<select name="NextPre" onChange="location.href='forum.asp?id='+NextPre.value">
<script type="text/javascript">
var total, recForPage, pageCount
total = Math.round(<% =cntRec %>)
recForPage = 15
pageCount = Math.round(total/recForPage)
if (pageCount<=0)
pageCount=1;
for (var i=1;i<=pageCount;i++)
document.write("<option value=""+i+"">"+i+"</option>");
</script>
</select>
אני עושה מערכת פורומים
אז אני מנסה לשנות את השאילתות שישלפו רק מהID של הפורום הספציפי
השאלה שלי היא איך אני שם שתי התניות בWHERE?
אתה לא עושה שתיים
אתה משתמש בand לדוגמא
select … where forumid = 1 and 'המשך השאילתה
מה זו הטעות הזאת ?
"קבוע מחרוזת לא גמור"
טוב…
יש לך את השגיאה באנגלית?
אני לא ממש מוצא את השגיאה בקוד …
נסה את השורה הזאת:
document.write("<option value="""+i+""">"+i+"</option>");
לאא….
אני התבלבלתי הטעות היתה בשורה 3 תווים 87
ואני אמרתי שהטעות היא בשורה 87 !
אבל אני יכול להגיד לך בוודאות שהטעות היא ב JS
צירפתי תמונה כדי שתיראה !
והקוד הוא כמעט אותו קוד כמו שלך !
ומהי שורה3 ?
שורה שלא קשורה
שורה שלוש היא ההכרזה על הקונקשיין !
Set oConn = Server.CreateObject("ADODB.Connection")
ויש לי עוד שאלה השאילתה הזאת נכונה ?
SELECT forum.ID, forum.parentId, forum.subject, forum.message, forum.rootId, forum.fid FROM forum WHERE forum.fid= 1 AND forum.rootID in ("&subQuery&") ORDER BY forum.id , forum.groupDate"
בסך הכול הוספתי כמה דברים בשביל מערכת פורומים !
שמת לב למה שאתה כותב?!
אתה פותח גרשים כותב קצת סוגר את הגרשיים ומכניס את התו ""
זה יניב לו שגיאה הרצה של JS
שורה 3 ב-JS…
הנה
הבאתי את כל החלק הראשון
<script type="text/javascript">
var recArray = "<% =strRecArray %>"
recArray = recArray.substr(0, (recArray.length-1))
recArray = recArray.split(",")
var cntFields = new Number(<% =cntFields %>);
for (var i=0;i<recArray.length;i+=cntFields){
if (recArray[i+1]==0){
showMessage(i);
}
}
אני בונה מגזין
ויש לי כתבות, לכל תגובה יש תגובות, ויש לי בעיה.
השגיאה
Microsoft JET Database Engine error '80040e14'
Syntax error (missing operator) in query expression 'id='.
/masterPlus/magazine/showArticle.asp, line 39
שורה 39 (שלדעתי אין לה קשר)
rs.Open sql,conn
חלק מהקוד
<%
dim conn
set conn=server.createobject("adodb.connection")
dim ConnString
ConnString = "Provider=Microsoft.Jet.OLEDB.4.0; Data Source=" &_
Server.MapPath("magazine.mdb") & ";"
conn.Open connString
dim rs,sql
set rs=server.CreateObject("adodb.recordset")
sql="select * from articles where id=" & request.querystring("Id")
rs.Open sql,conn
%>
<%do while not rs.eof%>
<b style="font-size:13pt"><%=rs("title")%></b><br>
<b><%=rs("shortDes")%></b>
<br>
<%=rs("body")%><br>
<b>מאת:</b> <%=rs("author")%>.<br>
<b>תאריך פרסום:</b> <%=rs("Date")%>.
<br><br>
<%rs.movenext
loop%>
תודה
לכל כתבה יש תגובות*
נסו להיכנס לפה
הכל יפעל, אחר כך נסו להוסיף תגובה ותראו את השגיאה
תשובה
תעשה דבר כזה
ID = cint(Request.QueryString("ID"))
ובקריאה תעשה ככה
SQ = "Select * from tbl where ID = " & ID
rs.Open SQ, Conn , 3 , 3
שמע
תפתח את הקוד מקור. לא של הקובץ עצמו אלא את הקובץ בעיבודו הסופי ותבדוק שאין לך גרשיים (") שהורסים את המחרוזת של ה-GETSTRING
תתעלם ממה שכתבתי לך.
חשבתי שאתה מנסה לעשות משהו אחר.
לא הבנתי ניר !
הנה הקוד מקור של הדף שמציג את ההודעות !
תוכל להגיד לי איפה הטעות ??
<script type="text/javascript">
var recArray = "2,0,1,1,2,1,4,2,2,2,4,1,13,0,3,3,13,1,14,0,123,123,14,1,15,4,נועם,נעופ
,4,1,16,4,נועם,נעו,4,1,17,4,ניסוי,הצליח,4,1,18,4,גדכ,שדגעכ,4,1,19,4,גכ,כ,4,1,20,0,123,123,20,1,21,0,123,123,21,1,"
recArray = recArray.substr(0, (recArray.length-1))
recArray = recArray.split(",")
var cntFields = new Number(6);
for (var i=0;i<recArray.length;i+=cntFields){
if (recArray[i+1]==0){
showMessage(i);
}
}
תודה רבה מראש
נועם צברי