[ Поиск ] - [ Пользователи ] - [ Календарь ]
Полная Версия: массив и форма
юрьич
Здравствуйте.Вот запрос к БД:

$sql = $modx->db->query("SELECT * FROM `modx_site_content` WHERE `id`=".$modx->documentIdentifier);
if(!mysql_num_rows($sql))
echo "В таблице нет данных!";
else
{
while($row = mysql_fetch_assoc($sql))
{
$doc=($row['longtitle'] == $modx->getLoginUserID());
if($doc)
{
echo '<a href="27.html">редактировать</a>';
}
}
}


Есть форма(сейчас она по адрессу 27.html),но это не принципиально.Подскажите пожалуйста,как данные массива $row ( $content=$row['content'];$introtext=$row['introtext']; и т.п.) поместить в соответствующие поля формы?
ilyaplot
<input type="text" name="content" value="<?php echo $content?>" />

И дальше по аналогии.

_____________
Заработай на Userator
юрьич
Спасибо,но не выходит.Наверное всё не так просто как я думал.Если есть время может подскажите.Есть форма добавления материала в отдельном чанке,связанная с соответствующей функцией.Есть запрос с переменными и выводом ссылки"редактировать"(для автора) в снипете.Теперь никак не могу понять как и что изменить что бы по ссылки "редактировать" открывалась форма с материалам.Наверное какую то функцию написать надо?
exotica
Я бы сделал запрос к БД по нажатию кнопки "Редактировать". Который бы открыл мне форму Добавления материала, но с уже заполненными полями. По следующему алгоритму:

1. Нажатие кнопки
2. Запрос к БД по ID-материала, для которого применили кнопку "редактирование"
3. Открытие 27.html с переданными в поля результатами массива $row

Продолжением будет только:

4. Нажатие кнопки "Сохранить"
5. Запрос к БД по ID-материала и его перезапись
6. Вывод сообщения об успешном редактировании и скором перенаправлении
7. и наконец редирект на страницу материалов

_____________
[FAQ]Регистрации пользователей, сохранение в БД
---------------------------------------------------------------------------
Выходя из ванной, вышел из нее два раза
юрьич
Да..,труба! user posted image Беда в том что 50% написанного придётся позновать.Так всё более-менее вроде понятно(хоть и туманно),но вот как сделать ссылку на запрос,в общих чертах объясните,пожалуйста.
exotica
Где-то мне попадался следующий "маневр":

Из админки есть ссылка на страницу "Контент"

1. При открытии этой страницы content.php происходит запрос SELECT * FROM `modx_site_content` т.е. извлекаем Все записи из таблицы modx_site_content. Ну логично если записей нет, то сообщаем что "Материалов нет"
2. Формируем полученные данные в таблицу, где itemID = $row['id'], title = $row['title'].
3. Как вариант можно автоматически формировать кнопку "Редактировать" рядом с каждой строкой. Но мне кажется это будет не очень смотреться. Предложил бы использовать Checkbox или Radio, главное чтоб можно было выделить только одну строку.
4. После выбора строки, и нажатии кнопки в скрипт попадают Две переменные - $itemID и $title. Которые мы и подставляем в наш запрос SELECT * FROM `modx_site_content` WHERE `id`='"$itemID"' AND `title`='"$title"'
5. После выполнение получаем либо страницу 27.html - если найдена новость, либо получаем сообщение об ошибке (но его мы получим только в случае если допустим ошибку в коде, т.к. если новость отобразится на странице content.php то она найдется в базе, при нажатии редактировать)


По корректному выводу данных в таблицу Вам сюда: http://phpforum.ru/index.php?showtopic=19919

_____________
[FAQ]Регистрации пользователей, сохранение в БД
---------------------------------------------------------------------------
Выходя из ванной, вышел из нее два раза
Быстрый ответ:

 Графические смайлики |  Показывать подпись
Здесь расположена полная версия этой страницы.
Invision Power Board © 2001-2024 Invision Power Services, Inc.