За последние 24 часа нас посетили 17820 программистов и 1646 роботов. Сейчас ищет 861 программист ...

Как добавить регистрацию посетителей на сервис ?

Тема в разделе "PHP и базы данных", создана пользователем Leonid777, 28 апр 2021.

  1. Leonid777

    Leonid777 Новичок

    С нами с:
    12 ноя 2020
    Сообщения:
    13
    Симпатии:
    0
    Как можно добавить простую регистрацию пользователей для сервиса ?
    index.php
    <?php
    require_once './speechkit.php';
    require_once './helpers.php';
    require_once './YandexIamToken.php';
    require_once './config.php';
    ?>;

    <!doctype html>
    <html lang="en">
    <head>
    <!-- Required meta tags -->
    <meta charset="utf-8">
    <meta name="viewport" content="width=device-width, initial-scale=1, shrink-to-fit=no">

    <!-- Bootstrap CSS -->
    <link rel="stylesheet" href="https://cdn.jsdelivr.net/npm/bootstrap@4.6.0/dist/css/bootstrap.min.css" integrity="sha384-B0vP5xmATw1+K9KRQjQERJvTumQW0nPEzvF6L/Z6nronJ3oUOFUFpCjEUQouq2+l" crossorigin="anonymous">

    <title>Яндекс SpeechKit</title>
    </head>
    <body>

    <div class="container">
    <h3 class="text-center">Преобразовать текст в речь</h3>
    <form method="post">
    <div class="row justify-content-center">
    <div class="col-md-4">
    <div class="form-group">
    <label for="speechLang">Выберите язык:</label>
    <select class="form-control form-control-sm" name="speechLang" id="speechLang">
    <option value="ru-RU">Русский</option>
    <option value="en-US">Английский</option>
    <option value="tr-TR">Турецкий</option>
    </select>
    </div>
    </div>
    <div class="col-md-4">





    </div>
    </div>
    <div class="row justify-content-center">
    <div class="col-md-8">
    <div class="form-group">
    <label for="textToSpeach">Введите текст:</label>
    <textarea class="form-control" name="textToSpeach" id="textToSpeach" rows="5"></textarea>
    </div>
    <button type="submit" name="btnTextToSpeech" class="btn btn-primary">Преобразовать!</button>


    <?php
    if (filter_input(INPUT_POST, 'btnTextToSpeech') !== null) // если нажата кнопка
    {
    $errorMessage = "";
    $successMessage = "";
    $text = filter_input(INPUT_POST, 'textToSpeach'); // получаем текст для перевода в речь
    if (!trim($text))
    {
    $errorMessage = makeErrorMessage("Введите текст!");
    }

    if (!$errorMessage) {
    // по QAuth-токену получаем действующий IAM-токен
    $iamToken = YandexIamToken::getToken(CONFIG['QAuth']);
    if(!$iamToken)
    {
    $errorMessage = makeErrorMessage(YandexIamToken::getErrorInfo());
    }
    }

    if (!$errorMessage) {
    $lang = filter_input(INPUT_POST, 'speechLang'); // язык
    $fileName = date('Y-m-d-H-i-s') . '.ogg'; // имя файла
    // в конструктор передаем IAM-токен язык и имя файла с относительным путем
    $speechKit = new SpeechKit($iamToken);
    //получаем речь из текста
    if($speechKit->getSpeech($text, $lang, 'speeches/' . $fileName))
    {
    $successMessage = makeSuccessMessage("Текст успешно преобразован в речь и записан в файл '$fileName'");
    } else {
    $errorMessage = makeErrorMessage($speechKit->getErrorInfo());
    }
    }
    }
    ?>
    <div class="my-3">
    <?php
    if($errorMessage)
    {
    echo $errorMessage;
    }
    if($successMessage)
    {
    echo $successMessage;
    }
    ?>
    </div>
    <div class="my-3">
    <table class="table">
    <tbody>
    <?php
    $files = getSpeechFiles('speeches');
    foreach ($files as $file) {
    // если это только что полученный файл, подсветим строку
    $tr = $file === $fileName ? '<tr class="table-warning">' : '<tr>';
    $tr .= "<td>$file</td>";
    $tr .= "<td><audio src='speeches/$file' controls></audio></td>";
    $tr .= '</tr>';
    echo $tr;
    }
    ?>
    <tr>
    <td>Mark</td>
    <td>Otto</td>
    </tr>
    </tbody>
    </table>
    </div>


    </div>
    </div>
    </form>


    <a href="view_stat.php">Смотреть статистику</a>

    </div>

    <script src="https://code.jquery.com/jquery-3.5.1.slim.min.js" integrity="sha384-DfXdz2htPH0lsSSs5nCTpuj/zy4C+OGpamoFVy38MVBnE+IbbVYUew+OrCXaRkfj" crossorigin="anonymous"></script>
    <script src="https://cdn.jsdelivr.net/npm/bootstrap@4.6.0/dist/js/bootstrap.bundle.min.js" integrity="sha384-Piv4xVNRyMGpqkS2by6br4gNJ7DXjqk09RmUpJ8jgGtD7zP9yug3goQfGII0yAns" crossorigin="anonymous"></script>
    </body>
    </html>
     
  2. ADSoft

    ADSoft Старожил

    С нами с:
    12 мар 2007
    Сообщения:
    3.866
    Симпатии:
    753
    Адрес:
    Татарстан
    тебе уже не раз намекали, и открытом текстом говорили:
    - оформляй код в соответствующих тегах
    - учись пользоваться гуглом/яндексом ... чем там религия позволяет

    то что ты просишь простую регистрацию, подразумевает твои знания не на уровне копи/паста.... php, mysql, html как минимум
    так что - изучай.... делай
     
  3. Leonid777

    Leonid777 Новичок

    С нами с:
    12 ноя 2020
    Сообщения:
    13
    Симпатии:
    0
    "учись пользоваться гуглом/яндексом ... чем там религия позволяет" - там устаревшая информация
     
  4. ADSoft

    ADSoft Старожил

    С нами с:
    12 мар 2007
    Сообщения:
    3.866
    Симпатии:
    753
    Адрес:
    Татарстан
    Да ладно? А у вас супер-пупер современное что-то? Азы php/mysql/js хоть 10 летней давности вам вполне подойдут
     
  5. Leonid777

    Leonid777 Новичок

    С нами с:
    12 ноя 2020
    Сообщения:
    13
    Симпатии:
    0
    Да много ошибочной информации и устаревшей. Не для каждого сервера можно использовать php
     
  6. ADSoft

    ADSoft Старожил

    С нами с:
    12 мар 2007
    Сообщения:
    3.866
    Симпатии:
    753
    Адрес:
    Татарстан
    без комментариев.... по моему именно на 99% и можно как раз.... ну а так - можно постараться найти и без поддержки.
    А если это действительно сервер, а не шаред хостинг - так там вообще, что поставите -то и будет.

    P.S. а типа форум - то место где прям все самое свежее и крутое? )))) и главное за вас решат все...
     
  7. Leonid777

    Leonid777 Новичок

    С нами с:
    12 ноя 2020
    Сообщения:
    13
    Симпатии:
    0
    ну допустим есть у меня админ панель для сайта, я её по книгам написал на чистом php, мне бы хотелось что бы на неё посмотрели профессионалы и оценили, но здесь я смотрю не стоит этого делать
     
  8. Drunkenmunky

    Drunkenmunky Активный пользователь

    С нами с:
    12 авг 2020
    Сообщения:
    1.504
    Симпатии:
    283
    Зачем? Похвалить? Молодец.
    Недостатки или уязвимости выявить перед распространением? Раз не видите сами, то рано ещё.
     
  9. Leonid777

    Leonid777 Новичок

    С нами с:
    12 ноя 2020
    Сообщения:
    13
    Симпатии:
    0
    иногда критика бывает очень полезной
     
  10. Drunkenmunky

    Drunkenmunky Активный пользователь

    С нами с:
    12 авг 2020
    Сообщения:
    1.504
    Симпатии:
    283
    Указание на очевидные ошибки в безопасности - это не критика, а констатация факта.
    Если вы в принципе не представляете где в вашем коде могут быть уязвимости, то тут его даже смотреть не нужно - они там есть.
    Всё остальное - вкусовщина и опыт. Что-то может работать быстрее. Очень может быть. Само придет с опытом.