Как вывести данные из базы Mysql?

543
28 ноября 2016, 18:40

В ячейке xfields написано несколько ссылок таким образом. audio|vip.mp3||image|vip.jpg||wave|19.jpg

Если я вывожу так ".$row['xfields']." выводится полностью вся ячейка.

Как вывести только картинку vip.jpg

Полный код

$sql = $db->query("SELECT * FROM ".PREFIX."_post ORDER BY id DESC");
while ($row = $db->get_row($sql)) {
$row['date'] = strtotime($row['date']);
if ($config['allow_alt_url'] == "yes")
$rat .= "<div class=\"rate\"><a {$go_page}href=\"".$config['http_home_url'].date('Y/m/d/', $row['date']).$row['alt_name'].".html\">".$row['tags']." - ".$row['title']."</a></div>";
else
$rat .= "<div class=\"rate\"><a {$go_page}href=\"".$config['http_home_url'].date('Y/m/d/', $row['date']).$row['alt_name'].".html\">".$row['tags']." - ".$row['title']."</a></div>";

После $rat .= " нужно вывести

Answer 1

Примерно так

//метод один
$str = 'audio|vip.mp3||image|vip.jpg||wave|19.jpg';
preg_match('#image\|([^|]+\.(?:gif|jpe?g))\|#isU', $str, $matches);
if (isset($matches[1])) {
    echo $matches[1];
}

//метод два
$str = 'audio|vip.mp3||image|vip.jpg||wave|19.jpg';
$list = explode('||', $str);
foreach ($list as $val) {
    $arr[explode('|', $val)[0]] = explode('|', $val)[1];
}
if (isset($arr['image'])) {
    echo $arr['image'];
}
READ ALSO
Дубликат primary key почему возникает?

Дубликат primary key почему возникает?

Экспортирую таблицу из БДСоздаю копию её с другим именем но такой же структурой и пустую

395
Объявление переменных в mysql

Объявление переменных в mysql

Как в mysql объявить переменную, присвоить ей какое нибудь значение и использовать ее в запросе? Нужно именно средствами mysql

657
хранимая процедура в mysql

хранимая процедура в mysql

Как сделать хранимую процедуру в mysql которая вернет результат запросаНе хочется в php большой запрос оборачивать в строку

429
Правильное составление php pdo

Правильное составление php pdo

Нужно вывести строки с одной таблицы, при условии, что поле у этих строк будет равно полю с другой таблицы, допустим id?

364