2016-09-03 4 views
0

데이터로 작업하는 방법을 이해하려고 노력 중이므로 입력 필드에서 값을 가져 와서 json 파일에 쓰기를 시도하고 있지만 작동하지 않습니다.이 작업을 도와 주면 기쁠 것입니다. .입력 필드에서 값을 가져 와서 json 파일에 쓰는 방법은 무엇입니까?

HTML :

<form id="myForm"> 
    <label for="yourname">Name:</label> 
    <input type="text" name="name" placeholder="name" id="name"> 
    <label for="yourname">Last name:</label> 
    <input type="text" name="last-name" placeholder="last name" id="lastName"> 
    <input type="submit" value="send" id="btn"> 
</form> 

JS :

$(function() { 
    $("#myForm").submit(function() { 
     $.ajax({ 
      method: "POST", 
      url: "form.php", 
      data: $("#myForm").serialize(), 
      success: function(data) { 
       var name = $("#name").val(""); 
       var lastName = $("#lastName").val(""); 
      } 
     }); 
     return false; 
    }); 
}); 

PHP : 당신은 JSON에 쓸 수 없습니다

<?php 
$ToEmail = 'names.json'; 
$EmailSubject = 'форма'; 
$mailheader = "From: ".$_POST["email"]."\r\n"; 
$MESSAGE_BODY .= "Name: ".$_POST["name"].""; 
$MESSAGE_BODY .= "Last-Name: ".$_POST["last-name"].""; 
mail($ToEmail, $EmailSubject, $MESSAGE_BODY, $mailheader) or die ("Failure"); 
?> 
+0

당신이 할 수있는 ' 클라이언트 측에서 json으로 작성하십시오. json 세부 정보를 저장하는 데 서버를 사용하고 있습니까? –

+0

예, 서버를 사용합니다. –

+0

그럼 작동하지 않는 것은 무엇입니까? 어쩌면 서버 코드를 보낼 수도 있습니다. –

답변

1

자바 스크립트로 파일을 직접. 이 작업을 수행하는 PHP 스크립트를 작성한 다음이 PHP 스크립트에 POST 요청을 보내야합니다.

편집 : 다음은 매우 간단한 스크립트입니다.

<?php file_put_contents("names.json","{\"name\":\"".$_POST["name"]."\",\"last-name\":\"".$_POST["last-name"]."\"}",FILE_APPEND); ?> 
+0

PHP 코드의 가장 간단한 버전을 써주시겠습니까? –

1

을 시도해보십시오이

<?php 

$inputArray = array(
    'name' => $_POST["name"], 
    'last-name' => $_POST["last-name"], 
    'email'=>$_POST["email"] 
); 
$myfile = fopen("myfile.json", "w") or die("Unable to open file!"); 
$text = json_encode($inputArray); 

fwrite($myfile, $text); 
fclose($myfile); 

echo "file saved"; 
?> 
+0

덕분에 잘 작동합니다 :) –

+0

Welcome mate. 그것은 내 대답을 수락하면 작동 :) –

관련 문제