Warning: Cannot use a scalar value as an array in /home/admin/public_html/forum/include/fm.class.php on line 757
Warning: Invalid argument supplied for foreach() in /home/admin/public_html/forum/include/fm.class.php on line 770
Warning: Invalid argument supplied for foreach() in /home/admin/public_html/forum/topic.php on line 737 Форумы портала PHP.SU :: Загрузка изображений в базу данных. №2
$res=mysql_query("INSERT INTO pic4(pic) VALUES(".$_FILES['uploadfile']['name'].")");
if($res)echo"Файл упешно загружен";
elseecho"Путь не добавлен в базу данных, но файл загружен";
}
elseecho"Файл не загружен,максимальный размер файла 2 мб ";
у меня такая же проблема, суть такова, перед отправкой формы ругается на uploadfile а после загрузки файл копируется на сайт но не добавляется в базу. Типы полей проверил стоит varchar(255)
такое ощущение, что не признает переменные (собственно мне так и пишет не опознанные переменные находятся в коде).
P.S. Ребят не пинайте я только только начинаю =)
P.S.S. Для администраторов и модераторов, не закрывайте тему, не хочу апать ту старую тему которую привел в самом начале =)
P.S.S.S. Создал тему от без исходности, заканчивается 2ой день который я провожу вместе с этим кодом..
LIME
Отправлено: 04 Апреля, 2013 - 11:33:14
Активный участник
Покинул форум
Сообщений всего: 10732
Дата рег-ции: Нояб. 2010
$res=mysql_query("INSERT INTO pic4(pic) VALUES(".$_FILES['uploadfile']['name'].")") or die(mysql_error());
El Diablo
Отправлено: 04 Апреля, 2013 - 11:47:35
Новичок
Покинул форум
Сообщений всего: 32
Дата рег-ции: Окт. 2012
Помог: 0 раз(а)
LIME теперь после загрузки файла, он ругается:
Цитата:
Unknown table 'JmuX572Ieww' in field list
Файл загружаю с таким именем: JmuX572Ieww.jpg
получается оп говорит, что JmuX572Ieww не знает куда добавить >
это имя файла а следовательно значение ['name'] >
получается добавляются 2 значения: ['uploadfile'] и ['name'] >
тогда я сделал, что для ['uploadfile'] - upload ряд, а для ['name'] - pic, но после того как стало выдавать ошибку:
$res=mysql_query("INSERT INTO pic4(upload,pic) VALUES(".$_FILES['uploadfile']['name'].")") or die(mysql_error());
P.S. Перед загрузкой файла ошибки так и не ушли
esterio
Отправлено: 04 Апреля, 2013 - 11:51:09
Активный участник
Покинул форум
Сообщений всего: 5025
Дата рег-ции: Нояб. 2012 Откуда: Украина, Львов
Помог: 127 раз(а)
1. загрузка изображений в базу плохая идея
2. данные нужно екранировать
3. поле должно быть blob.
4. Unknown table 'JmuX572Ieww' in field list - гугл еранслейт в помощь
El Diablo
Отправлено: 04 Апреля, 2013 - 11:55:49
Новичок
Покинул форум
Сообщений всего: 32
Дата рег-ции: Окт. 2012
Помог: 0 раз(а)
esterio не не не, там в коде же написано, что файлы загружаются:
файл кстати там появляется, но он не заносится в базу (под этим я имею в виду не заносится его путь и имя в базу,а не сам файл)
я не правильно сформулировал сообщение, то что заносить файлы в базу плохая идея это я понял полазав по форумам, я собственно к этому и не стремился изначально т.к. размер базы будет иметь огромные размеры и не оправдано занимать место, а также оперировать с базой будет сложнее. Для базы данных только данные но не сами файлы =)
LIME
Отправлено: 04 Апреля, 2013 - 12:13:34
Активный участник
Покинул форум
Сообщений всего: 10732
Дата рег-ции: Нояб. 2010
Помог: 322 раз(а)
El Diablo в какую таблицу загружаешь???(эх не сматериться бы)
El Diablo
Отправлено: 04 Апреля, 2013 - 12:44:54
Новичок
Покинул форум
Сообщений всего: 32
Дата рег-ции: Окт. 2012
Помог: 0 раз(а)
LIME загружаю в таблицу под названием pic4 данные заносятся в колонку под названием upload, pic, сама табличка в присоедниненном файле.
Суть такова, после выбора файла и нажатия Ок, файл копируется в нужный каталог, но в базу данные о файле не заносятся. я предполагал, что будут заносится данные по имени файла, для того что бы я потом вывел в нужном мне месте ссылку куда вставляется название файла из базы и выводится изображение.
P.S. Если есть уроки по добавлению файлов запилите ссылочки буду очень благодарен! Прикреплено изображение (Нажмите для увеличения)
avtor.fox
Отправлено: 04 Апреля, 2013 - 12:52:40
Постоянный участник
Покинул форум
Сообщений всего: 2083
Дата рег-ции: Март 2012 Откуда: Воронеж
Помог: 50 раз(а)
El Diablo, числовые значения могут писаться в базу и без кавычек -
/*!!!! вот тут основная беда, когда файл скопировался в директорию выдет, что Путь не добавлен в базу данных, но файл загружен, тобиш переменная $res идет со значением false, следовательно беду нужно искать в этой строчке которая идет ниже*/
$res=mysql_query("INSERT INTO pic4(pic) VALUES(".$_FILES['uploadfile']['name'].")");
if($res)echo"Файл упешно загружен";
elseecho"Путь не добавлен в базу данных, но файл загружен";
}
elseecho"Файл не загружен,максимальный размер файла 2 мб ";?>
основная беда, когда файл с копировался в директорию система выдает, что Путь не добавлен в базу данных, но файл загружен, тобиш переменная $res идет со значением false, следовательно беду нужно искать в этой строчке которая идет ниже.
Т.к. имя файла может иметь символы и буквы то тип поля стоит varchar (! правильно ли?)
Все гости форума могут просматривать этот раздел. Только зарегистрированные пользователи могут создавать новые темы в этом разделе. Только зарегистрированные пользователи могут отвечать на сообщения в этом разделе.