2015-12-27 5 views
0

Я написал этот код для вызова php-функции из javascript, функция php просто печатает аргументы, которые он получает, но этот код не дает вывода и ничего не печатается, я использую google chrome браузер, любезная помощь.вызов функции из php-файла внутри javascript

index.html файл

<!DOCTYPE html> 
<html> 
    <head> 
     <script type="text/javascript" src="https://ajax.googleapis.com/ajax/libs/jquery/1.11.3/jquery.min.js"></script> 
     <script> 
      jQuery.ajax(
      { 
       type: "POST", 
       url: 'save.php', 
       dataType: 'json', 
       data: {functionname:'saveUser', arguments:["username", "password"]}, 

       success: function (obj, textstatus) { 
        if(!('error' in obj)) { 
         alert(obj.result); 
        } 
        else { 
         console.log(obj.error); 
        } 
       } 
      }); 
     </script> 
    </head> 
</html> 

save.php файл

<?php 

    header('Content-Type: application/json'); 
    if($_POST['functionname'] == 'saveUser') { 
     echo json_encode(Array(
      result => $_POST['arguments'][0] . ' ' . $_POST['arguments'][1] 
     )); 
    } 

?> 

выход enter image description here

+0

Где произносится 'functionname', которое вы отправляете по методу POST? –

+0

еще нет вывода –

+0

данные: {имя функции: 'saveUser', аргументы: ["username", "password"]}, –

ответ

2

Существует опечатка. вам не хватает процитировать массива ключей

попробовать это

echo json_encode(Array(
     'result' => $_POST['arguments'][0] . ' ' . $_POST['arguments'][1] 
     ^ ^
    )); 
1

У вас есть синтаксические ошибки в файле save.php. Приложите результат индекс по строкам. Сначала исправить его

if($_POST['functionname'] == 'saveUser') { 
    echo json_encode(Array(
     'result' => $_POST['arguments'][0] . ' ' . $_POST['arguments'][1] 
     /*^^^^*/ 
    )); 
} 

И в index.html просто добавьте ниже коды в успех ajax.

success: function (obj, textstatus) { 
    if(!('error' in obj)) { 
     document.write(obj.result); //This line 
     alert(obj.result); 
    } 
    else { 
     console.log(obj.error); 
    } 
} 
Смежные вопросы