שאלה קצת מתוסבכת

avi2525

New member
שאלה קצת מתוסבכת

איך אני יכול להגדיר בPHP שכאשר המשתמש יכתוב בתוך תיבת טקסט קוד זאת אומרת משהו כזה [image] [/image] ומכניס בתוכו קישור לתמונה הוא יציג את זה בתור תמונה ולא בתור טקסט, אז לסיכום איך אני מגדיר קודים בתוך תיבת טקסט. תודה מראש אחים שלי...
 
אפשר ע"י קוד פשוט כזה

נניח שהטקסט בתוך משתנה $str. נעשה כך:
$str = str_replace("[image]","<IMG BORDER=0 ALT=\"\" SRC=\"",$str); $str = str_replace("[/image]","\">",$str);​
אפשר טיפה "לרמות" את הקוד הזה, לכן לדעתי הוא קוד פשוט ביותר. אפשר לעשות יותר עם הפונקציה ereg_replace אבל צריך לדעת איך להשתמש בה (ולצערי, אינני יודע :( ).
 
בהחלט

אם שמתי בתוך המשתנה str קוד HTML, אני יכול לעצב את הדף כמו שאני רוצה:
$str = "[image]aaa\"><TABLE WIDTH=\"100%\">I <TR><TD>Cheated</TD></TR></TABLE>[/image]";​
כמו שאתה רואה, סגרתי את תגית ה-IMG במקום שהפונקציה תעשה זאת. לכן יש לי חופש מוחלט לשתול קוד HTML. כמובן שאם עושים פעולות אחרות על המחרוזת קודם לכן, כמו הפיכת תווים מיוחדים ב-HTML לתווים רגילים (כמו < ל-&lgt; אם אני זוכר נכון), אז יש הגנה מסויימת. אבל בכל זאת עדיף להשתמש במקרה הזה ב-ereg_replace או preg_replace . יש חומר על הפונקציות האלה, כך שלא קשה ללמוד את זה.
 

avi2525

New member
אמרו לי שניתן לעשות JS

אמרו לי שניתן לעשות את זה בעזרת שפת JS למישהו יש מושג איך ?!
 

selalerer

New member
לא סיפור:

<html> <head> <script language=javascript type=text/javascript> function changeImg(objSrc) { var img1=document.getElementById("img1"); img1.src=objSrc.value; } </script> </head> <body bgcolor="#EEEDFC"> <input type=text onchange="javascript:changeImg(this);"> <img id=img1> </body> </html>​
 

WebKiller

New member
מה שאתה מחפש זה...

שימוש בביטויים רגולרים, ובפונקציות preg_replace
 
למעלה