לוגו אתר Fresh          
 
 
  אפשרות תפריט  ראשי     אפשרות תפריט  צ'אט     אפשרות תפריט  מבזקים     אפשרות תפריט  צור קשר     חץ שמאלה ‎print ‎"Hello World!"; if‎ ‎not rules.‎know ‎then rules.‎read(); חץ ימינה  

לך אחורה   לובי הפורומים > מחשבים > תכנות ובניית אתרים
שמור לעצמך קישור לדף זה באתרי שמירת קישורים חברתיים
תגובה
 
כלי אשכול חפש באשכול זה



  #1  
ישן 07-08-2007, 17:13
  cool456 cool456 אינו מחובר  
 
חבר מתאריך: 21.05.03
הודעות: 576
שלח הודעה דרך ICQ אל cool456
בעית קידוד ב AJAX

אני מקווה שזה קשור לפה.

אני לא מצליח להעביר עברית כמו שצריך ב AJAX, זה הופך את העברית או לסימני שאלה או לסימנים מוזרים.
אני שולח טופס בקובץ HTML (קידוד של windows-1255) בעזרת ajax לסקריפט שנמצא בקובץ ASP.
בסקריפט שנמצא בקובץ ה-ASP אני מכניס את הנתונים למסד נתונים.
הבעיה היא שאני מקבל סימנים מוזרים בתוך המסד נתונים שהוא דרך אגב אקסס.

הבנתי שה ajax שולח את הנתונים ב unicode ולכן כשהוא מקבל את העברית שלי שהיא
ב windows-1255 הוא עושה סלט ירקות.
ובכלל המסד נתונים שלי לא נראה לי עובד ב unicode ולכן כשאני מכניס את הנתונים אליו הם גם הופכים לסימנים מוזרים(בקיצור סלט ירקות).

מה אפשר לעשות כדי לפתור את זה?


אני מוסיף את הקוד גם של הקובץ HTML וגם של הקובץ ASP.

קובץ ה HTML:
קוד:
<html> <head> <meta http-equiv="Content-Type" content="text/html; charset=WINDOWS-1255"> <title>Ajax</title> </head> <body> <script type="text/javascript"> function sendComment() { var xmlHttp; try { // Firefox, Opera 8.0+, Safari xmlHttp=new XMLHttpRequest(); } catch (e) { // Internet Explorer try { xmlHttp=new ActiveXObject("Msxml2.XMLHTTP"); } catch (e) { try { xmlHttp=new ActiveXObject("Microsoft.XMLHTTP"); } catch (e) { alert("Your browser does not support AJAX!"); return false; } } } var url="comment.asp"; var name = document.comment.name.value var email = document.comment.email.value var title = document.comment.title.value var content = document.comment.content.value var button = document.comment.button.value url=url+"?name="+name+"&email="+email+"&title="+title+"&content="+content; url=url+"&sid="+Math.random(); xmlHttp.onreadystatechange=function() { if(xmlHttp.readyState==4) { document.getElementById("comment").innerHTML=xmlHttp.responseText; } } xmlHttp.open("GET",url,true); xmlHttp.send(null); } </script> <div id="comment"> </div> <form dir=rtl name="comment" style="font-family:arial;color:white;font-size:10pt;"> שם: <input type="text" name="name" /><br/><br/> אי מייל: <input type="text" name="email" /><br/><br/> נושא: <input type="text" name="title" /><br/><br/> תוכן ההודעה: <textarea name="content" rows=5 cols=30 wrap=virtual></textarea><br/><br/> <input type="button" value="שלח" onclick="sendComment()" /> </form> </body> </html>


קובץ ה ASP:
קוד:
<%@ language="VBSCRIPT" codepage="1255"%> <!--#include virtual = "/erezweb2/Adovbs.inc" --> <% name = request.querystring("name") email = request.querystring("email") title = request.querystring("title") content = request.querystring("content") set all_dataDB = Server.CreateObject("ADODB.Connection") all_dataDB.Open "DSN=database;" set comment = Server.CreateObject("ADODB.RecordSet") comment.Open "comments", all_dataDB, adOpenStatic, adCmdTable comment.AddNew comment("Title") = title comment("Content") = content comment("Name") = name comment("Email") = email comment.Update comment.Close set comment = Nothing all_dataDB.Close set all_dataDB = Nothing %> name=<%=name%> email=<%=email%>


בתודה מראש
ארז.
תגובה ללא ציטוט תגובה עם ציטוט חזרה לפורום
  #3  
ישן 09-08-2007, 03:56
צלמית המשתמש של bongzilla
  bongzilla bongzilla אינו מחובר  
 
חבר מתאריך: 09.08.07
הודעות: 4
מה שאפשר לעשות
בתגובה להודעה מספר 1 שנכתבה על ידי cool456 שמתחילה ב "בעית קידוד ב AJAX"

אהלן. אני בעקרון לא עובד עם ASP ובטח לא אקסס (תן לי PHP וMySQL ואני מרוצה), אבל נראה לי שהסלט הזה קורה כי אתה שולח טקסט בעברית בתור מחרוזת GET - כשהרבה יותר הגיוני לשלוח אותו בתור POST. אני לא סגור על איך זה עובד באייג'קס, אבל לא רק שGET מערבל אותיות לא לטיניות, הוא גם מוגבל ל 2048 אותיות, וזה ממש קצת.

יש באתר של אוריילי כתבה בעניין, והנה היא: http://www.onlamp.com/pub/a/onlamp/...ttprequest.html

בכל מקרה, אני הייתי מתרגל תכנות יותר מודולרי - פונקציה ששמה sendComment שבאה בלי פרמטרים? לא כותבים ככה ג'אווהסקריפט.
_____________________________________
ובעצם, יש מצב שפשוט הזיתי את כל מה שאמרתי.
אני כבר לא בטוח בכלום.


נערך לאחרונה ע"י bongzilla בתאריך 09-08-2007 בשעה 04:06.
תגובה ללא ציטוט תגובה עם ציטוט חזרה לפורום
  #7  
ישן 18-08-2007, 11:01
  cool456 cool456 אינו מחובר  
 
חבר מתאריך: 21.05.03
הודעות: 576
שלח הודעה דרך ICQ אל cool456
בתגובה להודעה מספר 3 שנכתבה על ידי bongzilla שמתחילה ב "מה שאפשר לעשות"

ציטוט:
במקור נכתב על ידי bongzilla
אהלן. אני בעקרון לא עובד עם ASP ובטח לא אקסס (תן לי PHP וMySQL ואני מרוצה), אבל נראה לי שהסלט הזה קורה כי אתה שולח טקסט בעברית בתור מחרוזת GET - כשהרבה יותר הגיוני לשלוח אותו בתור POST. אני לא סגור על איך זה עובד באייג'קס, אבל לא רק שGET מערבל אותיות לא לטיניות, הוא גם מוגבל ל 2048 אותיות, וזה ממש קצת.

יש באתר של אוריילי כתבה בעניין, והנה היא: http://www.onlamp.com/pub/a/onlamp/...ttprequest.html

בכל מקרה, אני הייתי מתרגל תכנות יותר מודולרי - פונקציה ששמה sendComment שבאה בלי פרמטרים? לא כותבים ככה ג'אווהסקריפט.



גם בשיטת post זה מעביר את הטקסט ב unicode ואז כשאני מכניס את זה לאקסס זה מכניס סימנים.
תגובה ללא ציטוט תגובה עם ציטוט חזרה לפורום
תגובה

כלי אשכול חפש באשכול זה
חפש באשכול זה:

חיפוש מתקדם
מצבי תצוגה דרג אשכול זה
דרג אשכול זה:

מזער את תיבת המידע אפשרויות משלוח הודעות
אתה לא יכול לפתוח אשכולות חדשים
אתה לא יכול להגיב לאשכולות
אתה לא יכול לצרף קבצים
אתה לא יכול לערוך את ההודעות שלך

קוד vB פעיל
קוד [IMG] פעיל
קוד HTML כבוי
מעבר לפורום



כל הזמנים המוצגים בדף זה הם לפי איזור זמן GMT +2. השעה כעת היא 13:07

הדף נוצר ב 0.06 שניות עם 12 שאילתות

הפורום מבוסס על vBulletin, גירסא 3.0.6
כל הזכויות לתוכנת הפורומים שמורות © 2024 - 2000 לחברת Jelsoft Enterprises.
כל הזכויות שמורות ל Fresh.co.il ©

צור קשר | תקנון האתר