![ישן](https://static.fresh.co.il/images/vBulletin/statusicon/post_old.gif)
30-12-2006, 19:39
|
|
|
חבר מתאריך: 26.12.06
הודעות: 110
|
|
בעיה שאני לא מצליח לפתור בajax
יש לי 2 דפים show.html ו xml.php.
show.html זה דף שמשתמש בjs בשביל לקבל נתונים בצורת xml מהדף xml.php ומכאן שהדף xml.php יוצר פלט בצורת xml מנותנים שמאוחסנים במסד נתונים מסוג mysql 5. מישהו פה בפורום אמר שהוא עובד עם utf8 וajax ואין לו בעיות עברית. ניסיתי גם הגדרתי את המסד utf8 וגם את הדפים אבל זה לא עזר ויש לי בעיות עם העברית...
ניסיתי לעשות הכל, charset וכל אלה אבל לא הצלחתי לפתור את הבעיה...
הדפים:
קוד PHP:
<html dir="rtl"> <head> <title> ספר טלפונים </title> <meta http-equiv="Content-Type" content="text/html; charset=utf-8"> <meta http-equiv="Content-Language" content="he"> </head> <body> <script language="javascript"> function add_row(tblId,info) { var tblBody = document.getElementById(tblId).tBodies[0]; var newRow = tblBody.insertRow(-1); var newCell1 = newRow.insertCell(0); newCell1.appendChild(document.createTextNode(info[1])); var newCell2 = newRow.insertCell(1); newCell2.appendChild(document.createTextNode(info[0])); } function GetXmlHttpObject(handler) { var XMLHttp=null; try { XMLHttp=new ActiveXObject("Msxml2.XMLHTTP"); } catch(e) { try { XMLHttp=new ActiveXObject("Microsoft.XMLHTTP"); } catch(e) { XMLHttp=new XMLHttpRequest(); } } return XMLHttp; } function get_data() { xmlhttp = GetXmlHttpObject(); xmlhttp.open("post","http://localhost/phonebook/xml.php",false); xmlhttp.send(null); var str_xml; str_xml=xmlhttp.responseXML; var xmldoc = new ActiveXObject("microsoft.xmldom"); xmldoc.load(str_xml); var xmlobj=xmldoc.documentElement; for (var i = 0; i < xmlobj.childNodes.length; ++i) { var info=new Array() info[0]=xmlobj.childNodes.item(i).childNodes.item(0).text ; info[1]=xmlobj.childNodes.item(i).childNodes.item(1).text ; add_row('book',info); } } </script> <div align="center" id="show"><a href="#" onclick="get_data()"><font color="#FF0000">שלוף את מספרי הטלפון ממסד הנתונים</font></a></div> <table align="center" border="1" id="book"> <tr> <td> שם פרטי: </td> <td> מספר טלפון: </td> </tr> </table> </body> </html>
קוד PHP:
<?php header("Content-Type: application/xml;"); $connection = mysql_connect("localhost","root",""); $db = mysql_select_db("web",$connection); $result = mysql_query("select * from phonebook"); $doc = new DomDocument('1.0'); $root = $doc->createElement('root'); $root = $doc->appendChild($root); while($row = mysql_fetch_assoc($result)) { $occ = $doc->createElement('users'); $occ = $root->appendChild($occ); foreach ($row as $fieldname => $fieldvalue) { $child = $doc->createElement($fieldname); $child = $occ->appendChild($child); $value = $doc->createTextNode($fieldvalue); $value = $child->appendChild($value); } } $xml_string = $doc->saveXML(); echo $xml_string; mysql_close($connection); ?>
למישהו יש רעיון איך אפשר לסדר את עיניין העברית?
תודה!
לא חשוב הצלחתי לפתור את הבעיה לכל מי שרוצה הפתרון הוא:
קוד PHP:
mysql_query("SET NAMES 'utf8'");
ובאמת כדי לעבוד עם utf8 עכשיו אין לי שום בעיות...
נערך לאחרונה ע"י alon.ada בתאריך 30-12-2006 בשעה 19:44.
|