PHP, DATATABLES: Как я могу отобразить данные из моего Oracle TABLE в мою таблицу DataTable, не получая ошибки от JSON? - PullRequest
0 голосов
/ 21 января 2019

Код, который я использую, не позволяет мне правильно отобразить последнюю строку ($f), потому что в исходной таблице оракула есть двойные кавычки.Поэтому я получаю:

Error: Parse error on line 702:
...ueue_mail_respool", "verifica del numero
-----------------------^
Expecting 'STRING', 'NUMBER', 'NULL', 'TRUE', 'FALSE', '{', '[', got 'undefined'

Я пытался использовать методы addslashes, htmlspecialchars, но не могу показать содержимое строк TEMPLATE_DESCRIZIONE.Я пытаюсь с str_replace, но похоже, что он удаляет двойные кавычки, но ошибка остается!Пожалуйста, помогите мне, спасибо, ребята!;)

echo "{ \"aaData\": [\n";
while ($row = oci_fetch_array($stid, OCI_ASSOC+OCI_RETURN_NULLS)) {
    $i++;
    $a = trim(preg_replace('/\s\s+/', '', $row["ID_CONFIG"]));
    $b = trim(preg_replace('/\s\s+/', '', $row["NOME_APPARATO"]));
  $c = trim(preg_replace('/\s\s+/', '', $row["SORGENTE"]));
    $d = trim(preg_replace('/\s\s+/', '', $row["VALIDA_DAL"]));
    $e = trim(preg_replace('/\s\s+/', '', $row["TEMPLATE_NAME"]));
  $f = str_replace("\"","",$row["TEMPLATE_DESCRIZIONE"]);

    if ($i < $NUM){
        echo "[ \"".$a."\", \"".$b."\", \"".$c."\", \"".$d."\", \"".$e."\", \"".$f."\"], \n";
    }else {
        echo "[ \"".$a."\", \"".$b."\", \"".$c."\",\"".$d."\", \"".$e."\", \"".$f."\"]\n";
    }
}
echo "] }";
?>

1 Ответ

0 голосов
/ 21 января 2019

Используйте json_encode() для создания строки в формате JSON.

Например:

$data = array();
while ($row = oci_fetch_array($stid, OCI_ASSOC+OCI_RETURN_NULLS)){
   array_push($data, array(
      $row["ID_CONFIG"],
      $row["NOME_APPARATO"],
      $row["SORGENTE"],
      $row["VALIDA_DAL"],
      $row["TEMPLATE_NAME"],
      $row["TEMPLATE_DESCRIZIONE"]
   ));
}

header('Content-type: application/json');
print json_encode(array("aaData" => $data));
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...