Как в ajax передать переменную из php
Перейти к содержимому

Как в ajax передать переменную из php

  • автор:

Как передать переменную из ajax в php?

Есть вот такой javascript, который передает в файл action_cat переменную num. Как мне передать таким же образом переменную cat? Что, где дописать?

  

Отслеживать
задан 28 сен 2018 в 9:41
StopTussin StopTussin
83 7 7 бронзовых знаков

1 ответ 1

Сортировка: Сброс на вариант по умолчанию

 type: "GET", // Отправляем методом GET data: , cache: false, 

У вас всё для этого уже есть.

Отслеживать
ответ дан 28 сен 2018 в 9:51
2,132 9 9 серебряных знаков 17 17 бронзовых знаков

  • php
  • ajax
    Важное на Мете
Похожие

Подписаться на ленту

Лента вопроса

Для подписки на ленту скопируйте и вставьте эту ссылку в вашу программу для чтения RSS.

Дизайн сайта / логотип © 2024 Stack Exchange Inc; пользовательские материалы лицензированы в соответствии с CC BY-SA . rev 2024.2.6.4355

Как правильно передать переменную через ajax?

Здравствуйте.
У меня есть форма, я собираю данные и хочу обработать их через ajax через GET, но есть переменная, которая ранее отправлялась через POST, поменял алгоритм, но не понимаю, почему через такой принцип не работает.

Здесь привязываю id, чтобы получить данные из input и также загружаю файл:

  
  

Сам файл ajax, где принимаю данные и обрабатываю:

if($_GET['type'] == 'upload') < $my_name = $_GET['my_name']; $files = $_GET['files']; $data = array(); $error = false; $files = array(); // переместим файлы из временной директории в указанную foreach( $_FILES as $file )< $uniqdir = "keys"; $uniqfile = base_convert(uniqid().rand(0,2000000000), 10, 36); $uploaddir = './'.$uniqdir; // . - текущая папка где находится submit.php // Создадим папку если её нет if( ! is_dir( $uploaddir ) ) mkdir( $uploaddir, 0777 ); $type = pathinfo($file['name'], PATHINFO_EXTENSION); $file_name = $uniqfile .'.'. $type; if( move_uploaded_file( $file['tmp_name'], "$uploaddir/$file_name" ) )< $files[] = realpath( "$uploaddir/$file_name" ); >else < $error = true; >// Здесь я получаю в переменную имя файла, чтобы сохранить $keys_file = $file_name; > $data = $error ? array('error' => 'Ошибка загрузки файлов.') : array('files' => $files ); echo json_encode( $data ); // Сохраняю в базу данных $save = R::dispense('data'); $save->my_name = $my_name; $save->keys_file = $keys_file; R::store($save); >

Данные из input с успешно сохраняются в базе данных.
Алгоритм сохранения файла на сервере также верный — работает, но через POST.
Проблема в том, что переменную files раньше передавал через POST, а сейчас получаю через GET.

Почему данный метод работает для а для files отказывается работать или я где-то допустил ошибку?

Цель: соблюдая подобную структуру для удобства, сохранить данные от my_name и название файла в базу данных, так и загрузить этот файл на сервер.

Помогите разобрать проблему.
Данные из files в файл ajax передаются пустыми.

  • Вопрос задан более двух лет назад
  • 672 просмотра

4 комментария

Простой 4 комментария

Передать переменную из index.php через ajax в handler.php и обратно

Author24 — интернет-сервис помощи студентам

Пытаюсь разобраться в основах основ. Есть три файла: index.html, ajax.html и handler.php.
1. При клике на тексте, нужно передать переменную text в handler.php через ajax.
2. Вывести, то, что передали
3. Затем передать переменную name из файла handler.php в index.php и снова вывести, что получили с помощью js.
index.php:

1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19
      Document  
Кликни сюда
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
$(function() { $('.text').on('click', function (event) { /* event.preventDefault(); */ var errors = false; if( !errors ){ let text = $('.text'); $.ajax({ method: 'GET', url: 'handler.php', data: { key1: text, }, success: function (res) { console.log(res); }, error: function (xhr, textStatus, errorThrown) , }); }; }); });

handler.php:

1 2 3 4
 $name='Юрий'; echo '$_GET['key1'], $name'; ?>

94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
Ответы с готовыми решениями:

Через ajax в url:’ajax.php’, нужно передать одну переменную, и значение radio кнопки
Как значение radio передать я разобрался, а вот как еще переменную со страницы кинуть в url.

Вытащить переменную из цикла PHP в функцию JS, и через AJAX обратно в PHP
Здравствуйте! Моя задача сделать форму обратной связи, но не самую простую. Изначально на форме.

Передать через Ajax php переменную
Со страницы авторизации, идет перенаправление на главную страницу. Все данные о пользователи.

Эксперт PHP

3836 / 3183 / 1338
Регистрация: 01.08.2012
Сообщений: 10,803

ЦитатаСообщение от maks_7 Посмотреть сообщение

ЦитатаСообщение от maks_7 Посмотреть сообщение

url: ‘handler.php’,

Всегда указывайте абсолютные пути, например /ajax.js

ЦитатаСообщение от maks_7 Посмотреть сообщение

var username = »;

Откуда взялась переменная $name?

ЦитатаСообщение от maks_7 Посмотреть сообщение

var username

ЦитатаСообщение от maks_7 Посмотреть сообщение

Разные названия переменных.

ЦитатаСообщение от maks_7 Посмотреть сообщение

let text = $(‘.text’);

ЦитатаСообщение от maks_7 Посмотреть сообщение

По идее нужно подставлять $(‘.text’).text()

ЦитатаСообщение от maks_7 Посмотреть сообщение

echo ‘$_GET[‘key1′], $name’;

ЦитатаСообщение от maks_7 Посмотреть сообщение

В целом — действуйте поэтапно. Берём первый пункт:

ЦитатаСообщение от maks_7 Посмотреть сообщение

1. При клике на тексте, нужно передать переменную text в handler.php через ajax.

Добейтесь, чтобы по клику переменная передавалась в скрипт. Проверить это можно во вкладке Network в консоли браузера. Как увидите, что GET-параметр корректно передаётся — переходите к следующему шагу.

87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
Помогаю со студенческими работами здесь

Отправить массив из php(handler, сервер) в php(ajax, клиент)
Дело вот какое: имеется база сотрудников. Клиенту в браузер выдаю список (select). При выборе.

Передать массив в формате JSON из AJAX в PHP и обратно
Здравствуйте! Помогите пожалуйста разобраться. Нужно передать массив из AJAX в PHP, а потом.

Передать переменную из php в ajax
Все привет,есть два скрипта php и ajax,находятся они не на одной странице,мне нужно передать.

Как послать запрос из index.php файла в order.php файл, и из него принять обратно ответ?
Как послать post-запрос из index.php файла в order.php файл, и из него принять обратно json-ответ.

Передать результат успешного выполнения Ajax на jQuery в php переменную
Пожалуй одна из самых тривиальных задач для профи и одна из самых сложных для понимания для.

Передать через AJAX в PHP двумерный массив
Добрый день. Есть примерно такой код: var range = , sliderValues = ; . sliderValues = range;.

Или воспользуйтесь поиском по форуму:

Как передать массив из php в js ajax

Чтобы ajax мог получить данные, он должен быть выполнен запрос. Т.е. со стороны бекенда (php) должен быть обработчик, который отдаст нужные данные, например в виде json В примитивнейшем способе это выглядит так.

 $json = json_encode($data); header('Content-type: application/json'); echo $json; exit; 

Современные фреймворки позволяют отдать массив, который будет автоматом преобразован в json для ajax

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *