478
צפיות
צפיות
86
תשובות
תשובות
שאלה בasp
שלום, אני מוסיף עכשיו asp לאתר אותו אני בונה.
אני מאחסן את האתר ב-brinkster, שתומך בasp.
רשמתי קוד פשוט מאוד שמשלב asp אבל כשהוא מציג משהו בעברית זה יוצא בכתב משונה, למרות שהגדרתי גופן.
הנה הקוד:
<html dir="rtl">
<head>
<title> כככ </title>
</head>
<body>
<font face="David">
<%
response.write "<h1>את/ה רשומ/ה כבר</h1>"
%>
<br>
hhככ
</font>
</body>
</html>
האם ניתן לסדר את זה?
או שעדיף לעבור שרת אחסון?
בתודה מראש
דניאל
86 תשובות
הבעיה מוכרת.
אין תמיכה בעברית מאז שהם שינו את כל האתר שלהם.
אני ממליץ על DomainDlx שהוא הרבה יותר טוב ולא תהיה לך בעיה עם הרשאות מסד נתונים כמו בברינקסטר ותעבורה נמוכה מאוד.
תודה
אני רוצה ליצור טבלה, אני משתמש בקוד הזה:
<%
Set oConn = Server.CreateObject("ADODB.Connection")
oConn.Open "Driver={Microsoft Text Driver (*.txt; *.csv)};" & _
"Dbq=http://i.domaindlx.com/benyair/;" & _
"Extensions=asc,csv,tab,txt;" & _
"Persist Security Info=False"
oConn.execute "CREATE TABLE bayWatch.txt" &_
"(" &_
"firstName CHAR, " &_
"lastName CHAR, " &_
"nickName CHAR" &_
")"
oConn.Close
Set oConn = Nothing
%>
<html dir="rtl">
<head>
<title></title>
</head>
<body>
מסד נתונים מסוג text הוגדר בהצלחה
</body>
</html>
ואני מקבל הודעת שגיעה:
Microsoft OLE DB Provider for ODBC Drivers error '80004005'
[Microsoft][ODBC Text Driver]General error Unable to open registry key 'Temporary (volatile) Jet DSN for process 0x544 Thread 0x838 DBC 0xab16784 Text'.
/benyair/create.asp, line 4
מה לא בסדר?
(אני חדש בasp)
תודה מראש
תפעיל את זה דרך האתר
oConn.Open "Driver={Microsoft Text Driver (*.txt; *.csv)};" & _
"Dbq=" & Server.MapPath("benyair") & ";" & _
"Extensions=asc,csv,tab,txt;" & _
"Persist Security Info=False"
הסבר.
כשפותחים connection צריך לכתוב את כל ה-PATH עד לקובץ הנוכחי שנמצא בשרת
(נגיד c:applicationdbfile.txt)
Server.MapPath מאפשר לך לכתוב כתובת יחסית והשיטה לבד תמצא לך את כל הדרך מה-HARD-DISK עד הקובץ המבוקש
אתה מתכוון…
לעשות קובץ asp כזה, ולהריץ אותו על השרת?
<%
Set oConn = Server.CreateObject("ADODB.Connection")
oConn.Open "Driver={Microsoft Text Driver (*.txt; *.csv)};" & _
"Dbq=" & Server.MapPath("benyair") & ";" & _
"Extensions=asc,csv,tab,txt;" & _
"Persist Security Info=False"
oConn.execute "CREATE TABLE bayWatch.txt" &_
"(" &_
"firstName CHAR, " &_
"lastName CHAR, " &_
"nickName CHAR" &_
")"
oConn.Close
Set oConn = Nothing
%>
<html dir="rtl">
<head>
<title></title>
</head>
<body>
מסד נתונים מסוג text הוגדר בהצלחה
</body>
</html>
עכשיו קראתי את ההסבר…
ואם הבנתי נכון אז לא צריך להיות שום דבר בגרשיים, בגלל שהקובץ asp צריך להיות בתיקיה של הטבלה..
הסתדרתי תודה 🙂
איזה סוג משתנה צריך בשביל להכניס עליו טקסט (עם כמה שורות)?
והאם האתר domaindlx תומך גם בטבלאות אקסס?
תודה מראש
מסוג טקסט
dim text: text="some<br />line"
dim text1: text1="Some"&vbCrLf&"line"
וכם הוא תומך באקסס (כתוב את זה בעמוד הראשי שלו)
תודה
זה רשום בדף הראשי…
אני חיפשתי את זה בעמודים הפנימיים |טמבל|
אני מקבל את ההודעת שגיעה הבאה:
Microsoft OLE DB Provider for ODBC Drivers error '80040e4d'
[Microsoft][ODBC Text Driver] Too many client tasks.
/benyair/board/create_table.asp, line 3
מה זה אומר?
ייתכן והסיבה היא בגלל שאקסס מאפשר
רק חמישה חיבורים בו-זמנית.
סגור את כל החיבורים/רקורדסטים כמה שיותר מוקדם.
בנוסף, שמציגים שגיאה מציגים גם את הקוד שגורם לשגיאה להופיע.
התכוות לקובץ טקסט כמסד?!
כי זה מה שהוא משתמש ואקסס יכול לעבור בקלות את 5 החיבורים בו זמנית
מממ
זה החיבור היחיד שפתוח…
יכול להיות שהם מגבילים אותי במספר החיבורים ביום?
איפה אתה מתאכסן?
קובץ טקסט הוא לא
ראוי להיות מסד נתונים מהסיבה הפשוטה שאפשר רק להכניס ואי אפשר לעדכן
תעבור לאקסס
אני יודע את זה…
חשבתי להתחיל לעבוד עם טקסט, ואז להחליף לאקסס, אבל עכשיו אני יעשה מהתחלה באקסס
עכשיו אני עובד עם אקסס…
הרבה יותר נוח, אבל בכל זאת יש לי 2 בעיות
1. בטופס הרשמה, באחד השדות שצריך להזין יש גרש וגרשים, וכאשר אני שולח הוא עושה לי שגיעה בגלל זה. יש דרך לפתור את זה?
2. בטופס הרשמה יש שדה textarea איך אני עושה שמתי שאני מדפיס את המשתנה הזה אני יראה את האנטרים (עכשיו אני רואה את כל השורות בשורה אחת, עם רווחים)
בתודה מראש
דניאל
בדיוק עכשיו שלחתי מאמר לצוות האתר
בנוגע לפונקצית Replace שעוזרת לטפל בבעיות אלו.
אני מקווה שהמאמר יעלה בימים הקרובים ותוכל ללמוד יותר על הפונקציה, לעומק.
בינתיים, הנה הקוד של הפונקציה שיבצע את הפתרון של הגרש וגרשיים:
str = Request.Form("field")
str = Replace(str,"'","´")
str = Replace(str,"""",""")
שורת הקוד שתבצע את המעברי שורות כפי שכתבת (as is):
str = Replace(str,chr(13),"<br>")
מקווה שהסברתי את השימוש והעיקרון היטב.
תיקון..שכחתי שהפורום מתרגם את הערך
האסקי לצורה השלמה.
הנה הקוד הראשון:
str = Request.Form("field")
str = Replace(str,"'","& acute;")
str = Replace(str,"""","& quot;")
שמתי מרווח בין הייצוג האסקי לבין הסימן & על מנת שהפורום לא יתרגם זאת לתוצאה השלמה כמו HTML רגיל.
כמובן שאתה מוריד את המרווח ביניהם.
התכוונת יוניקוד?!
ASCII זה &#מספר
כתבתי אסקי? בעע..התכוונתי לייצוג

בתווי HTML שמורים.
אני רוצה לוודא שהבנתי…
אני שם את הקוד הזה בדף asp שקולט את הטופס, ושמוסיף את הנתונים לטבלה.
והמשתנה שאני צריך להוסיף לטבלה הוא str?
בדוגמא רק הצגתי משתנה בשם str
בעמוד שלך אתה יכול לשנות את המשתנה לאיזה שם שתרצה.
רק הראתי את העיקרון השימוש בפונקציה.
תודה רבה
ב-vb שהדף יתחלף אוטומטי
למה הכוונה יתחלף אוטומטי ??
ברגע שהדף יטען…
הוא ישר יעבור לדף אחר…
אתה מתכוון לזה
Response.Redirect "Page.asp"
במקרה?
כן, תודה
ישנה אפשרות לראות עברית
הקלד את השורה הבאה אחרי תג הHTML
<"META http-equiv=Content-Type content="text/html; indows-1255>
למדריכים נוספים בקר באתר
כאן תגית Meta לא יכולה להועיל כיוון
שהעברית נמחקת לגמרי.
ניסית את זה?
<%@ codepage=1255 %>
העברית נמחקת, לא קיימת אז זה לא
יכול לעזור.
בטבלה באקסס
יש לי עמודה אחת שהיא המספר הסידורי של השורה.
איך אני יכול לעשות שכל פעם שנוספת שורה יופיע המספר הבא?
פשוט
אתה קובע את השדה לסוג מספור אוטומטי (Auto Number)
אבל כשאר אני…
מוסיף שורה חדשה דרך קובץ asp מה אני צריך להציב במקום של המשתנה הזה?
אתה לא מנסה להציב בו
הוא מתעדכן לבד בכל רשומה חדשה
ID הוא מסוג מספור אוטומטי שזה בעצם
אומר שבהוספת ועריכת רשומות אינך עורך אותו אלא הוא נועד רק כדי למצוא רשומה מסויימת באופן ייחודי כך שלא יהיו 2 רשומות בעלי אותם נתונים ולא תדע מה לערוך.
כאן נכנס המספור אוטומטי (ID), הוא מונע רשימות כפולות ע"י מספר ייחודי בסדר עולה לכל רשומה שמתווספת אוטומטי למסד הנתונים ולפי מספר זה אתה מוצא, עורך ומוחק רשומות.
בקיצור, זה שדה לקריאה בלבד ואתה לא יכול לערוך את ערכו או להכניסו ערך במקומו.
הוא מתעדכן אוטומטית בכל הכנסת רשומה חדשה לטבלה במסד הנתונים שלך.
אז בעצם…
אני צריך להתעלם ממנו מתי שאני מכניס רשומה חדשה?
כן, בדיוק…גם בעריכה, אם אתה עורך.
ובתצוגה לא תהיי בעיה נכון?
לא, בתצוגה לא תהיה לך שום בעיה
הגדרתי את המשתנה הזה..
באקסס כ"מספור אוטומטי"
וכשאני מוסיף נותונים לטבלה הוא נותן לי הודעת שגיעה:
Number of query values and destination fields are not the same.
איך אני פותר את זה?
תראה את שאילתת ההוספה שלך
השגיאה אומרת שמספר ההכנסות לא תואם למס' השדות שמבוקשים להכניס או להפך.
רק לפני שאתה שם אם לא רשמת את רשימת השדות אחרי שם הטבלה אז תעשה זאת
INSERT INTO tbl(<fields (without field Id)>) VALUES(<values to insert>)
אהה..
אני הוספתי לטבלה ככה:
INSERT INTO tbl VALUES(<values to insert>)
תודה
ראה מאמר זה
בעיה עם מחיקה
נראה לי שזה בעיה של איזה גרש, אבל אני לא מצליח לסדר את זה
זה הקוד
oConn.execute "DELETE friends WHERE ID='" & request.form("ID") & "'"
זה השגיעה
[Microsoft][ODBC Microsoft Access Driver] Syntax error (missing operator) in query expression 'friends WHERE ID='3".
תודה מראש
יש לי את זה בספר…
ראיתי שככה צריך לקלוט בהתחלה, אבל אז הדוגמאות היו בלי זה..
תודה
אכן בעיית גרש
ID הוא מספור אוטומטי משמע הוא מספר
תוריד את הגרשים שמקיפים את המס' ID
oConn.execute "DELETE friends WHERE ID=" & cInt(request.form("ID"))
אני בכלל לא מסתדר עם הגרשים
עשיתי עכשיו משהו פשוט בלי משתנה, וזה גם לא מצליח:
oConn.execute "DELETE friends WHERE ID=" & 3
תראה את השגיאה
oConn.execute "DELETE friends WHERE ID=3"
ורצוי לשים את השאילתא בתוך משתנה ואז לבצעה (נותן נוחות בכתיבה)
אתה יכול ללמוד איך משרשרים שאילתה
כאן:
רשמתי את השורה שאמרת והשגיעה היא:
[Microsoft][ODBC Microsoft Access Driver] Syntax error (missing operator) in query expression 'friends WHERE ID=3'.
לא שמתי לב קודם
אבל השאילתא שלך שגויה מלכת תחילה
oConn.execute "DELETE FROM friends WHERE ID=3"
תודה ניר
תודה
בעיה בהצגת דפים
אני מאחסן את הקבצים באתר http://www.domaindlx.com/ ויש לי בעיה מעצבנת:
רוב הפעמים שאני גולש לדפים לא מופיע הtitle של הדף, הדף זז טיפה שמאלה שניה אחרי שהוא נטען (דבר שמשבש את העיצוב) וברגע שאני עובר דפים שורת הaddress לא משתנה.
איך ניתן לפתור את זה?
יש לך אולי קישור להציג ?
הקישורים למעברי העמוד תקינים?
מה הקוד הרלוונטי לבעיה ? פרט קצת על מנת שאוכל לעזור לך.
מממ
צרפתי תמונת מסך של הבעיה
הנה
שם: זמני
סיסמה: 123
אני רואה את הטופס בצורה
מלאה ורגילה ללא הבעיה שהצגת בתמונה המצורפת.
אני מניח שהבעיה היא אצלך במחשב/בדפדפן.
צירפתי תמונת מסך של הטופס המוצג אצלי.
מה יכולה להיות הבעיה?
ניסתי למחוק tamp/cookies/history…
תודה בכל מקרה
אתה יכול לשאול בפורום מחשבים
ואנטרנט, אולי בעיה בדפדפן…
בקשר ל"יוניקוד"
איפה אני יכול לראות את הקוד של כל התווים?
תודה
כאן
תודה
עדכון שדה
זה בעיה בשרשור?
oConn.execute "UPDARE friends password='" & password & "' WHERE ID='" & id & "'"
הודעת שגיעה
[Microsoft][ODBC Microsoft Access Driver] Invalid SQL statement; expected 'DELETE', 'INSERT', 'PROCEDURE', 'SELECT', or 'UPDATE'.
תודה
תיקנתי משהו אבל עדיין יש בעיה
הקוד
oConn.execute "UPDATE friends password='" & password & "' WHERE ID='" & id & "'"
שגיעה
[Microsoft][ODBC Microsoft Access Driver] Syntax error in UPDATE statement.
תנסה כך
oConn.execute "UPDATE friends password=" & password & " WHERE ID=" & id
שגיאה בשאילתה..זה צריך להיות ככה
oConn.execute "UPDATE friends set password='" & password & "' WHERE ID=" & id
נסה ללמוד יותר על שאילתת עדכון
.תיקון (טעיתי קודם)
oConn.execute "UPDATE friends set password='" & password & "' WHERE ID=" & id
גם עכשיו יכולה להיות לך בעיה
תשנה את השדה Password לשם אחר או שתשתמש בסוגריים מרובעים בשאילתא, password היא מילה שמורה
תודה לכולם
סיימתי לבנות את המערכת שרציתי.
תודה רבה לכולם, לא הייתי עושה את זה ללא עזרתכם.
שמתי לעזור, בהצלחה בהמשך
מקווים לראות אותך פה שוב
אז הנה אני שוב…
אני מקבל במקום כל הדפים שמשתמשים בבסיס הנתונים את ההודעה הבאה:
Not enough storage is available to complete this operation.
מה אני צריך להבין מזה?
תראה את העמוד הבא
אולי יעזור.
בעיה קטנה…
אני משתמש בכתובת מקוצרת של up.co.il. ואז שאני נכנס לדפים שמשתמשים ב'session' יש לי בעיה.
איך אפשר לסדר את זה?
לא אמורה להיות בעיה עם זה
session נמצא בשרת ולכן אין שום קשר ל"כתובת" של הדפדפן
הבעיה בעמוד שלך
אני שמעתי פעם שכאשר משתמשים במסגרות
אז יכולה להיות בעיה…
וכאשר אני נכנס לכתובת האמיתית של הדף אין לי בעיה.
בכל מקרה, האם ניתן לשנות את ה'כתובת' של הדפדפן?
טוב…
עשיתי target="_top" אני מקווה שזה יפתור לי את הבעיה..
תודה
אגב…
חד פעמי (!), אני מבקש (ולא רק מרשה) ממך לפתוח שרשור חדש ולשרשר שם את שאלותיך הבאות… השרשור נעשה כבר גדול מדי… 🙂
אני לא מרשה
סתם