חיפוש והחלפה בקטע

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

מנהל: צוות האתר

Alter
מנהל ראשי
מנהל ראשי
הודעות: 1614
הצטרף: 14/11/2004 ב-21:39:32
מיקום: חיפה

חיפוש והחלפה בקטע

הודעה שלא נקראהעל ידי Alter » 06/05/2005 ב-08:19:08

טוב אני צריך עזרה שלכם..
יש לי כמה בעיות בשרת עם קידוד של הבסיס נתונים.
אז כדי לסדר את זה כל פעם אני לוקח את האותיות שבעברית והופך אותם לגבריש.
(יש לי קובץ שיש בו את כל האותיות.
עושה חיפוש והחלפה.)

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

הנה הhtml:

קוד: בחר הכל

<html dir="rtl">
<head>
<title>מחליף האותיות</title>
<meta http-equiv="Content-Type" content="text/html; charset=windows-1255">
</head>
<body bgcolor="#FFFFFF" link="#000000" vlink="#000000" alink="#000000">
<form action="<?=$PHP_SELF.'?'.$_SERVER['QUERY_STRING']?>" method="post" enctype="multipart/form-data">
<table width="100%" border="0">
   <tr>
      <td>האות לחיפוש <input type="text" name="1s" size="1" value="א"></td>
      <td>האות להחלפה <input type="text" name="1r" size="1" value="à"></td>
   </tr>
   <tr>
      <td>האות לחיפוש <input type="text" name="2s" size="1" value="ב"></td>
      <td>האות להחלפה <input type="text" name="2r" size="1" value="á"></td>
   </tr>
   <tr>
      <td> הכנסת הקטע שבו יתבצע החיפוש:</td>
   </tr>
   <tr>
      <td><textarea name="content" style="width:600px;" rows="15"></textarea>
   </tr>
   <tr>
      <td>הקטע לאחר השינוי:</td>
   </tr>
   <tr>
      <td><textarea name="contentnew" style="width:600px;" rows="15"></textarea>
   </tr>
</table>
</form>
</body>
</html>

עכשיו אני צריך את העזרה שלכם.
המומחים.
כל מי שיודע איך להפוך את הטופס לחיפוש והחלפה והבין אותי מוזמן לנסות לעזור.

לא צריך להיות שם התחברות לבסיס נתונים.
תודה מראש ויום טוב.
Alter.

סמל אישי של המשתמש
PHP
חבר צוות phpBB ישראל לשעבר
חבר צוות phpBB ישראל לשעבר
הודעות: 1460
הצטרף: 15/11/2004 ב-21:48:41

הודעה שלא נקראהעל ידי PHP » 06/05/2005 ב-12:18:56

הסקריפט אמור להיות משו בסיגנון הזה:

קוד: בחר הכל

<?php
$hebrew = array(
'&agrave;' => 'א',
'&aacute;' => 'ב',
);

$text = str_replace(array_keys($hebrew), $hebrew, $text);
?>


אם אתה רוצה להחליף עוד אותיות, תוסיף אחרי

קוד: בחר הכל

'&aacute;' => 'ב',


את

קוד: בחר הכל

'JIBRISH' => 'HEBREW',


כמובן שאת JIBRISH תחליף באות שבג'יבריש, ואת HEBREW תחליף באות שנכונה.

עריכה:
האותיות שכתבתי בג'בריש בקוד, הפכו למשהו אחר ממה שכתבתי. רק שתדע..
צחי

Alter
מנהל ראשי
מנהל ראשי
הודעות: 1614
הצטרף: 14/11/2004 ב-21:39:32
מיקום: חיפה

הודעה שלא נקראהעל ידי Alter » 06/05/2005 ב-13:41:46

נו ואתה חושב שאני באמת יודע איך לסדר את זה שזה יעבוד?
בכל מקרה הנה מה שעשיתי עד עכשיו.
תקן אותי איפה שצריך..

קוד: בחר הכל

<html dir="rtl">
<head>
<title>מחליף האותיות</title>
<meta http-equiv="Content-Type" content="text/html; charset=windows-1255">
</head>
<body bgcolor="#FFFFFF" link="#000000" vlink="#000000" alink="#000000">
<form action="<?=$PHP_SELF.'?'.$_SERVER['QUERY_STRING']?>" method="post" enctype="multipart/form-data">
<table width="100%" border="0">
   <tr>
      <td> הכנסת הקטע שבו יתבצע החיפוש:</td>
   </tr>
   <tr>
      <td><textarea name="hebrew" style="width:600px;" rows="15"></textarea>
   </tr>
   <tr>
      <td>הקטע לאחר השינוי:</td>
   </tr>
   <tr>
      <td><textarea name="text " style="width:600px;" rows="15"></textarea>
   </tr>
</table>
</form>
<?
$hebrew = array(
'à' => 'א',
'á' => 'ב',
'â' => 'ג',
'ã' => 'ד',
'ä' => 'ה',
'å' => 'ו',
'æ' => 'ז',
'ç' => 'ח',
'è' => 'ט',
'é' => 'י',
'ë' => 'כ',
'ì' => 'ל',
'î' => 'מ',
'ð' => 'נ',
'ñ' => 'ס',
'ò' => 'ע',
'ô' => 'פ',
'ö' => 'צ',
'÷' => 'ק',
'ø' => 'ר',
'ù' => 'ש',
'ú' => 'ת',
'í' => 'ם',
'õ' => 'ץ',
'ó' => 'ף',
'ï' => 'ן',
'ê' => 'ך',
);

$text = str_replace(array_keys($hebrew), $hebrew, $text);
?>
</body>
</html>


ואם לא הבנתם.
זה צריך לקחת את האותיות העבריות "א,ב וכו'" ולהפוך אותם לאותיות שרשמתי בגיבריש.
אני מכניס את הקטע בחלון העליון ורוצה שאחרי ההחלפה תבוצע אותו טקסט (עם השינוי) יופיע בתחתון.
העלתי לשרת שלי שתראו איך הדף נראה:
http://www.magshim.hostorm.biz/test.php

אני לא בבית עד מחר..
אז מחר אני יראה תוצאות =]
תודה.
Alter.

סמל אישי של המשתמש
PHP
חבר צוות phpBB ישראל לשעבר
חבר צוות phpBB ישראל לשעבר
הודעות: 1460
הצטרף: 15/11/2004 ב-21:48:41

הודעה שלא נקראהעל ידי PHP » 06/05/2005 ב-14:45:45

טוב, אחרי בדיקה קצרה, כנראה ש PHP רגיש לג'יבריש.. :?
צחי

Alter
מנהל ראשי
מנהל ראשי
הודעות: 1614
הצטרף: 14/11/2004 ב-21:39:32
מיקום: חיפה

הודעה שלא נקראהעל ידי Alter » 06/05/2005 ב-23:35:26

יודע מה..
עזוב את הגיבריש.
זה אני כבר יסדר.
סתם שיחליף 2 דברים.
נגיד שיחליף את
א - ת
ב - ש
וזהו.
רק זה בנתים.
משם אני ידאג לנושא :roll:
Alter.

סמל אישי של המשתמש
Shahar
מנהל ראשי
מנהל ראשי
הודעות: 2574
הצטרף: 14/11/2004 ב-18:19:58
מיקום: ישראל
יצירת קשר:

הודעה שלא נקראהעל ידי Shahar » 06/05/2005 ב-23:36:40

נו זה כבר יש לך כאן, איפה הבעיה?

Alter
מנהל ראשי
מנהל ראשי
הודעות: 1614
הצטרף: 14/11/2004 ב-21:39:32
מיקום: חיפה

הודעה שלא נקראהעל ידי Alter » 07/05/2005 ב-00:22:28

חוץ מהעובדה שזה לא עובד? בכלל...
Alter.

סמל אישי של המשתמש
Shahar
מנהל ראשי
מנהל ראשי
הודעות: 2574
הצטרף: 14/11/2004 ב-18:19:58
מיקום: ישראל
יצירת קשר:

הודעה שלא נקראהעל ידי Shahar » 07/05/2005 ב-01:18:20

תלמד קצת מהרשימה הזו
http://il.php.net/manual-lookup.php?pattern=replace

סמל אישי של המשתמש
PHP
חבר צוות phpBB ישראל לשעבר
חבר צוות phpBB ישראל לשעבר
הודעות: 1460
הצטרף: 15/11/2004 ב-21:48:41

הודעה שלא נקראהעל ידי PHP » 07/05/2005 ב-12:32:32

קוד: בחר הכל

<?php
if(@$_POST['hebrew'])
{
$text = $_POST['hebrew'];
$hebrew = array(
'?' => 'א',
'?' => 'ב',
'?' => 'ג',
'?' => 'ד',
'?' => 'ה',
'?' => 'ו',
'?' => 'ז',
'?' => 'ח',
'?' => 'ט',
'?' => 'י',
'?' => 'כ',
'?' => 'ל',
'?' => 'מ',
'?' => 'נ',
'?' => 'ס',
'?' => 'ע',
'?' => 'פ',
'?' => 'צ',
'÷' => 'ק',
'?' => 'ר',
'?' => 'ש',
'?' => 'ת',
'?' => 'ם',
'?' => 'ץ',
'?' => 'ף',
'?' => 'ן',
'?' => 'ך'
);
$oldtext = $text;
$text = str_replace(array_keys($hebrew), $hebrew, $text);
}
else
{
$oldtext = $text = '';
}
?>
<html dir="rtl">
<head>
<title>מחליף האותיות</title>
<meta http-equiv="Content-Type" content="text/html; charset=windows-1255">
</head>
<body bgcolor="#FFFFFF" link="#000000" vlink="#000000" alink="#000000">
<form action="<?php echo $_SERVER['PHP_SELF'] ?>" method="post" enctype="multipart/form-data">
<table width="100%" border="0">
   <tr>
      <td> הכנסת הקטע שבו יתבצע החיפוש:</td>
   </tr>
   <tr>
      <td><textarea name="hebrew" style="width:600px;" rows="15"><?php echo $oldtext; ?></textarea> </td>
   </tr>
<?php
if(@$_POST['hebrew'])
{
?>
   <tr>
      <td>הקטע לאחר השינוי:</td>
   </tr>
   <tr>
      <td><textarea name="text" style="width:600px;" rows="15"><?php echo $text; ?></textarea> </td>
   </tr>
<?php
}
?>
   <tr>
      <td><input type="submit" value="שלח"></td>
   </tr>
</table>
</form> 
</body>
</html>
צחי

Alter
מנהל ראשי
מנהל ראשי
הודעות: 1614
הצטרף: 14/11/2004 ב-21:39:32
מיקום: חיפה

הודעה שלא נקראהעל ידי Alter » 07/05/2005 ב-17:10:33

טוב גיבריש לא עובד אז לא עוזר לי..
בכל מקרה צחי תודה :roll:
Alter.


חזור אל “בניית אתרים”

מי מחובר

משתמשים הגולשים בפורום זה: אין משתמשים רשומים ו־ 140 אורחים

cron