отправить данные из jscript на другой php - PullRequest
0 голосов
/ 25 октября 2018

Я создаю динамическую таблицу, такую ​​как:

 <form method="POST" action="recieve.php">
  <table>
   <thead>
    <th>Value</th>
    <th>Action</th>
   </thead>
   <tbody>
    <tr>
     <td><input type="hidden" name="value_original[0]" id="value_original[0]" value="20000">
       <input type="text" id="value[0]" name="value[0]"></td>
     <td><button type="button" class="btn btn-info add_input_button" title="Add" onclick="addFunction()"></td>
     </tr>
    </tbody>
   </table>
  </form>
  <button id="send" type="submit" class="btn btn-success" onclick="check()">Aceptar</button>

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

 <script>
   var value_original = [];
   var value = [];
   function check(){
    var j=0;
    var k=0;
    for(j;j<=i;j++){
     value_original[j] = document.getElementById('value_original['+j+']').value;
     value[j] = document.getElementById('value['+j+']').value;
     value_original[j]=Number(value_original[j]);
     value[j]=Number(value[j]);
     if(value[j]<value_original[j]){
      k++;
     }
    }
    if(k>0){
    //ask permission
     return false;
    }
    else{
     return true;
    }
   }
  </script>

У меня есть другой php с функцией add ($ data, $ username, $ password), гдеимя пользователя и пароль определяются во всплывающем окне разрешений с помощью sweetalert2, который в настоящее время работает, но мне нужно отправить эту информацию в recieve.php.

Как я могу это сделать?

Ответы [ 2 ]

0 голосов
/ 25 октября 2018

Другим способом было бы использовать Ajax:

     $.ajax({
        url: 'http://localhost/recieve.php?user=Me&pass=1234&data=whatever',
        dataType: 'json',
        async: true,
        success: function (PhpResponse)
        {              
           if (PhpResponse !== null) {                
              console.log(PhpResponse);                                         
           }
        }
     });

PHP должен иметь возможность получать и обрабатывать этот параметр, что-то вроде этого:

if (isset($_GET["user"]) && isset($_GET["pass"])  && isset($_GET["data"])) {    
   $GLOBALS['response'] = 'I got the data!!';
}
0 голосов
/ 25 октября 2018

Вместо возврата true отправьте форму в другой части, например:

if(k>0){
//ask permission
 return false;
}
else{
 $('form').submit();
}
...