הוסטס - פורום אחסון האתרים הגדול בישראל

הוסטס - פורום אחסון האתרים הגדול בישראל (https://hosts.co.il/forums/index.php)
-   פורום תיכנות (https://hosts.co.il/forums/forumdisplay.php?f=14)
-   -   (php) מחפש פונקציה לטיפול בhtml (https://hosts.co.il/forums/showthread.php?t=16185)

אורי 18-02-06 21:52

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

<script language="javascript">
alert("gdf");
</script>

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


חוץ מזה שאלה שאף פעם לא הצלחתי לענות לעצמי עליה היא:
מה ההבדל בין mysql_real_escape_string לבין mysql_escape_string ואיך משתמשים בכל אחד..


תודה רבה מראש למי שיענה על שתי השאלות או אפילו רק שאלה אחת.

d0rix 18-02-06 21:57

לאיזה מטרה אתה צריך את זה?

בניה 18-02-06 22:07

בס"ד


אתה רוצה שהקוד יוצג בדפדפן אבל לא יורץ?(כתבת שרת לא דפדפן)
תעשה:
$string=str_replace('<','&#60;',$string);
$string=str_replace('>','&#62;',$string);

LosNir 18-02-06 22:45

ציטוט:

נכתב במקור על ידי בניה
בס"ד


אתה רוצה שהקוד יוצג בדפדפן אבל לא יורץ?(כתבת שרת לא דפדפן)
תעשה:
$string=str_replace('<','<',$string);
$string=str_replace('>','>',$string);

חחחח יש לך טעות בקוד, אתה בטח מתכוון ככה:

PHP קוד:

$string str_replace('<','&lt;',$string);
$string str_replace('>','&gt;',$string);
$string str_replace('\"','&quot;',$string); 


meshuga 18-02-06 23:34

נפתח

אורי 19-02-06 18:44

לא הבנתם אותי נכון..אני מכיר את הפונקצייה str_replace וזה לא מה שאני מחפש..גם strip_tags וגם htmlenitites ושתי הפונקציות לא מה שאני מחפש. אני לא מחפש להעלים תווים או להפוך את הטקסט לג'יבריש..אני מעוניין שאם מישהו כותב קוד html/js או כל שפה אחרת זה לא יבצע אותו אלא רק יציג אותו (הקוד כמו מההתחלה רק שלא יקפיץ הודעה של "gdf" אלא יציג את הקוד
<script language="javascript">
alert("gdf");
</script>

כמו נניח במערכת הזאת או כל מערכת אחרת.

d0rix 19-02-06 19:10

לא הסברת לי עדיין בשביל מה אתה צריך את זה, בכל מקרה אם הבנתי אותך נכון אז תרשום ככה:
קוד:

&lt;script language="javascript"&gt;
alert("gdf");
&lt;/script&gt;

ואז פשוט זה לא מריץ תקוד, אלא מראה אותו.
מקווה שעזרתי לך, יום טוב.

בניה 19-02-06 19:11

בס"ד


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

BlueNosE 19-02-06 19:15

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

DaNieLLL 19-02-06 19:21

למה לא בhtmlspecialchars?
http://il.php.net/htmlspecialchars


כל הזמנים הם GMT +2. הזמן כעת הוא 04:24.

מופעל באמצעות VBulletin גרסה 3.8.6
כל הזכויות שמורות ©
כל הזכויות שמורות לסולל יבוא ורשתות (1997) בע"מ