352
צפיות
צפיות
76
תשובות
תשובות
אממ יש לי שתי שאלות קטנות..
1.סיימתי לבנות את הפורום והכל אני רק רוצה שנגיד משהו כותב את התוכן של התגובת כל מספר מסוים של אותיות זה ירד שורה למטה..
2.איך אני יכול לעשות שנגיד מישהו שולח הודעה אחרונה אז היא תיהיה ראשונה..
תודה מראש..
76 תשובות
בקשר לשאלתך הראשונה
לא ממש הבנתי אותך.
אולי הכוונה היא שהתוצאה תהיה זהה למה שנכתב בטופס הוספת ההודעה?
כלומר, אם המשתמש כתב 4 מילים וירד שורה ב-TEXTAREA אז זה יהיה כך בעמוד הצגת ההודעות.
אם כך אז תקרא את המאמר הבא:
בנוגע לשאלתך השנייה, תבצע סידור לפי התאריך האחרון בסדר יורד:
…order by LastDate DESC
LastDate – שדה התאריך שנמצא בטבלה שלך.
עברתי על המאמר תגיד לי אם זה אמור
להיות ככה..
body = Replace(body,chr(13),"<br>")
האם זה נכון לרשום את זה ככה?
כן, בדיוק כך. זה יבצע מעברי שורה
כמו שבוצעו בעת כתיבת ההודעה.
תוכל להגיד לי לאיפה אני צריך להכניס
את השורה הזאת בקוד שלי?
response.write"<tr>" & VbLf
response.write"<td bgcolor=white align=center>כותרת:</td>" & VbLf
response.write"</tr>" & VbLf
response.write"<tr>" & VbLf
response.write"<td bgcolor=blue align=center>" & replyrs.fields("title") & "</td>" & VbLf
response.write"</tr>" & VbLf
response.write"<tr>" & VbLf
response.write"<td bgcolor=white align=center>תוכן ההודעה</td>" & VbLf
response.write"</tr>" & VbLf
response.write"<tr>" & VbLf
response.write"<td bgcolor=blue align=center>" & replyrs.fields("body") & "</td>" & VbLf
response.write"</tr>" & VbLf
replyrs.movenext()
Wend
response.write"</table>" & VbLf
%>
אתה צריך להחליף את השורה
הזאת:
response.write"<td bgcolor=blue align=center>" & replyrs.fields("body") & "</td>" & VbLf
בזאת:
response.write"<td bgcolor=blue align=center>" & Replace(replyrs.fields("body"),chr(13),"<br>") & "</td>" & vbcrlf
זה אמור לעבוד.
הוא רושם לי הודעת שגיאה
error '80020009'
Exception occurred.
/zombie123/forum/view_topic.asp, line 42
42 זאת השורה שאמרת לי להחליף..
אתה צריך לבדוק שהערך
של replyrs.fields("body") לא ריק.
לא הבנתי אותך מזתומרת לבדוק?
ז"א
if Len(replyrs.fields("body")) then ..
אופס, תיקון:
if Len(replyrs.fields("body"))=0 then …
צריך להוסיף את השורה הזאת בראש הדף?
אתה צריך להמשיך את השורה
אחרי ה-then
ותשים אותה קצת לפני איפה שאתה שולף את השדה
אני רואה שאין לך הרבה ידע ב-asp
תעבור על המדריך, תקרא ותפנים!
VBS ו-ASP
zombie – אני פשוט עוצר את עצמי מלמחוק לך שוב.
למה מה עשיתי עכשיו?
חזרתי על המדריך 10000 פעמים ואני לא
מבין אותו כל כך…
(vbs)
אז איך אתה מצפה להבין את מה שאנו
אומרים?
אני מבין בVBS בסדר אבל
אני לא מבין את התנאים של VBS…
זה די קל
זה הולך ככה:
אם אמת אז
תעשה דברים מסויימים
אם שקר
תעשה דברים אחרים
IF (אם) <condition>(ערך שכביכול אמת) THEN
דברים שקורים אם זה אמת
ELSE (אם שקר)
דברים שקורים אם זה שקר
END IF (סיים תנאי)
אז בקיצור אני צריך לרשום תנאי דומה
בקוד שלי?
דרך אגב
תודה ניר על ההסבר עכשיו אני בערך הבנתי את זה..
רשמתי את התנאי הזה
תגידו לי אם נכון לרשום ככה
if Len(replyrs.fields("body"))=0 then
response.write"<tr>"
response.write"<td bgcolor=blue align=center>" & Replace(replyrs.fields("body"),chr(13),"<br>") & "</td>" & vblf
response.write"</tr>"
else
nada="אין תוכן להודעה זאת"
end if
זומבי
אתה לא חיב כל הזמן לרשום את הריפלייס פשוט תעשה משתנה שמכיל בתוכו את המידע כבר אחרי הריפלייס ואחרי כל המניפולציות שעשית
ואז תציג אותו זה יותר מקל עליך ….
לא הבנתי אותך אחי..
זה רק הצעת ייעול
נכון כשאתה רושם
Replace(replyrs.fields("body"),chr(13),"<br>")
אז במקום כל זה אתה רושם
StrRep=Replace(replyrs.fields("body"),chr(13),"<br>")
ואז במקום לרשום את כל השורה הארוכה הזאת אתה רושם
StrRep
אני אסביר לך יותר קל
נכון באלגברה אפשר להשוות משתנים גיד X=Y ואז במקום ה X לרשום Y במשוואה
(חחחחח מאיפה הבאתי את הדוגמא הזאת)
זה רושם לי שגיאה..
Microsoft VBScript runtime error '800a000d'
Type mismatch
/zombie123/forum/view_topic.asp, line 42
אממ סליחה בעצם זה רושם את זה
error '80020009'
Exception occurred.
/zombie123/forum/view_topic.asp, line 25
בבקשה משהו…
התנאי שכתבת מעלה לא נכון
הוא הפוך.
כתבת משפט תנאי של "אם מספר התווים של ההודעה שווים לאפס אז תציג הודעה, אחרת תציג פלט מתאים".
וזה אמור להיות ההיפך, כלומר: "אם מספר התווים בהודעה שווים לאפס אז הצג הודעת פלט מתאימה, אחרת הדפס תוכן הודעה".
רשמתי ככה
וזה עדיין לא נכון..
if Len(replyrs.fields("body"))=0 then
nada="אין תוכן להודעה הזאת"
else
response.write"<tr>"
response.write"<td bgcolor=blue align=center>" & Replace(replyrs.fields("body"),chr(13),"<br>") & "</td>" & vblf
response.write"</tr>"
end if
השגיאה
Microsoft VBScript runtime error '800a000d'
Type mismatch
/zombie123/forum/view_topic.asp, line 41
שורה 41
if Len(replyrs.fields("body"))=0 then
תודה מראש
תראה קצת יותר קוד
בערך שתי שורות מלמעלה ומטה
כי לפעמים התוכנה אומרת שגיאה בשורה 2 והשגיאה האמיתי נמצאת בשורה 1
יענו שורה לפני..
הנה
response.write"<tr>"
response.write"<td bgcolor=white align=center>תוכן ההודעה</td>" & vblf
response.write"</tr>"
if Len(replyrs.fields("body"))=0 then
nada="אין תוכן להודעה הזאת"
else
response.write"<tr>"
response.write"<td bgcolor=blue align=center>" & Replace(replyrs.fields("body"),chr(13),"<br>") & "</td>" & vblf
response.write"</tr>"
end if
while not replyrs.EOF
response.write"<tr>" & VbLf
response.write"<td bgcolor=white align=center>כותרת:</td>" & VbLf
response.write"</tr>" & VbLf
כל מה שרשמתי בעיברית זה שנה למספרים
הצלחתי לסדר את הבעיה תודה בכל
מקרה.!
יש לי עוד שאלה קטנה
איך אני יכול לתת פקודה שתספור כמה הודעות וכמה תגובות יש בפורום מסוים?
תודה מראש
איך הפורום שלך נראה ?
אם זה פורום רקורסיבי
אז תעשה רקורדקאונט
rs.recordcount
זה סופר את כל הרשומות בטבלה
אם יש לך שתי טבלאות שונות (אחת להודעות ואחת לתגובות) אז זה כבר יותר מסובך
ועוד משהו אם אתה משתמש ברקורדקאונט אתה חייב להגדיר מפתח ככה
rs.open "your query " , conn,3,3
כך:
SELECT COUNT(rootId)
FROM forumTbl
GROUP BY rootId
תתאים את זה לטבלה שלך
למעלה זה מס' הודעות
לתגובות נראה לי זה כך:
SELECT COUNT(id) AS cntId
FROM forumTbl
WHERE parentId<>0
שיעשה את זה בview במסד
אני רוצה שזה יהיה בתוך תא בטבלה ככה
אני עושה (כמו שניר אמר)?
כאילו רושם את זה בתוך התא בטבלה?
שיעשה את זה באמת ב-VIEW במסד
ותיקון למס' ההודעות (בטעות עשיתי תגובות פר הודעה)
SELECT COUNT(id) AS cntId
FROM forumTbl
WHERE parentId=0
אלו בסה"כ השאילתות שאתה צריך לעשות
בהתאם למסד שלך
ניר תשמע שניה
אני עושה פורום טבלאות אז איך אני יכול להכניס את הנתונים לטבלה ?
תחשוב
משהו יכול להגיד לי מה לא בסדר
בשאילתה שלי?
con.execute "insert into register(username,[password],fname,lname,icq,messanger,email,icon,hatima) values('" & username & "','" & password & "','" & fname & "','" & lname & "','" & icq & "','" & messanger & "','" & email & "','" & icon & "','" & hatima & "',)"
השגיאה היא
Microsoft OLE DB Provider for ODBC Drivers error '80040e14'
[Microsoft][ODBC Microsoft Access Driver] Syntax error in INSERT INTO statement.
/zombie123/tforum/register.asp, line 29
בסוף השאילתא יש לך פסיק מיותר
ולהבא רצוי שתדפיס את השאילתא ותראה לנו את הפלט כך יהיה לנו יותר קל לכוון אותך
תודה.!!
איך אני יכול לעשות שמשתמש חדש נרשם
אז הוא יוכל להשים את הכתובת של החתימה שלו?
אני ירשום את זה יותר ברור
אני עשיתי בטופס הרשמה שיכניסו את הכתובת של החתימה עכשיו אני רוצה בדף שמציג את ההודעה שיציג את התמונה שהוא שם..
תודה מראש…!…
מה ז"א הכתובת של החתימה?!
נגיד
שהוא העלה את החתימה שלו לאיזה שרת ורושם את הכתובת שלה נגיד:
http://www.host.com/icon.jpg
אז איך אני יכול להציג את
החתימה שלו בעמוד שמציג את ההודעה?
תודה מראש
אתה שולף את הכתובת לתוך תג IMG
יש לי שאלה בקשר להתקנת IIS
אני נכנסתי לפי המאמר להוספההסרה הכנסתי את הדיסק ואז אני מסמן שזה יתקין את הISS הוא טוען קצת ואז אומר להכניס את הדיסק והדיסק כבר בפנים..
תודה לעוזרים
זה כבר לא קשור ל- IIS, אלא ל- WINDOWS והבאגים שלו
יש לי שאלה ….
איך אני יכול לעשות הוספת סמיילים בפורום שלי?
תודה מראש..
בבקשה משהו
אם לא הבנת עד עכשיו
אז פה אין קודים מוכנים. ולפני שאני מוחק לך את כל השרשור בפעם השלישית או הרביעית, תרסן מהר את ההתנהגות שלך. ובפעם הבאה שתחסם אני אבקש פשוט לחסום אותך.
תפסיק עם זה.
פה אין קודים מוכנים
טוב אז אני יראה את הקוד שלי
ותגידו לי מה לא בסדר..
אני עשיתי את זה כאילו רק זה מציג לי את הגוד של הסמיילי ולא את הסמיילי עצמו הנה הקוד שבטופס ששולחים את ההודעה
ההודעה:
<textarea name="body" style="border: 1px solid #000000" rows="10" cols="50"
id=t1></textarea><br>
<script language="JavaScript">
function addTextToInput(obj,textAdd)
{
var objElement = document.getElementById(obj);
objElement.focus();
document.selection.createRange().text = textAdd;
}
</script>
הסופת סמיילים:
<img src=020.gif onclick="addTextToInput('t1','[:)]')">
וזה הקוד בעמוד שמציג את ההודעה
function msgEdit(str)
str = replace(str,"[(:-$]","<img src=""angry.gif"">")
msgEdit = str
end function
ושמתי את זה בתא של התוכן הודעה
msgEdit(body)
אני מקווה שעכשיו זה בסדר ולא תמחק תהודעה שלי
גוד=קוד
אופס תיקון לקוד שמציג את ההודעה
function msgEdit(str)
str = replace(str,"[:)]","<img src=""020.gif"">")
msgEdit = str
end function
תשתמש ב replace
תחליף לפני ההכנסה למסד נניח את :-) (אל תעתיק מפה כי יש תו שקוף) לקוד התמונה, נניח:
<img src="images/pic01.jpg" border="0">
אוריקס אתה יכול בבקשה
למחוק את ההודעה הזאת?
טוב לא משנה יש לי שאלה באמת פשוטה.!
יש לי במסד נתונים שדה של כןלא איך אני יכול להכניס נתונים שזה יסמן את זה כאילו בוי (V) תודה מראש..
לא ממש הבנתי אותך
אבל שדה כן/לא הוא שדה בחירה.
כלומר כמו בשדה HTML – שדה CHECKBOX (מרובע).
אם הערך של השדה הוא כן אז הוא מסומן בוי (V) ואם הוא לא אז לא מסומן.
אותו דבר עבור אם זה TRUE/FALSE.
לא יודע אם ממש הבנתי אותך.
תראה..
נגיד אני רוצה שבמסד נתונים זה יסומן בוי (ע"פ פקודה שאני יתן בדף HTML)
אז בקיצור אני לא יודע איך לעשות את זה ..
מקווה שהבנת
תודה מראש בילד.!
אתה צריך לשלוח טופס (לדוגמא)
שהטופס שולח ערכי TRUE או FALSE ואותם אתה מכניס/מעדכן לשדה
אתה יכול בבקשה לתת לי דוגמא?
דרך אגב תוכל אחרי זה לבדוק את הקוד של הסמיילים שלי למה הוא לא טוב
(כמה הודעות למעלה )
הנה התשובות
1. אתה מכניס ערך TRUE/FALSE, לדוגמא:
rs("bla") = True
זה בשימוש עם ADO ולא SQL.
2. כנס למאמר שלי על
ותראה בעמוד דוגמא להחלפת ערכים אפשרות הוספת עיצוב.זה על אותו בסיס כמו שאתה צריך. אתה יכול לשפר את הקוד ולהתאימו לצרכיך.
מאוד פשוט.
מקווה שעזרתי.
כתבתי לך מה אתה צריך לעשות קודים אני לא אתן
תודהר
אופס בטעות שלח לי את ההודעה בילד
תיכנס שניה אממ יש לי בעיה בהצגת הסמיילים שים לב לקודים שלי ותגיד לי מה לא טוב בהצגת ההודעה כי אין לי מושג מזה
הנה הקוד שבטופס ששולחים את ההודעה
ההודעה:
<textarea name="body" style="border: 1px solid #000000" rows="10" cols="50"
id=t1></textarea><br>
<script language="JavaScript">
function addTextToInput(obj,textAdd)
{
var objElement = document.getElementById(obj);
objElement.focus();
document.selection.createRange().text = textAdd;
}
</script>
הסופת סמיילים:
<img src=020.gif onclick="addTextToInput('t1','[:)]')">
וזה הקוד בעמוד שמציג את ההודעה
function msgEdit(str)
str = replace(str,"[(:-$]","<img src=""angry.gif"">")
msgEdit = str
end function
ושמתי את זה בתא של התוכן הודעה
msgEdit(body)
תודה מראש
דרך אגב הבעיה היא שזה מציג לי את
הקוד של הסמיילי ולא הת הסמיילי עצמו דרך אגב תיקון לקוד שרשמתי בהודעה השניה לקוד שמציג את ההודעה
function msgEdit(str)
str = replace(str,"[:)]","<img src=""020.gif"">")
msgEdit = str
end function