@Senture

Alert выводит \n как текст а не как перенос строки?

Здравствуйте, есть 2 файла:
searchByPhone.php
<?php
require "db.php";
if(isset($_SESSION['logged_user']))
{
	
	$phoneNumber = $_POST["searchPhoneNumber"];
	if(isset($phoneNumber))
	{
		
		$objects = R::find('deals', 'phone_1 = '.$phoneNumber.' or phone_2 = '.$phoneNumber.' or phone_3 = '.$phoneNumber.'');
		$clients = R::find('clients', 'phone_1 = '.$phoneNumber.' or phone_2 = '.$phoneNumber.' or phone_3 = '.$phoneNumber.'');
		
		$stringMessage = '';
		foreach($objects as $object)
		{
			$stringMessage = $stringMessage.'Объект:\nГород: '.$object->city.'\nУлица: '.$object->street.'\nОбщая площадь: '.$object->total_area.'\nЦена: '.$object->price_max.'\n';
		}
		
		foreach($clients as $client)
		{
			$stringMessage = $stringMessage.'Клиент:\nГород: '.$client->city.'\nУлица: '.$client->street.'\nОбщая площадь: '.$client->total_area_max.'\nЦена: '.$client->price_max.'\n';
		}
		
		if($stringMessage != '')
			echo $stringMessage;
	}
}
?>

index.php
function getXmlHttp() {
												var xmlhttp;
												try {
												  xmlhttp = new ActiveXObject("Msxml2.XMLHTTP");
												} catch (e) {
												try {
												  xmlhttp = new ActiveXObject("Microsoft.XMLHTTP");
												} catch (E) {
												  xmlhttp = false;
												}
												}
												if (!xmlhttp && typeof XMLHttpRequest!='undefined') {
												  xmlhttp = new XMLHttpRequest();
												}
												return xmlhttp;
											  }
											  
												var xmlhttp = getXmlHttp(); // Создаём объект XMLHTTP
												xmlhttp.open('POST', 'searchByPhone.php', true); // Открываем асинхронное соединение
												xmlhttp.setRequestHeader('Content-Type', 'application/x-www-form-urlencoded'); // Отправляем кодировку
												xmlhttp.send("searchPhoneNumber=" + encodeURIComponent(phone.value)); // Отправляем POST-запрос
												xmlhttp.onreadystatechange = function() { // Ждём ответа от сервера
												  if (xmlhttp.readyState == 4) { // Ответ пришёл
													if(xmlhttp.status == 200) { // Сервер вернул код 200 (что хорошо)
														if(xmlhttp.responseText != '')
														 alert(xmlhttp.responseText); // Выводим ответ сервера
													}
												  }
												};



и в alert'e я вижу это:
5ce8934f63c42447492124.png
\n выводится как текст, а не как перенос строки!
Подскажите пожалуйста как исправить?

P.S. Всем огромное спасибо!
  • Вопрос задан
  • 542 просмотра
Пригласить эксперта
Ответы на вопрос 1
roswell
@roswell
и швец, и жнец, и на дуде игрец
Экранированные символы в строках, заключенных в одинарные кавычки, выводятся "как есть", поэтому код вида
$stringMessage = $stringMessage.'Объект:\nГород: '.$object->city.'\nУлица: '.$object->street.'\nОбщая площадь: '.$object->total_area.'\nЦена: '.$object->price_max.'\n';

следует переписать как
$stringMessage = $stringMessage."Объект:\nГород: ".$object->city."\nУлица: ".$object->street."\nОбщая площадь: ".$object->total_area."\nЦена: ".$object->price_max."\n";
Ответ написан
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы