Как автоматически заполнить данные формы? - PullRequest
1 голос
/ 02 января 2011

У меня два вопроса:

1) Я пытаюсь заполнить поля формы данными из таблицы mysql.Но по какой-то неизвестной причине я получаю завершающий / в конце значений, как только я помещаю их в текстовое поле.* однако, если я просто повторю <?php echo('value='.checkDefaultValue($vals['user_firstname'])); ?>

, я не получу конечный / в конце значения.Любые идеи, ребята?

2) Каков наилучший способ заполнить данные в форме из БД?Я в основном делаю что-то вроде edit profile, и я хочу, чтобы значения были предварительно заполнены в соответствующих полях.Ох, и это не нужно AJAX и тому подобное ...

Ответы [ 2 ]

2 голосов
/ 02 января 2011

Не забывайте цитаты:

<input type="text" id="first_name" name="first_name" value="<?php echo checkDefaultValue($vals['user_firstname']); ?>" />
1 голос
/ 02 января 2011

Для вашего вопроса # 2 есть только один способ заполнить поле: установить атрибут поля value.Делаете ли вы это во время генерации страницы на стороне сервера, или на стороне клиента, используя AJAX или plain-jane, Javascript не имеет значения - вы все равно просто заполняете поля формы атрибутом value (или selectedIndex или содержимым textarea, независимо от того, что).

Если вы делаете это на стороне сервера, вы ДОЛЖНЫ передать значения через htmlspecialchars(), в противном случае вставляемые вами данные могут нарушить форму, если они содержат метасимволы HTML (* 1005).*, ", <, >) и приведут к уязвимости XSS на вашем сайте.

Если вы делаете это на стороне клиента, то вам придется сделать эквивалентное экранированиес json_encode() и тому подобным, чтобы предотвратить случайный взлом ' в данных от взлома Javascript.

...