![]() |
php מחרוזות בעברית
שלום לכולם.
עשיתי טופס POST ששולח מחרוזת לקובץ ACTION.PHP הקליטה היא בצורה הבאה: (לדוגמא מחרוזת "אבג") $str = $_POST["fname"]; נוצרת בעיה מסויימת בתווים בעברית: כאשר אני עושה echo $str; זה מדפיס את המחרוזת בעברית כאשר אני מדפיס $echo $str[0]; זה אמור להציג את האות 'א' אבל זה מציג לי גיבריש \ # \ & אבל לא מציג את התו בעברית אני מנסה לעשות חישוב גימטריה של האותיות בשם. אשמח לעזרה איך לפתור את הבדיקה של תו תו כאשר המחרוזת בעברית. |
הקובץ מקודד כ- UTF8 ?
|
שניהם בצורה הבאה:
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> <html xmlns="http://www.w3.org/1999/xhtml" dir="rtl"><head><meta http-equiv="Content-Type" content="text/html; charset=utf-8" /> </head> <body> אחד טופס FORM שני טופס כזה עם PHP עדכון: http://pastebin.com/WzmpvxPi הדבקתי את שני הקבצים פה תוצאה למחרוזת: אבגד אבגדא(גיבריש) |
תשתמש בפונקציה הבאה:
PHP קוד:
|
ורק לחדד מעט את מה שעומר רשם,
ב UTF8 כל אות עברית שווה 2 תאים ולא 1 כמו אותיות באנגלית (ולא רק עברית, אלא כל שפה מערבית). אם אתה מבקש את $x[0] אתה בעצם לוקח תא אחד מתוך 2 שמרכיבים אות - ככה שאתה מקבל ג'יבריש. |
עובד, אבל חלקית :)
for($x = 0; $x <= $strlen; $x++) { echo substr_utf8($str,$x) . "<br />"; } עשיתי את הלולאה הזו, שתדפיס כל תו בודד למחרוזת בדיקה, התוצאה היא: בדיקה דיקה יקה קה ה אני צריך לבודד כל תו כדי לבדוק מהו ולהוסיף למספר בצורה גימטרית בצורה הבאה: מחרוזת בדיקה תשובה: ב = 2 ד = 4 י = 10 ק = 100 ה = 5 תשובה סופית: 121 |
שים לב להשתמש בזה בשביל אורך:
PHP קוד:
|
קוד:
<?php |
ציטוט:
|
BlueNosE
תודה רבה על העזרה. עזרת לי מאוד !! |
כל הזמנים הם GMT +2. הזמן כעת הוא 01:06. |
מופעל באמצעות VBulletin גרסה 3.8.6
כל הזכויות שמורות ©
כל הזכויות שמורות לסולל יבוא ורשתות (1997) בע"מ