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

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

0xfo7d 03-10-08 00:04

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

בתוכן ההודעה נניח והוא רושם משהו בנוסח הבא:
" שלום!

מאוד נהניתי לקרוא את המאמר.

קבל ח"ח,
מתן."

שימו לב שבנוסך זה משולבים ירידות בשורות...(<br>).
אני מעוניין שבהצגת התגובה של אותו משתמש הגולשים ייראו מה שהוא פרסם בדיוק כפי שהוא רשם.שזה כולל הירידה בין השורות.

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

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

בקיצור-כאן הבעיה!
מצד אחד החלפתי את המעברי שורות ב BR והכנסתי למסד.
מצד שני...שאני מציג את זה...אני לא נותן לקודי HTML לפעול...כך שזה פשוט מציג לי את ה <br>ים.


מה עושים?! =[


אשמח לתגובה מהירה,
מתן.

solcito 03-10-08 00:06

תחליף אחרי הפונקציה? חחח

intercooler3819 03-10-08 00:12

אל תחליף בכלל
תשאיר את ה \r\n
ותכניס את הכל ל<pre>
;)

Pizza 03-10-08 00:14

יש לך למעשה 2 אופציות
הראשונה - כשאתה מכניס למסד תבצע את htmlspecialchars ועליו את nl2br
((nl2br(htmlspecialchars(text

האופציה השניה - להכניס למסד את המידע כמו שהוא ורק לפני ההצגה לעשות אותו דבר על המידע ששלפת מהמסד...

בהצלחה :)

0xfo7d 03-10-08 00:14

ציטוט:

נכתב במקור על ידי nitsanbn (פרסם 670798)
אל תחליף בכלל
תשאיר את ה \r\n
ותכניס את הכל ל<pre>
;)



סליחה על הבורות.
אפשר תשובה טיפה יותר ברורה?=[

Pizza 03-10-08 00:16

<pre> גורמת לטקסט שנמצא בתוך התגית הזאת להיות מוצג כמו שהוא, כולל ירידות שורה ללא צורך בתגית ה <br>

intercooler3819 03-10-08 00:16

תגגל
pre html tag
בהצלחה

0xfo7d 03-10-08 00:19

ציטוט:

נכתב במקור על ידי Pizza (פרסם 670799)
יש לך למעשה 2 אופציות
הראשונה - כשאתה מכניס למסד תבצע את htmlspecialchars ועליו את nl2br
((nl2br(htmlspecialchars(text

האופציה השניה - להכניס למסד את המידע כמו שהוא ורק לפני ההצגה לעשות אותו דבר על המידע ששלפת מהמסד...

בהצלחה :)

הלכתי על האפשרות הראשונה - עובד פיקס!

תודה רבה:)


הפורום תכנות כאן כל פעם מפתיע אותי מחדש=]
מענה ממש מהיר.

S-Preso 03-10-08 02:38

באותו נושא...

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

וככה זה מגיע אליי לאימייל:
בלה בלה בלה בלה.בלה בלה בלה בלה בלב בלה בלה בלה

אשמח לתשובה

Gal Shafrir 03-10-08 11:08

הפעלת על התוכן שנכתב את הפונקצייה nl2br?


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

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