duanbin4847 2014-12-03 08:04
浏览 56

jQuery追加不使用json_encode

I'm trying to append an result from a database PHP insert using echo json_encode($results). I'm, getting all the values from the post back in the JSON but the appending is not working.

Here's the jQuery side:

$('#postsubmit').click(function(){
error = 0;
// get form data
post = $('#comments').val();
topicname = $('#topicName').val();
topicid = $('#topicID').val();
pageid = $('#pageID').val();
page = $('#page').val();
sendmail = $('#sendmail').val();
galleria_pointer = $('#galleria_pointer').val();
showstatus = $('#showstatus').val();
$(this).attr('disabled','disabled');

    if ($("#comments").val() == ''){
        $("#comments").css({ "border": "1px solid red"});
        $('.hideAdd').show();
        $(this).attr('enabled','enabled');

    }

 $.ajax({
  type: "POST",               
  url: "../foorumi/AjaxPost.php",
  dataType: 'text',
  data: "topicid="+topicid+"&pageid="+pageid+"&topicname="+topicname+"&page="+page+"&post="+encodeURIComponent(post)+"&sendmail="+sendmail+"&galleria_pointer="+galleria_pointer+
  "&showstatus="+showstatus,
  beforeSend : function(){  
     $("#loading_image").show();
     $("body").css("cursor", "wait");
  },
  error : function(XMLHttpRequest, textStatus, errorThrown){
     error = 1; 
  },
  success : function(data) {                    
     $("#loading_image").hide();
     $("body").css("cursor", "default"); 

    //alert(data);
        dataobject = $.parseJSON(data);
        var json_post_result = dataobject.post_result;
        var json_error_code = dataobject.errors;
        var json_topicname = dataobject.topicname;
        var json_postid = dataobject.postid;
        var json_topicid = dataobject.topicid;
        var json_pageid = dataobject.pageid;
        var url = dataobject.url;
        var json_showstatus= dataobject.showstatus;
        var json_post = dataobject.post;
        var json_dateNow = dataobject.sentNow;
        var json_galleria_pointer = dataobject.sentNow;
        var json_data_html = dataobject.data_html;

        var decoded = $("<div/>").html(json_data_html).text();

        //alert(decoded);
            if(json_post_result == true){
                url_to = url;
                //window.location.replace(url_to); 

                    $(".hideAdd").fadeOut("fast",function(){
                    $('#ShowNew').show();
                        $(".divWrapperAppend").append(decoded); 
                   });

            }

  }
});
});

And here's the PHP side:

$user_ = ($_SESSION['users_id']);
$post_single = utf8_decode($_POST['post']);
$pageid = $_POST['pageid'];
$topicid_ = $_POST['topicid'];
$topicname = $_POST['topicname'];
$page = $_POST['page'];
$galleria_pointer = ($_POST['galleria_pointer']);
$sendmail = ($_POST['sendmail']);
$showstatus = ($_POST['showstatus']);
$microseconds_ = ((double) microtime()) * 1000000;
$results = array();
$errors = '';
$data = array();

$sqluserinfo = "select u.username as username, u.userlevel, (SELECT 1 FROM userphotos up WHERE up.user_= '$user_' and defaultphoto = '1') as photonum 
,(SELECT count(1) FROM posts p1 WHERE u.users_id = p1.user_) as usermessagecount FROM users u WHERE u.users_id = '$user_'";
$sqlusersql = mysql_query($sqluserinfo);
$username = mysql_result($sqlusersql, 0, username);
$count_posts = mysql_result($sqlusersql, 0, usermessagecount);
$ulevel = mysql_result($sqlusersql, 0, userlevel);
$photonum = mysql_result($sqlusersql, 0, photonum);


$userSendMailSQL = "select *, (SELECT 1 from mail_topic where sendmail = '1' and user_ = '$user_' and theader_ = '$topicid_') as sendmail1 FROM mail_topic WHERE user_='$user_' and theader_ = '$topicid_' order by id";
$resultsqlquery = mysql_query($userSendMailSQL)or die(mysql_error());
$sendMailto = mysql_result($resultsqlquery, 0, sendmail1);


if ($post_single == "" || strlen(preg_replace('/\W/', '', $post_single)) < 5)
{
   $errors = 1;
}
if (!empty($errors)){

$data['errors']  = $errors;
$data['post_success'] = false;
$results = array("errors"=>$errors, "post_result" => $data['post_success']);
}
else{

$data['post_success'] = true;
$new_post = htmlspecialchars($post_single, ENT_QUOTES | ENT_SUBSTITUTE, 'ISO-8859-1');

$insert="insert into posts (topicID, user_, Post, editdate_, updatedmicrosec) values ('$topicid_','$user_','$new_post','editdate_','$microseconds_')";

    $timetoday = date("d.m.Y H:i:s");
    $dateNow = date_diff_as_text($timetoday,"now") . " sitten";

 //Insert data to db
 mysql_query($insert);


    $postid_ = mysql_insert_id();
 if ($sendmail > 0){
    sendmail($topicid_,$topicname,$user_,$postid_,$page);
 }
    updatelastread($topicid_);

    $tableStyle_ajax = 'postStyleThisDay';
    $tableStyleUser_ajax = 'postStyleThisDayUser';
    $tableStyleNoBorder_ajax = 'postStyleThisDayNoBorder';
    $styleBorder_ajax = 'style="min-height: 100%; border-right: 2px solid #87b1c8;"';
    $aid_ajax = '<a name="'.$postid_.'"></a>';
    $idcolor_ajax = 'color: #e82020; font-weight: bold;';
 $borderbottom_ajax = 'border-bottom: 2px solid #e82020;';
 $bordertop_ajax = 'border-top: 2px solid #e82020;';

  if ($photonum > 0)
  {
    $photodiv = ('<div style="width: 89px; border: 1px solid #dadada; padding: 3px; margin: 0px 5px 5px 0px;"><a href="../kayttajat/index.php?id='.$user_.'&album=1&img='.$galleria_pointer.'"><img src="../profiili/userAlbums/'.$folder.'/'.$thumbnail.'"" style="width: 85px; height: 55px; border: none; padding: 2px;"/></a></div>');
  }


 $data_html = ('
  <div id="'.$tableStyle_ajax.'" style="min-height: 30px; width: 885px; padding: 5px; margin-top: 5px; '.$bordertop_ajax.'>
  <div style="padding: 8px 5px 3px 5px; min-height: 20px; border-bottom: 1px solid #dadada; background-color: #f7fdff;">
  <div class="forumPostUser" style="float: left; width: 145px;"><a href="../kayttajat/index.php?id='.$user_.'>'.$username.'</a></div>
  <div style="float: left; padding-left: 5px; width: 640px;">L&auml;hetetty:&nbsp;'.$dateNow.'</div>
  <div style="float: left; padding-left: 5px; '.$idcolor_ajax.'">ID: '.$postid_.'</div>
  </div>
  </div>
  <div class="column" id="'.$tableStyleNoBorder_ajax.'" style="width: 130px; min-height: 65px; padding: 5px 5px 10px 5px;">
  '.$photodiv.'
  <div style="font-size: 11px;">Viestej&auml;: '.$count_posts.' kpl</div>
  <div style="font-size: 11px; padding-top: 3px;">Taso:&nbsp;'.$showstatus.'
  </div>
  </div>
  <div class="column" id="'.$tableStyleNoBorder_ajax.'" style="min-width: 5px; min-height: 65px; padding: 5px 5px 10px 5px;">
  <div>&nbsp;</div>
  </div>
  <div class="column" id="'.$tableStyleNoBorder_ajax.'" style="width: 730px; min-height: 65px; padding: 5px 5px 10px 5px;">
  <span style="font-size: 16px; line-height: 130%;">'.$new_post.'</span>
  </div>
  <div id="'.$tableStyle_ajax.'" style="min-height: 30px; width: 885px; padding: 5px 5px 5px 5px; margin-top: 5px; '.$borderbottom_ajax.'">
  <div style="padding: 8px 5px 3px 0px; min-height: 20px;">
  <div style="font-size: 12px; width: 155px; padding-top: 20px; float: left;" class="forumPostUser"><a href="#alkuun">alkuun</a></div>
  <div style="float: left; width: 300px; padding-top: 12px; border-top: 1px solid #dadada;">&nbsp;</div>
  <div style="float: left; width: 425px; padding-top: 5px; border-top: 1px solid #dadada;"><div style="float: left; margin-left: 240px;">
  <form method="post" action="index.php?id='.$pageid.'&show='.$topicid_ .'&page='.$page.'#quoted"><input type="hidden" name="postID" value="'.$postid_.'" />
  <input type="hidden" name="lainaa" value="Lainaa" />
  <input type="image" src="../png/lainaa.png" /></form>
  </div>
  <div style="float: left;">
      <form method="post" action="index.php?id='.$pageid.'&show='.$topicid_.'&page='.$page.'&postid='.$postid_.'&tag=#'.$postid_.'"><input type="hidden" name="postID" value="'.$postid_.'" /><input type="hidden" name="muokkaa" value="submit" />
          <input type="hidden" name="edited" value="edited" />
      <input type="image" src="../png/muokkaa.png" /></form></div>
  </div>
  </div>
  <div style="clear: both;"></div>

  </div>
  </div>
  <div style="clear: both;"></div>');



 $data_html = htmlspecialchars($data_html, ENT_QUOTES | ENT_SUBSTITUTE, 'ISO-8859-1');

    if (mysql_error() != ""){
      echo ('<br><p><center><b><FONT SIZE="-1" FACE="Trebuchet MS,Arial,Helvetica">There was a MySQL Error -- '.mysql_error().'</b></center></p>');
      exit;
    }
    $url = 'http://intra.tobiasfransman.net/foorumi/index.php?id='.$pageid.'&show='.$topicid_.'&page='.$page.'&postid='.$postid_.'&tag=#'.$postid_.'';
     $results = array(
  "data_html" => $data_html,
  "url" => $url,
  "post_result" => $data['post_success']
  ); 

}

header('Cache-Control: no-cache, must-revalidate');
header('Expires: Mon, 26 Jul 1997 05:00:00 GMT');
header('Content-type: application/json');
//header('Content-type: application/x-www-form-urlencoded, charset=UTF-8');
echo json_encode($results);

It's the $data_html that I want to append, but it wont append. Can anyone see what I'm doing wrong?

console log ouput:

{"data_html":"
      &lt;div id=&quot;postStyleThisDay&quot; style=&quot;min-height: 30px; width: 885px; padding: 5px; margin-top: 5px; border-top: 2px solid #e82020;&gt;
      &lt;div style=&quot;padding: 8px 5px 3px 5px; min-height: 20px; border-bottom: 1px solid #dadada; background-color: #f7fdff;&quot;&gt;
      &lt;div class=&quot;forumPostUser&quot; style=&quot;float: left; width: 145px;&quot;&gt;&lt;a href=&quot;..\/kayttajat\/index.php?id=0&gt;Tobba&lt;\/a&gt;&lt;\/div&gt;
      &lt;div style=&quot;float: left; padding-left: 5px; width: 640px;&quot;&gt;L&amp;auml;hetetty:&amp;nbsp; &lt; 1 minuutti sitten&lt;\/div&gt;
      &lt;div style=&quot;float: left; padding-left: 5px; color: #e82020; font-weight: bold;&quot;&gt;ID: 0&lt;\/div&gt;
      &lt;\/div&gt;
      &lt;\/div&gt;
      &lt;div class=&quot;column&quot; id=&quot;postStyleThisDayNoBorder&quot; style=&quot;width: 130px; min-height: 65px; padding: 5px 5px 10px 5px;&quot;&gt;
      &lt;div style=&quot;width: 89px; border: 1px solid #dadada; padding: 3px; margin: 0px 5px 5px 0px;&quot;&gt;&lt;a href=&quot;..\/kayttajat\/index.php?id=0&amp;album=1&amp;img=2&quot;&gt;&lt;img src=&quot;..\/profiili\/userAlbums\/\/&quot;&quot; style=&quot;width: 85px; height: 55px; border: none; padding: 2px;&quot;\/&gt;&lt;\/a&gt;&lt;\/div&gt;
      &lt;div style=&quot;font-size: 11px;&quot;&gt;Viestej&amp;auml;: 1104 kpl&lt;\/div&gt;
      &lt;div style=&quot;font-size: 11px; padding-top: 3px;&quot;&gt;Taso:&amp;nbsp;&lt;span&gt;LIFE.IS.A..&lt;\/span&gt;
      &lt;\/div&gt;
      &lt;\/div&gt;
      &lt;div class=&quot;column&quot; id=&quot;postStyleThisDayNoBorder&quot; style=&quot;min-width: 5px; min-height: 65px; padding: 5px 5px 10px 5px;&quot;&gt;
      &lt;div&gt;&amp;nbsp;&lt;\/div&gt;
      &lt;\/div&gt;
      &lt;div class=&quot;column&quot; id=&quot;postStyleThisDayNoBorder&quot; style=&quot;width: 730px; min-height: 65px; padding: 5px 5px 10px 5px;&quot;&gt;
      &lt;span style=&quot;font-size: 16px; line-height: 130%;&quot;&gt;Testing testing&lt;\/span&gt;
      &lt;\/div&gt;
      &lt;div id=&quot;postStyleThisDay&quot; style=&quot;min-height: 30px; width: 885px; padding: 5px 5px 5px 5px; margin-top: 5px; border-bottom: 2px solid #e82020;&quot;&gt;
      &lt;div style=&quot;padding: 8px 5px 3px 0px; min-height: 20px;&quot;&gt;
      &lt;div style=&quot;font-size: 12px; width: 155px; padding-top: 20px; float: left;&quot; class=&quot;forumPostUser&quot;&gt;&lt;a href=&quot;#alkuun&quot;&gt;alkuun&lt;\/a&gt;&lt;\/div&gt;
      &lt;div style=&quot;float: left; width: 300px; padding-top: 12px; border-top: 1px solid #dadada;&quot;&gt;&amp;nbsp;&lt;\/div&gt;
      &lt;div style=&quot;float: left; width: 425px; padding-top: 5px; border-top: 1px solid #dadada;&quot;&gt;&lt;div style=&quot;float: left; margin-left: 240px;&quot;&gt;
      &lt;form method=&quot;post&quot; action=&quot;index.php?id=1&amp;show=41&amp;page=9#quoted&quot;&gt;&lt;input type=&quot;hidden&quot; name=&quot;postID&quot; value=&quot;0&quot; \/&gt;
      &lt;input type=&quot;hidden&quot; name=&quot;lainaa&quot; value=&quot;Lainaa&quot; \/&gt;
      &lt;input type=&quot;image&quot; src=&quot;..\/png\/lainaa.png&quot; \/&gt;&lt;\/form&gt;
      &lt;\/div&gt;
      &lt;div style=&quot;float: left;&quot;&gt;
          &lt;form method=&quot;post&quot; action=&quot;index.php?id=1&amp;show=41&amp;page=9&amp;postid=0&amp;tag=#0&quot;&gt;&lt;input type=&quot;hidden&quot; name=&quot;postID&quot; value=&quot;0&quot; \/&gt;&lt;input type=&quot;hidden&quot; name=&quot;muokkaa&quot; value=&quot;submit&quot; \/&gt;
              &lt;input type=&quot;hidden&quot; name=&quot;edited&quot; value=&quot;edited&quot; \/&gt;
          &lt;input type=&quot;image&quot; src=&quot;..\/png\/muokkaa.png&quot; \/&gt;&lt;\/form&gt;&lt;\/div&gt;
      &lt;\/div&gt;
      &lt;\/div&gt;
      &lt;div style=&quot;clear: both;&quot;&gt;&lt;\/div&gt;

      &lt;\/div&gt;
      &lt;\/div&gt;
      &lt;div style=&quot;clear: both;&quot;&gt;&lt;\/div&gt;","url":"http:\/\/intra.tobiasfransman.net\/foorumi\/index.php?id=1&show=41&page=9&postid=0&tag=#0","post_result":true,"errors":null}
  • 写回答

1条回答 默认 最新

  • douping7105 2014-12-03 09:02
    关注

    Added $data_html = utf8_decode($data_html) to the php post and now the append works as is :)

    评论

报告相同问题?

悬赏问题

  • ¥20 有关区间dp的问题求解
  • ¥15 多电路系统共用电源的串扰问题
  • ¥15 slam rangenet++配置
  • ¥15 有没有研究水声通信方面的帮我改俩matlab代码
  • ¥15 对于相关问题的求解与代码
  • ¥15 ubuntu子系统密码忘记
  • ¥15 信号傅里叶变换在matlab上遇到的小问题请求帮助
  • ¥15 保护模式-系统加载-段寄存器
  • ¥15 电脑桌面设定一个区域禁止鼠标操作
  • ¥15 求NPF226060磁芯的详细资料