Этот файл вызывается с помощью запроса ajax. И результат, приходящий сюда, я хочу разместить в двух разных вызовах.
<?php //Some processing gives $text $s=nl2br($text); $data['x'] = $p; $data['y'] = $q; //Start from here echo "<b>Positive count : $x with $p % </b>"; echo "</br>"; echo "<b>Negative count : $y with $q % </b>"; echo "</br>"; echo "</br>"; echo "Page content : "; echo "</br>"; echo "</br>"; echo $s; //End. This content should be place in <div1>. Want to send this as a json string
а также
//Start from here echo "First 5 post"; $result = mysqli_query($con,"select post from facebook_posts where p_id > (select MAX(p_id) - 5 from facebook_posts)"); while ($row = $result->fetch_array(MYSQLI_ASSOC)) { echo $row['post']; echo '<br/>'; } //End. This content should be placed in <div2> Want to send this as a json string
Если имеется одна переменная, мы можем легко ее использовать, используя:
$resultArray = array("resultOne" => $result1,"resultTwo" => $result2); echo json_encode($resultArray);
на приемном конце:
document.getElementById("myFirstDiv").innerHTML=xmlhttp.responseText.resultOne; document.getElementById("mySecondDiv").innerHTML=xmlhttp.responseText.resultTwo;
Но как выше сложный результат может быть помещен в json variable?
Вы можете использовать буферизацию вывода в PHP:
ob_start(); // Generate content for div 1... $div1 = ob_get_clean(); ob_start(); // Generate content for div 2... $div2 = ob_get_clean(); $result = array("div1" => $div1, "div2" => $div2); echo json_encode($result);