Задать вопрос
  • В чем ошибка в передаче значения php переменной в код javascript?

    @sovlarus Автор вопроса
    Я именно это и подозревал - php переменная не передается в javascript.
    Первый вариант мне точно не подходит, поскольку, во-первых, я привел только часть javascript-кода, в действительности, он довольно большой и отвечает отнюдь не только за эту часть всего кода, но на него ссылаются и другие части.
    Второй тоже, как мне кажется (хотя я попробую), вряд ли сработает по той же причине, которую я изложил выше: форма с картинкой - только часть кода, там есть еще пара форм, у каждой из которых, по понятным причинам, свой id. А задумка состояла в том, чтобы одним submit обработать все формы разом.
  • Как правильно передать переменную из php в javascript?

    @sovlarus Автор вопроса
    Rsa97, я, видимо, как-то по особенному туплю... И как мне это сделать?
  • Как правильно передать переменную из php в javascript?

    @sovlarus Автор вопроса
    Алексей Тен, простите, а Вы точно полностью прочитали мой топик?
    В тексте по Ваше ссылке рекомендуется использовать синтаксис <script>name="<? echo $name; ?>"</script>
    В моем примере:
    printMessage('#'+<?php echo $$index_result_block';?>', data)

    printMessage - пользовательская функция, принимающая в качестве первого аргумента строку с идентификатором div, типа #id. В php фрагменте разметки html я определил переменную $index_result_block. Эту переменную я использовал для id блока в html разметке. Там все работает, проверял, просматривая код сгенерированной страницы. Но в javascript значение этой переменной тупо не передается. И это тоже проверял функцией document.write.
  • Как правильно передать переменную из php в javascript?

    @sovlarus Автор вопроса
    Lander, видимо не указал ))) Да, задумана. Я хочу использовать эти скрипты для вывода картинок в цикле с последующей возможностью замены по одной. Идентификатором картинки будет ключ цикла и, поэтому, для локализации конкретной картинки нужно обращаться к полям формы по уникальным id.
    Там, вообще дело не в самих картинках, все немного сложнее - я получаю массив из базы данных sql запросом, вывожу его в админской части. Задачи: дать возможность редактировать записи по одной, добавлять и удалять элементы потом апдейтить весь массив в базе данных.
    Показанная задачка реализует алгоритм загрузки картинок без перезагрузки страницы.
  • Как правильно передать переменную из php в javascript?

    @sovlarus Автор вопроса
    riot26, не работает. Не работает если даже
    var n = "#"+<?php echo $index_result_block; ?>; (или var n = "#"+"<?php echo $index_result_block; ?>")
    printMessage(n, data); (илиprintMessage('n', data) )
    Причем, если после var n... вставить document.write(n), то выдает правильную строку #result.
  • Как правильно передать переменную из php в javascript?

    @sovlarus Автор вопроса
    Алексей Тен, это хороши ресурс, я им пользуюсь, но он не решает задачу.
  • Как правильно передать переменную из php в javascript?

    @sovlarus Автор вопроса
    Так я об этом и пишу: "Если вывести значение, подставленное в функцию printMessage с помощью document.write, то результат: #[object HTMLDivElement]." Т.е. передается не переменная, а некий html элемент.
    Вопрос: как с этим бороться?
  • Как правильно передать переменную из php в javascript?

    @sovlarus Автор вопроса
    Андрей, а зачем мне делать возврат header'ом из php скрипта?
    Вообще, изначально задача стояла как замена картинки без перегрузки страницы.
    Общая структура такова:
    - есть html разметка;
    - есть php-обработчик в отдельном файле;
    - и есть js скрипт, который перехватывает событие нажатия на button, вызывает php-обработчик, загружает картинку в указанную директорию (в моем случае - image) и показывает ее в html разметке.
    В предлагаемом Вами решении я вернусь файл htm; разметки (в моем случае - index.php), но страница перезагрузится. Чего мне вообще не нужно.
  • Как передать новое значение в поле input?

    @sovlarus Автор вопроса
    Antony Tkachenko, изменил код по Вашей рекомендации. Получил в адресной строке браузера "admin.php?message={$message}". Как это мне поможет изменить картинку в форме и передать имя файла в поле input?
  • Как передать новое значение в поле input?

    @sovlarus Автор вопроса
    Arik, код точно работает. Но если не использовать header или другой вид переадресации, то браузер отобразит страницу img-uploaded.php и там и останется. При этом, поскольку код работает, то в функции выполняется запрос и передача файла, заполняется массив $_FILES. Глобальный массив, который доступен на любой странице сайта. Почему, в этом случае, он пустой на admin.php? Или он уничтожается при выходе из функции, которая его вызывает? И, в конце концов, как решается задача топика?
  • Как передать новое значение в поле input?

    @sovlarus Автор вопроса
    Arik,
    "header здесь используем для возврата ни страницу инициации скрипта"
  • Где ошибка в считывании методом POST?

    @sovlarus Автор вопроса
    Adamos, да, я это тоже видел и применял в первой версии кода. Но тут есть одна проблемка: я использую массив GlobalData не просто локально на одной странице (вообще говоря, рассматриваемый пример это часть админки сайта), но и на других.
    Подробнее говоря, приведенный кусок кода работает в папке (условно) public_html/admin/, определяя данные в базе, которые потом считываются (или передаются, как в приведенном случае) на странице public_html/index.php. Поэтому вес сыр-бор))) Хотя я и понимаю, что можно сильно упростить...
  • Где ошибка в считывании методом POST?

    @sovlarus Автор вопроса
    Stalker_RED, благодарю за глубокое замечание. Уверен, Вы профессионал и для Вас это простейшее объяснение. Но мне оно вообще ничего не сказало. Да и вряд ли можно ожидать, что человек, обратившийся со столь простым вопросом, разбирается в глубинах php.
    Но дело даже не в этом: все отвечающие дружно разбирают ошибки или недостатки кода, обращают внимание на неправомерное использование массивов и передачу данных через глобальные переменные. Но, по какому-то, видимо, недоразумению, никто не отвечает на сам вопрос топика: КАКОГО ХРЕНА В ОДНОМ СЛУЧАЕ ПОЛЕ ОБРАБАТЫВАЕТСЯ, А В ДРУГОМ НЕТ?
  • Где ошибка в считывании методом POST?

    @sovlarus Автор вопроса
    Adamos, благодарю за совет, но, поскольку я почти чайник, то не понимаю, как можно перегнать fetch_array. Создаваемый им массив сдыхает при выходе из функции, по крайней мере, он недоступен вне области видимости функции.
    Как, в таком случае, реализовать Ваш совет?
  • Где ошибка в считывании методом POST?

    @sovlarus Автор вопроса
    А зачем ":" в конце строки?
  • Где ошибка в считывании методом POST?

    @sovlarus Автор вопроса
    edward_freedom, насколько мне известно, вернуть из функции можно только одну переменную. Или массив.
  • Как передать переменную из скрипта php в index.php?

    @sovlarus Автор вопроса
    Игорь, спасибо! Не хочу тратить Ваше время, тем более, что я уже отказался от этой идеи ))) Оставил заглушку для сайта без формы обратной связи, поскольку уже через недельку загружу туда основной код и заглушка уже будет не нужна. А гнать трафик на заглушку - занятие бесперспективное )))
    Прошу прощения за отнятое у Вас время. Почему-то думал, что эта задача решается быстро и бескровно )))

    С уважением,
    Владимир
  • Как передать переменную из скрипта php в index.php?

    @sovlarus Автор вопроса
    Игорь, давайте еще раз.
    Я поубирал из кодов все лишнее и вот что осталось:
    index.php
    <?php
            global $ModalBodyText;
    ?>
             <body>
             <form role="form" id="MailForm" name="postaddress" action="save.php" method="post">
                 <div class="form-group row">
                     <label for="male-input" class="col-2 col-form-label my-auto form-label">Ваш E-mail</label>
                     <div class="col-5 my-auto">
                         <input class="col-12 form-control" type="text" value="" id="male-input" name="MailBox">
                     </div>
                      <span id="male-input" class="col-5 text_after_input my-auto">Данные не будут использованы для спам-рассылок</span>
                 </div>
                 <button type="button" id="send-mail" class="butn_send" data-toggle="modal" data-target="#SuccessEmailModal">Отправить</button>
                 <div class="modal fade" id="SuccessEmailModal" tabindex="-1" role="dialog" aria-labelledby="EmailModalLabel" aria-hidden="true">
                     <div class="modal-dialog" role="document">
                         <div class="modal-content">
                             <div class="modal-header">
                                 <button type="button" class="close" data-dismiss="modal" aria-label="Close"><span aria-hidden="true">&times;</span></button>
                             </div>
                             <div class="modal-body"><?php echo $ModalBodyText; ?></div>
                         </div>
                     </div>
                 </div>
             </form>
                     </div>
             </body>

    Отформатировал, как мог )))
    Соответственно, save.php:
    <?php
    
    require_once ('config.php'); //Забираем константы, прописанные для базы данных
    
    $bd_link = mysqli_connect(DB_HOST, DB_USER, DB_PASSWORD, DB_NAME); // соединяемся с базой данных
    if (mysqli_connect_errno()) { // проверка соединения
            printf("Не удалось подключиться: %s\n", mysqli_connect_error());
            exit();
    }
    if (!$bd_link->set_charset("utf8")) { // изменение набора символов на utf8
            printf("Ошибка при загрузке набора символов utf8: %s\n", $bd_link->error);
            exit();
    }
    
    $MailBox = $_POST['MailBox'];
    
    if (filter_var($MailBox, FILTER_VALIDATE_EMAIL) !== false)
    {
            $bd_insert_query = "INSERT INTO " . DB_TABLE . " (ID, mailbox) VALUES (LAST_INSERT_ID() , '" . $MailBox . "')";
            $result = mysqli_query($bd_link, $bd_insert_query);
            header("Location: index.php?complete=success");
    }
    else
    {
            header("Location: index.php?wrong=email");
    }
    
    mysqli_close($bd_link); // закрываем подключение
     ?>


    Куда в такой конфигурации вставлять $_GET в index.php?
  • Как передать переменную из скрипта php в index.php?

    @sovlarus Автор вопроса
    Игорь, не работает.
    Мало того, если ранее правильно введенный адрес заносился в таблицу БД, то после предложенных Вами исправлений даже это не происходит. Отсюда вывод: скрипт save.php просто не выполняется. Я прав?
  • Как передать переменную из скрипта php в index.php?

    @sovlarus Автор вопроса
    Игорь, header давно уже убрал, но у меня почему-то не работает.
    Результатом выполнения всего этого кода должно быть модальное окно, содержащее значение $ModalBodyText. Я размещал Ваш код с $_GET в разных местах кода в index.php. Во всех случаях, когда я размещал его внутри тегов выводится это уведомление и модальное окно выводится пустым. Если разместить код с $_GET после или даже после