2017-09-12 1 views
2

제 프로젝트에서 div 콘텐츠를 DB에 저장하고 싶습니다. 내용은 다음과 같습니다.Ajax로 DB에 div 콘텐츠를 저장하는 방법

<span>name:</span><input type="text" id="inputid" value="John"><br /> 

그래서 나는 그들을 성공적으로 가져 오기 위해 innerHTML을 선택했습니다. 그리고 Ajax를 사용하면 내용이 DB에 저장됩니다.

어제 저는 콘텐츠를 형식화하기 위해 stripslashes()를 호출해야하며 성공적으로 업데이트 될 수 있음을 발견했습니다.

하지만 오늘은 stripslashes()가 아무 것도하지 않았습니다. 여기

var slcId = $('#slcStNum').val(); 
var tmTgDvHtml=document.getElementById("timeTagDiv").innerHTML; 
$.ajax({ 
    dataType:'html', 
    type:"POST", 
    url:"get_ajax_csc_div.php", 
    data:{htmlCnt:tmTgDvHtml,slcId:slcId}, 
    success:function (data) 
    { 
     alert("test"); 
    } 
}); 

HTML 코드입니다 : 여기 내 JS 코드는 데이터 형 'HTML': 여기

<div id="timeTagDiv"><span>name:</span><input type="text" id="inputid" value="John"><br /></div> 

것은 내가 데이터 유형을 변경

<?php 
if(isset($_POST['htmlCnt'])) 
{ 
include("DB.php"); 
$htcnt=stripslashes(".$_POST['htmlCnt']."); 
$sql="update IDC SET stprocess='$htcnt' where id='".$_POST['slcId']."';"; 
$sel = $conn->exec($sql); 
} 
?> 

get_ajax_csc_div.php 코드를하다 'JSON '하지만 다시 실패했습니다. 누가 날 도울 수 있죠?

+0

모든 오류? – Baptiste

+0

오류가 있습니까 ?? 콘솔에서 – Gardezi

+1

아마도 그것은 인용 부호 때문에 $ _POST을 돌았 기 때문일 수도 있습니다. – Gardezi

답변

5

당신이 _POST[] 슈퍼 글로벌을 따옴표로 묶어서 문자열로 만들기 때문입니다. 콘솔에서

변경이

$htcnt = stripslashes($_POST['htmlCnt']); 
+0

'$ sql = "IDC SET stprocess = '$ htcnt'where id = '". $ _ POST [ 'slcId']. " '"; – proofzy

0

변경 사항은이

$htcnt = stripslashes(".$_POST['htmlCnt']."); 

get_ajax_csc_div.php

include("DB.php"); 

if(isset($_POST['htmlCnt'])) { 
    $htcnt = stripslashes($_POST['htmlCnt']); 
    $sql = "update IDC SET stprocess='$htcnt' where id='".$_POST['slcId']."'"; 
    $sel = $conn->exec($sql); 
} 
관련 문제