У меня эта проблема, которая сводит меня с ума.
У меня есть база данных MySQL, в которой есть таблица с текстовым полем. Я запрашиваю таблицу в PHP и пытаюсь поместить содержимое текстового поля для каждой строки в переменную.
Я делаю что-то вроде этого:
for ($i=0;$i<$nbrows;$i++){
$id = $data[$i]['ID'];
$description = $data[$i]['DESCRIPTION'];
$mystring .= '<div>'.$id.': '.$description.'</div>';
}
ОПИСАНИЕ - мое текстовое поле.
Я передам детали. Массив $ data построен из mysql_fetch_array ($ result). Вместо этого я также попытался использовать объекты, поскольку я использую mysql_fetch_object для всех других моих подпрограмм, но изменений нет.
В любом случае, проблема заключается в следующем: если я сделаю «echo $ description»; тогда это работает. Я получаю данные моего текстового поля, как и ожидалось. Проблема в том, что я не хочу выводить его напрямую, а добавляю в объединенную строку, и это не работает. Что происходит в этом случае, так это то, что он принимает $ description для какого-либо массива или объекта. Чтобы приведенный выше пример работал, у меня есть строка замены:
$mystring .= '<div>'.$id.': '.$description[0].'</div>';
Итак, в каскадном строковом коде, если я рассматриваю $ description как массив, это работает, но, очевидно, я получаю только одну букву. (на самом деле это не массив, потому что я не могу его взорвать).
Я пробовал миллион вещей, но я просто не могу сделать эту работу, если не использую эхо, но это не то, что я пытаюсь сделать.
Нет проблем с полями, которые не являются текстовыми.
Спасибо за любые идеи!