7 Робота з рядками

Матеріал з Wiki TNEU
Версія від 00:41, 20 грудня 2011; 92.52.148.127 (Обговорення)

(різн.) ← Попередня версія • Поточна версія (різн.) • Новіша версія → (різн.)
Перейти до: навігація, пошук

Ця функція належить до функцій перетворення символів, про які ми теж будемо говорити в цьому розділі. Цю функцію ми винесли в самий початок через те, що вона робить одну просту, але важливу річ - виробляє перетворення спецсимволів в їх HTML еквіваленти. Попросту кажучи, ця функція гарантує, що якщо Ви раптом надумаєте написати в гостьовій книзі або на форумі якийсь код (php, javascript і т.д.) він відобразитися абсолютно нормально, але виконуватися не буде!Тобто функцію треба застосовувати, якщо потрібно вивести у броузері якийсь код.Крім того, ця функція позбавляє Вас від всяких кретинів, яким нічим зайнятися окрім як писати в Ваших гостьових книгах (і будь-яких формах вводу) будь-які скрипти. Ну а тепер, власне, про функції. Синтаксис: string htmlspecialchars (string str [, int quote_style [, string charset]]); Перший аргумент - рядок, у якому треба виконати перетворення. В якості другого необов'язкового аргументу приймається константа, що задає режим перетворення лапок. За замовчуванням, використовується ENT_COMPAT, перетворююча подвійні лапки, при цьому поодинокі залишаються без змін. У режимі ENT_QUOTES перетворюються і подвійні, і одиночні лапки. а в режимі ENT_NOQUOTES і подвійні, і одиночні лапки залишаються без змін. Третій необов'язковий аргумент приймає рядок, що представляє набір символів, що використовуються в перетворенні (за замовчуванням ISO-8859-1). Наприклад, якщо Ви обробляєте якесь повідомлення $ msg форми, то обробка його функцією htmlspecialchars () можлива наступним чином: $ Msg = htmlspecialchars ($ msg); Як бачите, все просто. А для того, щоб у Вас все це гарненько запам'яталося наведемо такий повчальний прімерчік, який, сподіваємося, змусить Вас не забувати про цю функцію. Примітивний php скриптик, який буде відображати дані, що вводяться у формі. <?

  $ Action = $ _POST ["action"];
  if (empty ($ action))
  {
  ?>
     <HTML>
     <HEAD>
     <TITLE> Прімерчік </ TITLE>
     </ HEAD>
     <BODY>
<form action=test1.php method=post> <input type=hidden name=action value=post>
Повідомлення
<textarea cols=50 rows=8 name=msg>
        <? echo $ msg;?>
        </ Textarea> </ td> </ tr>
<input type=submit value='Добавіть'> </ td> </ tr>
     </ Form>
     </ Table>
     </ Center>
     </ BODY>
     </ HTML>
  <?
  }

?> Нічого складного, просто форма для введення повідомлення. Виводиться і обробляється введене повідомлення файлом, зазначеним action'е форми (test1.php). Код, написаний в цьому файлі теж простий: <?

  $ Msg = substr ($ _POST ["msg"], 0,1024);
  $ Msg = htmlspecialchars ($ msg);
print "

". $ msg. "</ P> \ n"; ?> Виділяємо із змінної $ _POST повідомлення (про функції substr() дивіться трохи нижче), обробляємо це повідомлення функцією htmlspecialchars () і виводимо.

Особисті інструменти
Простори назв

Варіанти
Дії
Навігація
Інструменти