Я использую запрос ajax для отправки комментариев в БД. Успешный ответ отмечен
1. OK
Проблема в том, что ответ от скрипта php
1. 2. OK
Поэтому я отладил скрипт и отметил, что символ новой строки si добавляется, когда скрипт выполняет следующую строку:
require_once($ABS_APPS."/quotes/classQuote.php");
После некоторых поисков я прочитал, что это может быть проблема спецификации (Byte Order Mark). Поэтому я только что загрузил и открыл файл classQuote.php
шестнадцатеричным редактором и заметил, что нет спецификации … может ли кто-нибудь мне помочь?
PS Все файлы в моем проекте заключены в UTF-8, и я в настоящее время устанавливаю NetBeans, который не добавляет спецификацию в файлы.
Это инкриминируемый скрипт:
// Send new comment to DB case "send": $notification = new Notification(); if($comment->insert($_POST["username"], $_POST["comment"], $_POST["app"], $_POST["entryId"])){ switch ($_POST["app"]) { case "quotes": require_once($ABS_APPS."/quotes/classQuote.php"); $quote = new Quote(); $quoteData = $quote->get($_POST["entryId"]); // If user comments his own entry we don't have to send the notification if($quoteData["UserAuthor"] != $_SESSION["User"]){ $notification->newComment($_POST["username"], $quoteData["UserAuthor"], $_POST["entryId"], $_POST["app"]); } break; default: break; } echo "OK"; } else { echo "ERROR"; } break;
<?php
в classQuote.php ?>
?>
строках кода (следуйте потоку из вашего __construct и где вы вызываете материал) Infact, может оказаться полезным оставить закрывающий тег. Другая возможность такова:
// capture output ob_start(); require_once($ABS_APPS."/quotes/classQuote.php"); $quote = new Quote(); $quoteData = $quote->get($_POST["entryId"]); // If user comments his own entry we don't have to send the notification if($quoteData["UserAuthor"] != $_SESSION["User"]){ $notification->newComment($_POST["username"], $quoteData["UserAuthor"], $_POST["entryId"], $_POST["app"]); // trim whitespace echo trim(ob_get_clean()); }
Если вы используете jQuery
вы можете использовать jQuery.trim (responseData) в своем обратном вызове AJAX, чтобы избавиться от пробелов
см. также здесь http://api.jquery.com/jQuery.trim/
Надеюсь, поможет
Я исправил эти