B
B
barakuda12021-08-08 15:00:36
AJAX
barakuda1, 2021-08-08 15:00:36

How to pass another value and get it in ajax?

Hello.
Please tell me how to pass the value of the variable "my_value" and get it in another file in this code:

$('#upload_button').click(function( event ){
  event.stopPropagation(); // Остановка происходящего
  event.preventDefault();  // Полная остановка происходящего

  var my_value = $("#my_value").val();

  console.log(my_value);

  // Содадим данные формы и добавим в них данные файлов из files
  var data = new FormData();
  $.each( files, function( key, value ){
    data.append( key, value );
  });

  // Отправляем запрос
  $.ajax({
    url: './include/upload.php?uploadfiles',
    type: 'POST',
    data: data,
    cache: false,
    dataType: 'json',
    processData: false, // Не обрабатываем файлы (Don't process the files)
    contentType: false, // Так jQuery скажет серверу что это строковой запрос
    success: function( respond, textStatus, jqXHR ){
      // Если все ОК
      if( typeof respond.error === 'undefined' ){

          alert("Загружено");
      }
      else{
        console.log('ОШИБКИ ОТВЕТА сервера: ' + respond.error );
      }
    },
    error: function( jqXHR, textStatus, errorThrown ){
      console.log('ОШИБКИ AJAX запроса: ' + textStatus );
    }
  });
  
});


})(jQuery)
</script>


The file where I get the data:

<?php
// КАК ЗДЕСЬ ПОЛУЧИТЬ my_value ???????????????????
$data = array();

if( isset( $_GET['uploadfiles'] ) ){  
    $error = false;
    $files = array();

  // переместим файлы из временной директории в указанную
  foreach( $_FILES as $file ){
      
    $uniqdir = "files";
    $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;
        }
    }
  
    $data = $error ? array('error' => 'Ошибка загрузки файлов.') : array('files' => $files );
  
  echo json_encode( $data );
}

Answer the question

In order to leave comments, you need to log in

1 answer(s)
N
Nadim Zakirov, 2021-08-08
@zkrvndm

I understand correctly that you want to AJAX send some form from the page, but adding some additional data to the sent data?

Didn't find what you were looking for?

Ask your question

Ask a Question

731 491 924 answers to any question