Вопрос № 49330: Добрый день эксперты!
Делаю сайт с помощью РНР&MySQL. создал таблицы в MySQL с помощью форм средствами РНР. через РНР подключаюсь к базе, запрос типа:
SELECT * FROM data;
выдает нормально все записи, а запрос:
SELECT name FROM data W...Вопрос № 49365: Здравствуйте! Помогите понять в чем ошибка. В приложении код небольшой программы, которая делает превьюшки больших фотографий. Названия файлов (фото) берется из базы данных, где имена записаны в виде image.jpg.
1. При работе выводится маленькое ...
Вопрос № 49.330
Добрый день эксперты!
Делаю сайт с помощью РНР&MySQL. создал таблицы в MySQL с помощью форм средствами РНР. через РНР подключаюсь к базе, запрос типа:
SELECT * FROM data;
выдает нормально все записи, а запрос:
SELECT name FROM data WHERE name LIKE $search;
ничего не выдает.
Вопрос: в чом может быть проблема и как ее решить?
Думаю может быть в кодировке, поскольку через консоль и РНРmyAdmin выдает вместо текста иероглифы.
Отвечает: Ерёмин Андрей
Здравствуйте, Нода Сергей!
Соблюдайте общие рекомендации по записи вопросов. Даже первый запрос не всегда может правильно обработаться - например, если таблица имеет составное имя (из двух слов, разделённых подчёркиванием/дефисом). Строковые значения обязательно должны быть взяты в кавычки - иначе как интерпретатор SQL узнает где конец строки, где следующая команда? Кроме того, точка с запятой в конце запроса должна отсутствовать. Ваши запросы должны быть записаны примерно так: SELECT * FROM `data`
SELECT `name` FROM `data` WHERE `name` LIKE "$search" --------- Нет правила без исключений. Правило без исключений - исключение из правил.
Отвечает: PVS
Здравствуйте, Нода Сергей!
$qry="SELECT name FROM data WHERE name LIKE '%".$search."%'";
Ответ отправил: PVS (статус: 10-ый класс)
Ответ отправлен: 17.07.2006, 10:15
Отвечает: Alexey Vilchinsky
Здравствуйте, Нода Сергей!
потому что писать надо так :
SELECT name FROM data WHERE name LIKE '%$search%'
--------- Делая людям добро, мы возвращаем его многократно...
Ответ отправил: Alexey Vilchinsky (статус: Студент)
Ответ отправлен: 17.07.2006, 10:26
Вопрос № 49.365
Здравствуйте! Помогите понять в чем ошибка. В приложении код небольшой программы, которая делает превьюшки больших фотографий. Названия файлов (фото) берется из базы данных, где имена записаны в виде image.jpg.
1. При работе выводится маленькое изображение только первой фотографии из таблицы. Хотелось бы чтобы все :)
2. Перед выводом фото нужно вывести название. Если я размещаю echo $n['image_name']; перед фото, то браузер выводит кучу букв в непонятной кодировке, а если псоле imagejpeg($dest); то название картинки вообще не выводится.
Приложение:
Отправлен: 17.07.2006, 14:06
Вопрос задала: Lynn (статус: Посетитель)
Всего ответов: 2 Мини-форум вопроса >>> (сообщений: 1)
Отвечает: SergeyMAC
Здравствуйте, Lynn!
По всей видимости проблема в том, что вы работете с путем к файлу, а не с полным именем.
Попробуйте в переменную $f подставлять "$n['image_path']$n['image_name']" (только не забывайте проверять наличие у image_path завершающего слеша).
Удачи...
--------- броня крепка, и танки наши быстры
Ответ отправил: SergeyMAC (статус: 6-ой класс)
Ответ отправлен: 17.07.2006, 15:22
Отвечает: PVS
Здравствуйте, Lynn!
сначала 2: Вы выводите JPEG-рисунок, потому если вы вначале допишете что-то свое, то он перестанет быть JPEG'ом, а если в конце, то Ваши данные воспринимаются браузером как "мусор", потому как картинку он уже получил (Здесь собственно и ответ на 1: на самом деле выводятся все картинки, но правильной считается первая, а остальные - "мусор").
Чтобы все работало Вам надо разбить скрипт на 2 части (см. приложение)
Приложение:
Ответ отправил: PVS (статус: 10-ый класс)
Ответ отправлен: 17.07.2006, 15:22 Оценка за ответ: 5