извлечение значения переменной div в базе данных

#php #database #variables #microphone

#php #База данных #переменные #микрофон

Вопрос:

Я пытаюсь получить значение переменной div (height), чтобы поместить его в таблицу базы данных в режиме реального времени (мне это абсолютно необходимо). Значение высоты реагирует с микрофоном устройства. Я бы кричал в микрофон компьютера и видел результат на другом компьютере. Есть ли простой способ сделать это?

Спасибо.

РЕДАКТИРОВАТЬ: На самом деле я возвращаю информацию о звуке с помощью jRecorder (sajithmr.me/jrecorder-jquery ). Высота div эквивалентна амплитуде крика. Я бы поместил значение этой высоты в простую таблицу.

Комментарии:

1. Да? Как мы перешли от разговоров о высотах разделения к крикам в микрофон? Какое отношение эти два имеют друг к другу вообще?

2. Вы могли бы использовать ajax и публиковать новую высоту на другой странице, которая сохраняет ее в базе данных всякий раз, когда ваш div изменяет размер.

3. Представляет ли div частотный срез для измерения амплитуды или что-то в этом роде?

4. @Bastien: пожалуйста, предоставьте больше полезной информации по вашему вопросу. По крайней мере, образец HTML-кода.

Ответ №1:

Вам нужно будет добавить туда немного JavaScript. Я буду использовать jQuery в своих примерах.

Чтобы получить высоту div, вы можете использовать getClientRects .

 var height = $("#yourdiv")[0].getClientRects()[0].height; //For IE, substract the bottom property from the top property
  

Чтобы отправить его на сервер, вы можете использовать AJAX

 $.post("yourpage.php", {height: height});
  

Затем на странице PHP вашего сервера вы можете извлечь значение и сохранить его в базе данных:

 $height = $_POST['height'];
  

Теперь у вас есть значение в вашей базе данных. Чтобы другой клиент мог это увидеть, вам нужно создать страницу, на которой отображается последнее значение, и опрашивать эту страницу с помощью AJAX с заданным интервалом, чтобы получить значение и обновить свой div .

Простого способа сделать это нет. Это самое простое, что я мог придумать. Для этого все еще требуется хорошее знание JavaScript и AJAX. Если у вас есть какие-либо вопросы, оставьте комментарий.

Комментарии:

1. У меня всегда проблема с кодом, скриптом: <script> функция ajaxFunction(){ var height = $(«#levelbar»)[0].getClientRects()[0].height; $.post(«acceptfile.php «, {height: высота}); } </script> php: <?php $dbhost = «localhost»; $dbuser = «root»; $dbpass = «root»; $dbname = «cheer»; mysql_connect($dbhost, $dbuser, $dbpass); mysql_select_db($dbname) или die(mysql_error()); $height = $ _POST[‘height’]; $height = mysql_real_escape_string($height); $query = «ВЫБРАТЬ * С уровня, ГДЕ height = ‘$height'»; mysql_query($query) или die(mysql_error()); ?> Вы знаете, где моя ошибка?

2. @Бастьен, мне жаль. Если у вас возникла конкретная проблема, вам было бы лучше опубликовать ее в другом вопросе с кодом и тем, что он должен делать, и все такое.

Ответ №2:

PHP ничего не может сделать с вашим устройством (микрофоном), поскольку это программное обеспечение на стороне сервера, а не на стороне клиента

Однако я не понял вашу первую часть вопроса.

Ответ №3:

Используя плагин jRecorder, вы можете использовать функцию обратного вызова для определения уровня активности микрофона.

callback_activityLevel : Обратный вызов для возврата текущего уровня микрофонного входа (0-100)

Вы можете ознакомиться с примером по адресу: http://www.sajithmr.me/jrecorder/example1.html