PDA

Просмотр полной версии : Загрузка картинок и хранение их путей в базе Mysql


MafiaBoy3
06.08.2008, 09:29
Собствено сабж. Не знаю с чего начать, может у кого-нибудь есть пример.

Chaak
06.08.2008, 09:53
Научись сначала делать "привет мир". Потом как загружать и переименовывать файлы. Потом майэскйуэл учи

MafiaBoy3
06.08.2008, 10:08
НЕ вопрос ВСЁ ОПИСАННОЕ ВЫШЕ УМЕЮ!

А вот как пути картинок хранить да как их выводить (картинки) не знаю!

MafiaBoy3
06.08.2008, 10:16
ок посмотрел

Почему не получается скопировать фотку в папку pictures? Она копируется в www.

$imgDir="pictures".$_FILES['picture']['name'];

move_uploaded_file($_FILES['picture']['tmp_name'], $imgDir);

Всё решил оказывается после pictures нужен был слэш!

Ну вот картинка загружена на сервер а дальше то что, как занести её путь в базу и вывести картинку на экран?

rcc0023
06.08.2008, 10:57
сохранение в базу

mysql_query(" INSERT INTO $name_t SET url='$url_pic' ");
где, $name_t имя таблицы (table_pic_url), $url_pic путь до картинки (либо динамик - название)

вывод из базы
$mysql_query=mysql_query("SELECT * FROM $name_t");
while($geo=mysql_fetch_array($mysql_query)){
statik_shablon="<tr><td><a href='www.site/ ".$geo['url_pic']." '>... </a>";
$result=$result."".statik_shablon;
};

rcc0023
06.08.2008, 10:58
$_FILES['picture']['name'] ?? корректная переменная?)

MafiaBoy3
06.08.2008, 11:02
Да.
Спасибо

Мне вот этот url непонятен
http://cs1476.vkontakte.ru/u12676108/a_a66ac0d9.jpg

u12676108 - это же не папка?

rcc0023
06.08.2008, 11:17
MafiaBoy3, разобрался с базой??

MafiaBoy3
06.08.2008, 11:18
да принцип понятен, но не ясно другое.

rcc0023
06.08.2008, 11:19
возможно и папка... под чего то определенное.
можешь все это u12676108/a_a66ac0d9.jpg в базу добавить ;)

rcc0023
06.08.2008, 11:20
MafiaBoy3, что не ясно!??

MafiaBoy3
06.08.2008, 11:23
Мне говорят что вконтакте есть всего несколько папок А не несколько миллионов. Это логично потому что иначе сервера бы накрылись. Но значит ли это то, что там в одной папке изображений может храниться несколько миллионов картинок?

u12676108/a_a66ac0d9.jpg
Это результат работы mod rewrite для Apache

MafiaBoy3
06.08.2008, 11:45
Конечно же понятно что фотки хранятся в папке.
Но такое я вижу в первый раз - u12676108/a_a66ac0d9.jpg
(где u12676108- это id юзера, а остальное имя картинки, сгенирированное скриптом конечно же)


Если я пишу скрипт фотоальбома то ведь он должен всегда выводить фотки из папки пользователя. В моём случае я использую БД, поэтому всякие циклы типа foreach отпадают, есть id пользователя в базе и нет папки. Так как тогда получилось это u12676108/a_a66ac0d9.jpg????

5triker
06.08.2008, 11:47
Но значит ли это то, что там в одной папке изображений может храниться несколько миллионов картинок?
а где им еще хванится то ?

rcc0023
06.08.2008, 12:14
Сделай выборку из списка (<selected name='dir'> папка один, два, три...)

выглядить то будет так:
mysql_query(" INSERT INTO $name_t SET url='$url_pic',dir='$dir' ");
где, $dir ето кака директория ()

вывод из базы
$mysql_query=mysql_query("SELECT * FROM $name_t");
while($geo=mysql_fetch_array($mysql_query)){

if($geo['dir']==1){$dir_n="u324jdsj";}
elseif($geo['dir']==2){$dir_n="u32dfsdsj";}
else{$dir_n="";}

statik_shablon="<tr><td><a href='www.site/".$dir_n."/".$geo['url_pic']." '>... </a></td>. ..";
$result=$result."".statik_shablon;
};

а вообще забивай в юрл и саму папку... чего парится то...

MafiaBoy3
06.08.2008, 12:19
rcc0023 чёто я не понял о чём ты говоришь?

rcc0023
06.08.2008, 12:22
видно u12676108 спец папка для того юзера.
вводи в базу такое значение u12676108/a_a66ac0d9.jpg !!!

rcc0023
06.08.2008, 12:24
Аль ти хочешь грабить картинки? с последующим просмотром на своем сайте????

Neoveneficus
06.08.2008, 12:26
Все что тебе нужно:
1) подробное объяснение
2) пример скрипта для загрузки изображений

http://phpclub.ru/detail/article/upload

3) то, что тебе нужно именно с mysql (просто из поста не понятно) - домашнее задание
к тому же там работа с mysql описана
не забываем про + ;)

MafiaBoy3
06.08.2008, 12:26
u12676108 спецпапка да?
То есть ты говоришь что... там для каждого пользователя своя папка. и получается >>>16.000.000 папок!!!

А хотя почему бы и нет? Значит мне тоже для каждогопользователя делать папку под его фотки!

Neoveneficus
06.08.2008, 12:36
Посмотри это:

http://phpclub.ru/detail/article/upload

1) подробное объяснение;
2) пример скрипта для загрузки изображений;

3) то, что тебе нужно именно с позиции mysql (просто из поста не понятно) - это домашнее задание.
К тому же там работа с mysql описана

m0nsieur
06.08.2008, 12:37
Перед тем как программить, тебе надо было бы изначально продумать, что будешь делать и концепцию построения своей соц. сети, а то ты на ходу придумываешь, которые могли бы отсеяться на стадии проектирования.

rcc0023
06.08.2008, 12:37
Говорю же возможно что так))) потому что не пользовался такими сайтами... да и желания регаца нет))) но если ти предложишь разместить у себя скриптик (с легальной структурой, моему порталу необходимы разные ip адреса), помогу написать. =)

MafiaBoy3
06.08.2008, 12:44
ага значит я правильно думал нужно всего то создавать после регистрации для каждого пользователя новую папку под его фотки.

5triker
06.08.2008, 13:08
ага значит я правильно думал нужно всего то создавать после регистрации для каждого пользователя новую папку под его фотки.

судя по всему ты ничего не понял

MafiaBoy3
06.08.2008, 15:21
$sql="UPDATE users SET (pic_url='$imgDir') WHERE id='$user_id'";
$result=mysql_query($sql);

Эти команды в скрипте выполняются, но когда я открываю phpmyAdmin то напротив поля pic_url нечего не стоит(оно просто пустое).

В чём может быть проблема?

mff
06.08.2008, 15:27
Сохраняй картинки прямо в базу в виде двоичного кода.

MafiaBoy3
06.08.2008, 15:31
mff
После вас.... ха-ха.

blaga
06.08.2008, 15:32
mod_rewrite епт.... вы чего?

MafiaBoy3
06.08.2008, 15:45
Разобрался оказывается если вы обновляете только одну запись, то не стоит использовать ( ). Я вообще офигел от этого!

MafiaBoy3
06.08.2008, 16:24
<IMG SRC=http://cs1476.vkontakte.ru/u12676108/a_a66ac0d9.jpg ALT ='' />

Вот это собственно мне и непонятно.
Может ли быть так что домен cs1476 сделан специально для 20.000.000 папок?
Если нет то как можно приблизительно восстановить выше приведённый url, изменив название скрипта?

blaga
06.08.2008, 16:34
имхо cs1476 это как раз реальная физическая папка где храниться файл a_a66ac0d9.jpg а u12676108 это ид пользователя тока и всего....

MafiaBoy3
06.08.2008, 16:37
blaga
помоги пожалуйста

Как мне такое же сделать,а?

bul.666
06.08.2008, 16:39
Почитай тут http://www.htaccess.net.ru/

blaga
06.08.2008, 16:40
зачем? не легче тупо складывать картинки в папку? а потом оттуда выводить? определенное количество картинок в папке дошло, создаешь новую папку и снова туда грузишь....

MafiaBoy3
06.08.2008, 16:44
blaga
определённое количество это сколько? Как мне 1.000.000 хранить?

5triker
06.08.2008, 16:57
ПРОЧИТАЙ БЛЯТЬ ХОТЬ ОДНУ КНИГУ ПО ПХП ПОТОМ СПРАШИВАЙ

ЧЕ ЗА ДИБИЛИЗМ ДЕЛАТЬ ТО ЧЕГО НИХУЯ НЕ УМЕЕШ

MafiaBoy3
06.08.2008, 17:07
Ты чё, а? Ты че? Чё ты? Я прочитал я полностью Котеров , Костарёв php 5 в подлиннике (>>1100 ст.)

И чё? Чё ты, а ? Чё ты? Ты чё я тебя помню нахрен

5triker
06.08.2008, 17:18
Я прочитал я полностью Котеров , Костарёв php 5 в подлиннике (>>1100 ст.)
значит ты баран если прочитал больше 1к страниц но даже понятия не имееш как это может работать , не то что сделать

MafiaBoy3
06.08.2008, 17:21
u fucking 5triker!

То что там написано я как раз и понимаю

Ты чё думаешь умнее меня, чё ты а? Чё думаешь хорошо в пшп играешь? Чтобы в книге было написано как оптимизировать сайт на посещаемость , я не видел, и чё?

5triker
06.08.2008, 17:24
че ты понимаеш епт ?
ты уже месяц постиш тут тупые вопросы из цикла "пишу свою соц сеть"

MafiaBoy3
06.08.2008, 17:29
Я постил вопросы в теме которая называется Php новичкам задаём вопросы, где написано "в этой теме новички могут задавать простые вопросы по php"

Чё ты,а? Чё ты?

5triker
06.08.2008, 17:33
ну если ты новичек и пешеш соц сеть которую обычно пишет группа опытных програмистов не дурак ли ты ?

MafiaBoy3
06.08.2008, 17:37
Чё опытных программистов? Чёёёёёёё группа, а может дивизион северо-западный?

Я пишу социальную сеть как если бы я писал сайт для школы, блин. Я не собираюсь её продавать, публиковать, раздвать. Это чисто проба пера, дурак блин!

5triker
06.08.2008, 17:42
пробовать нада на легких и средних вещах а не на соц сетях ,
как ты можеш ее написать если ты даже не понимаеш как она работает ?
тупо вставив куски кода котор те дают на форуме ты ничему не научишся

MafiaBoy3
06.08.2008, 17:46
я понимаю как работает социалка, анализирую принцип работы vkontakte.
Куски кода пишу сам. Готовым не пользуюсь потому что, возьмёшь что-нибудь а там этот fucking code igniter.

Да и vkontakte.ru сам по себе не большой проект на php. он большой по размере толпы.

5triker
06.08.2008, 17:48
как ты можеш понимать как работает социалка
если ты спрашиваеш как сделать фотогалерею и тп ? )))

MafiaBoy3
06.08.2008, 17:50
ну так правильно.
Я беру один модуль (пусть фотоальбом) и изучаю его.
Видно что на вконтакте он самописный

zythar
06.08.2008, 17:51
прекратите флуд быстроо.

5triker
06.08.2008, 17:54
это не флуд это высоко интелектуальная беседа ,

ну так правильно.
Я беру один модуль (пусть фотоальбом) и изучаю его.
Видно что на вконтакте он самописный

оО , блин я думал у них паблик скрипт стоит просто под дизайн подогнаный

MafiaBoy3
06.08.2008, 17:57
Поджёг..

Вот ты если альбом писать будещь чё у тебя умишек хватит без вопросов всё сделать да? Понятно что ты будешь смотреть готовое.

bul.666
06.08.2008, 17:58
5strike помойму ты сам нихрена не можешь, а если б и мог, то вместо тупоголовго бреда лучшеб помог парню!
---
Он чем хочет, тем и занимается! Тебя асолютно не должно волновать, с чего он начинает с нейронных сетей или фотогалереи. Он усердно работает над тем, что ЕМУ НРАВИТЬСЯ! Если тебе чтото не устраивает, просто не отвечай в этой теме!

5triker
06.08.2008, 18:01
Имею Мнение Х*** Оспориш
форум создан для обсуждения если тебе не нравится что я пишу - не читай

bul.666
06.08.2008, 18:06
Все что ты написал - флейм, обсуждение левой херни в тематическом разделе, что явл. нарушением правил форума.
если тебе не нравится что я пишу - не читай
Пиши по делу и адекватно

5triker
06.08.2008, 18:14
твои последние посты тут точно такой же флейм и нарушение правил

rcc0023
07.08.2008, 13:11
вы автора растроили...