Форум программистов, компьютерный форум, киберфорум
PHP: базы данных
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
 
Рейтинг 4.75/8: Рейтинг темы: голосов - 8, средняя оценка - 4.75
1 / 1 / 0
Регистрация: 10.05.2015
Сообщений: 133

Добавление в базу данных аудиозаписей

28.05.2017, 18:16. Показов 1746. Ответов 20
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
ребят, кто разбирается с файлами в php, а конкретней с добавлением в базу данных аудиозаписей, прошу уделить время, нужно как то разобраться, а я никак не пойму, изучал, пробовал, но все безуспешно, нужна помощь, может как то в лс обсудить
0
IT_Exp
Эксперт
34794 / 4073 / 2104
Регистрация: 17.06.2006
Сообщений: 32,602
Блог
28.05.2017, 18:16
Ответы с готовыми решениями:

Добавление данных из нескольких текстовых полей в базу данных
Добрый день. С толкнулся со следующей проблемой: У меня есть форма в которой генерируется некое количество текстовых полей, оно всегда...

Добавление данных в базу данных во время функции printf()
Привет всем! У меня возникла проблема. Задача такая: нужно принять данные с одной таблицы в базе данных и после подтверждения их на...

Добавление записи в базу данных и считывание из базы данных
Здравствуйте! Знаю, что эти вопросы поднимались уже тысячи раз, но помогите пожалуйста. Написала код добавления записи в БД. Сколько...

20
313 / 312 / 221
Регистрация: 11.07.2015
Сообщений: 1,107
29.05.2017, 17:07
Файлы можно хранить бинарно в БД, а можно на диске.
0
 Аватар для fanatikus
1932 / 1523 / 703
Регистрация: 17.11.2012
Сообщений: 6,585
29.05.2017, 21:39
Цитата Сообщение от vladislav123123 Посмотреть сообщение
а конкретней с добавлением в базу данных аудиозаписей,
записи на сервере, в базе ссылки на них
0
1 / 1 / 0
Регистрация: 10.05.2015
Сообщений: 133
30.05.2017, 20:27  [ТС]
fanatikus, записал на сервер файл, это получилось, а как ссылку сделать не знаю, вот что писал:
PHP
1
2
3
4
5
6
7
8
9
$random = rand(1000000, 9999999);   
    $audios = $random.".mp3";
    $result = mysql_query("SELECT audio FROM users WHERE id='$id_user'");
    $audio = mysql_fetch_array($result);
    
    $up = mysql_query("UPDATE users SET audio='$audios' WHERE id='$id_user'");
    if ($up == true) {
        echo "<br><b><p>Данные успешно внесены в базу!!!</p></b>"; 
    }
0
576 / 514 / 253
Регистрация: 26.09.2010
Сообщений: 2,603
30.05.2017, 20:36
PHP
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
$file = $_FILES['attach']['name'];
if (!empty($file)) {
    $filetype=$_FILES['attach']['type'];
    $file_ext = strrchr($file, '.');
    $whitelist = array(".mp3"); 
    
    if (!(in_array($file_ext, $whitelist))) {
        echo 'Вы пытаетесь загрузить запрещенный формат файла';
    }else {
        $tmp_name = $_FILES["attach"]["tmp_name"];
        $file = basename($_FILES["attach"]["name"]);
        //директория загрузки
        $uploaddir = "/mail_attach/";
        //новое имя
        $apend=date('YmdHis').rand(100,1000).$file_ext;
        //путь к файлу
        $uploadfile = "$uploaddir$apend";
        $file_upload = move_uploaded_file($tmp_name, $_SERVER[DOCUMENT_ROOT].'/'.$uploadfile);
        
        
        $result = mysql_query("SELECT audio FROM users WHERE id='$id_user'");
        $audio = mysql_fetch_array($result);
        
        $up = mysql_query("UPDATE users SET audio='".$uploaddir."' WHERE id='".$id_user."'");
        if ($up == true) {
            echo "<br><b><p>Данные успешно внесены в базу!!!</p></b>"; 
        }
    }
}
0
1 / 1 / 0
Регистрация: 10.05.2015
Сообщений: 133
30.05.2017, 20:47  [ТС]
Виталюска, вот что он в бд сохраняет:
Изображения
 
0
313 / 312 / 221
Регистрация: 11.07.2015
Сообщений: 1,107
30.05.2017, 21:58
PHP
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
$file = $_FILES['attach']['name'];
if (!empty($file)) {
    $filetype=$_FILES['attach']['type'];
    $file_ext = strrchr($file, '.');
    $whitelist = array(".mp3"); 
    
    if (!(in_array($file_ext, $whitelist))) {
        echo 'Вы пытаетесь загрузить запрещенный формат файла';
    }else {
        $tmp_name = $_FILES["attach"]["tmp_name"];
        //директория загрузки
        $uploaddir = "/mail_attach/";
        //новое имя
        $apend=date('YmdHis').rand(100,1000).$file_ext;
        //путь к файлу
        $uploadfile = "$uploaddir$apend";
        $file_upload = move_uploaded_file($tmp_name, $_SERVER[DOCUMENT_ROOT].'/'.$uploadfile);
             
        $up = mysql_query("UPDATE users SET audio='".$uploadfile."' WHERE id='".$id_user."'");
        if ($up == true) {
            echo "<br><b><p>Данные успешно внесены в базу!!!</p></b>"; 
        }
    }
}
0
1 / 1 / 0
Регистрация: 10.05.2015
Сообщений: 133
30.05.2017, 22:03  [ТС]
plohoyav, ты тот же код скинул
0
313 / 312 / 221
Регистрация: 11.07.2015
Сообщений: 1,107
30.05.2017, 22:10
ошибка в строке 19
0
1 / 1 / 0
Регистрация: 10.05.2015
Сообщений: 133
30.05.2017, 22:11  [ТС]
plohoyav, нужно на $apend поменять?
0
313 / 312 / 221
Регистрация: 11.07.2015
Сообщений: 1,107
30.05.2017, 22:15
$uploadfile
0
1 / 1 / 0
Регистрация: 10.05.2015
Сообщений: 133
30.05.2017, 22:23  [ТС]
plohoyav, ну то бишь, $uploadfile поменять на $apend, так?
0
1 / 1 / 0
Регистрация: 10.05.2015
Сообщений: 133
30.05.2017, 22:31  [ТС]
просто если вставлять $uploadfile то он вместе с путем вставляется в базу, а если $apend, то без пути, сразу название.mp3. так как правильно то?
0
313 / 312 / 221
Регистрация: 11.07.2015
Сообщений: 1,107
30.05.2017, 22:31
$uploaddir поменять на $uploadfile
0
1 / 1 / 0
Регистрация: 10.05.2015
Сообщений: 133
30.05.2017, 22:31  [ТС]
plohoyav, просто если вставлять $uploadfile то он вместе с путем вставляется в базу, а если $apend, то без пути, сразу название.mp3. так как правильно то?
0
313 / 312 / 221
Регистрация: 11.07.2015
Сообщений: 1,107
30.05.2017, 22:49
без директории - экономия размера БД

с директорией - проще указывать путь к файлу в html коде
0
1 / 1 / 0
Регистрация: 10.05.2015
Сообщений: 133
30.05.2017, 22:51  [ТС]
plohoyav, кстати, по поводу вывода этой аудиозаписи, я написал так:
PHP
1
2
3
4
5
6
7
8
9
10
<?php
                    if(isset($login) AND isset($password)){
                        if($result['audio'] == ''){
                            $audio = "У данного пользователя нет трека!";
                        }else{
                            $track = $result['audio'];
                        }
                        echo "<source src='audio/".$track."' type='audio/mp3'></source>";
                        
                    }?>
но он выводить не хочет, пишет вроде как null через var_dump()
0
313 / 312 / 221
Регистрация: 11.07.2015
Сообщений: 1,107
30.05.2017, 23:42
Может быть $result содержит null в поле audio

Проверка
PHP
1
echo '<pre>'.var_export($result,1).'</pre>';
0
1 / 1 / 0
Регистрация: 10.05.2015
Сообщений: 133
31.05.2017, 00:22  [ТС]
plohoyav, да, он действительно содержит null, что делать?
0
313 / 312 / 221
Регистрация: 11.07.2015
Сообщений: 1,107
31.05.2017, 08:34
PHP
1
2
3
4
5
6
if(empty($result['audio'])){
   echo "У данного пользователя нет трека!";
}else{
   $track = $result['audio'];
   echo "<audio controls><source src='audio/".$track."' type='audio/mp3'></source></audio>";
}
1
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
BasicMan
Эксперт
29316 / 5623 / 2384
Регистрация: 17.02.2009
Сообщений: 30,364
Блог
31.05.2017, 08:34
Помогаю со студенческими работами здесь

Добавление данных в базу данных из зависимых списков
Сделала зависимые списки, в которых берутся данные из базы. Нужно, чтобы выбранные данные вставлялись в таблицу базы данных. В моем...

Добавление в базу данных
Здравствуйте! Помогите пожалуйста!!! Вот моя база данных: -- Table structure for table `Lic_scheta` -- CREATE TABLE IF NOT...

Добавление данных в базу
Доброго времени суток! Балуясь дома столкнулся с проблемой: Не добавляются данные в БАЗУ. 100500 раз перепроверял но ошибку не нашел. ...

Добавление в базу данных
Мне нужно, чтоб данные, введенные пользователем на сайте заносились в базу. Пишу вот такое: $nomer=$_POST; $first_date=$_POST; ...

Добавление в базу данных
Пожалуйста, помогите разобраться с кодом. Пытаюсь добавить в базу новую запись. Форма: &lt;div&gt; &lt;p...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
20
Ответ Создать тему
Новые блоги и статьи
Thinkpad X220 Tablet — это лучший бюджетный ноутбук для учёбы, точка.
Programma_Boinc 23.12.2025
Рецензия / Мнение/ Перевод Нашел на реддите интересную статью под названием The Thinkpad X220 Tablet is the best budget school laptop period . Ниже её машинный перевод. Thinkpad X220 Tablet —. . .
PhpStorm 2025.3: WSL Terminal всегда стартует в ~
and_y87 14.12.2025
PhpStorm 2025. 3: WSL Terminal всегда стартует в ~ (home), игнорируя директорию проекта Симптом: После обновления до PhpStorm 2025. 3 встроенный терминал WSL открывается в домашней директории. . .
Как объединить две одинаковые БД Access с разными данными
VikBal 11.12.2025
Помогите пожалуйста !! Как объединить 2 одинаковые БД Access с разными данными.
Новый ноутбук
volvo 07.12.2025
Всем привет. По скидке в "черную пятницу" взял себе новый ноутбук Lenovo ThinkBook 16 G7 на Амазоне: Ryzen 5 7533HS 64 Gb DDR5 1Tb NVMe 16" Full HD Display Win11 Pro
Музыка, написанная Искусственным Интеллектом
volvo 04.12.2025
Всем привет. Некоторое время назад меня заинтересовало, что уже умеет ИИ в плане написания музыки для песен, и, собственно, исполнения этих самых песен. Стихов у нас много, уже вышли 4 книги, еще 3. . .
От async/await к виртуальным потокам в Python
IndentationError 23.11.2025
Армин Ронахер поставил под сомнение async/ await. Создатель Flask заявляет: цветные функции - провал, виртуальные потоки - решение. Не threading-динозавры, а новое поколение лёгких потоков. Откат?. . .
Поиск "дружественных имён" СОМ портов
Argus19 22.11.2025
Поиск "дружественных имён" СОМ портов На странице: https:/ / norseev. ru/ 2018/ 01/ 04/ comportlist_windows/ нашёл схожую тему. Там приведён код на С++, который показывает только имена СОМ портов, типа,. . .
Сколько Государство потратило денег на меня, обеспечивая инсулином.
Programma_Boinc 20.11.2025
Сколько Государство потратило денег на меня, обеспечивая инсулином. Вот решила сделать интересный приблизительный подсчет, сколько государство потратило на меня денег на покупку инсулинов. . . .
Ломающие изменения в C#.NStar Alpha
Etyuhibosecyu 20.11.2025
Уже можно не только тестировать, но и пользоваться C#. NStar - писать оконные приложения, содержащие надписи, кнопки, текстовые поля и даже изображения, например, моя игра "Три в ряд" написана на этом. . .
Мысли в слух
kumehtar 18.11.2025
Кстати, совсем недавно имел разговор на тему медитаций с людьми. И обнаружил, что они вообще не понимают что такое медитация и зачем она нужна. Самые базовые вещи. Для них это - когда просто люди. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2025, CyberForum.ru