#php #mysql
#php #MySQL
Вопрос:
У меня есть вставка:
$sql="INSERT into tasks(TITLE,DESCRIPTION) VALUES('$projectName',
'Description Documents: [url=http://myurl/$documentID/]$documentName[/url]')";
Перед этим у меня есть запрос:
$result1 = mysqli_query($con,"SELECT ID, NAME, IBLOCK_ID FROM b_iblock_element WHERE IBLOCK_ID = '36' ORDER BY ID DESC LIMIT 6");
while($row = mysqli_fetch_array($result1))
{
$documentID = $row['ID'];
$documentName = $row['NAME'];
}
Это возвращает 6 идентификаторов. Теперь я хочу, чтобы каждый из этих идентификаторов формировал URL-адрес во ВСТАВКЕ.. Таким образом, в основном описание вернет 6 ссылок, каждая из которых ссылается на соответствующий идентификатор.
Возможно ли это? Если да, то как?
Комментарии:
1. Вы хотите добавить все идентификаторы в один документ в описании, просто развернув текст, или вы хотите сделать что-то более интеллектуальное?
2. Все, что я хочу, это показать поле описания: имя документа 1, имя документа 2, имя документа 3, имя документа 4, имя документа 5, имя документа 6
Ответ №1:
Просто создайте строку, содержащую все URL-адреса, объединив их, например, с помощью implode() , затем добавьте этот скрипт в свое описание.
Возможно, вам также придется добавить поле NAME в запрос select, чтобы иметь возможность извлекать его из базы данных.
$result1 = mysqli_query($con,"SELECT ID, IBLOCK_ID FROM b_iblock_element WHERE IBLOCK_ID = '36' ORDER BY ID DESC LIMIT 6");
while($row = mysqli_fetch_array($result1))
{
$documentID = $row['ID'];
$urls[] = "[url=http://myurl/$documentID/]" . $row["NAME"] . "[/url]";
}
$allUrls = implode(' ', $urls);
$sql="INSERT into tasks(TITLE,DESCRIPTION) VALUES('$projectName',
'Description Documents: " . $allUrls ."')";
Комментарии:
1. Работает отлично! Мне нужен разрыв строки между ними, но я думаю, что это связано с моей системой, работающей на BBCODE, иначе я бы включил тег <Br>, где есть ‘ ‘ . Большое вам спасибо за ваше решение.