javascript
1$(function(){ 2 $("#send").on('click',function(){ 3 var ary_data = {}; 4 ary_data.userid = $('input[name="id"]').val(); 5 ary_data.product = $('input[name="product"]').val(); 6 ary_data.color = $('input[name="color"]').val(); 7 send_data=JSON.stringify(ary_data); 8 $.ajax({ 9 type:"POST", 10 url:".send.php", 11 dataType : "json", 12 data:send_data, 13 cache: false, 14 processData: false, 15 contentType: false, 16 }).done(function(data){ 17 data.forEach(function(x){ 18 Object.entries(x).forEach(y=>{ 19 $("#res").append('キー:'+y[0]+' :値:' +y[1]+"<br/>"); 20 }); 21 }); 22 }).fail(function(XMLHttpRequest, textStatus, errorThrown){ 23 alert(errorThrown); 24 }); 25 }); 26 }); 27
php
1<?php 2$json = file_get_contents("php://input"); 3$json_data = json_decode($json, true); 4$ID = $json_data['userid']; 5$product = $json_data['product']; 6$color = $json_data['color']; 7$str="ID={$ID},product={$product},color={$gcolor}"; 8 9$fp = fopen("product.txt", "a"); 10 fwrite($fp, $str . PHP_EOL); 11 fclose($fp); 12 13 $fp=fopen("product.txt","r"); 14 while(($data=fgetcsv($fp,1024))!==false){ 15 $tmp=&$datas[]; 16 foreach($data as $x){ 17 $y=explode("=",$x); 18 $tmp[trim($y[0])]=trim($y[1]); 19 } 20 } 21 unset($tmp); 22 fclose($fp); 23 $data = json_encode($datas); 24 echo $data; 25
postでデータを送信し、txtファイルに登録しているのですが
txtファイルへの入力はきちんと id=1,product=pen,color=red
id=2,product=pen,color=green
といったように上手く登録できますが、これをjsで表示しようとすると
キー:ID :値:1
キー:product :値:pen
キー:color :値:red
キー:ID :値:2
キー:product :値:pen
キー:color :値:green
キー:ID :値:1
キー:product :値:pen
キー:color :値:red
キー:ID :値:2
キー:product :値:pen
キー:color :値:green
キー:ID :値:3
キー:product :値:pen
キー:color :値:black
といったように前回の表示分にプラスして表示されます。どうすれば消せますか?
回答1件
あなたの回答
tips
プレビュー