Fóruns sobre PHP, JavaScript, HTML, MySQLi, jQuery, Banco de Dados, CSS


Moderador: web

 
Avatar do usuário
ADMIN
ADMIN
Tópico Autor
Mensagens: 17735
Nome: Kleber
Descrição do site: Onde você encontra scripts grátis para o seu site
Sexo: Masculino
Localização: RJ / RJ / Brasil
Contato:

Problema ao ler um arquivo XML de campo BLOB MySQL

15-02-2016 23:17

Nesse post vou dar uma dica para quem não está conseguindo ler um arquivo xml de um campo blob no MySQL ou recebe a seguinte mensagem de erro:

This page contains the following errors: error on line 2 at column 7: XML declaration allowed only at the start of the document Below is a rendering of the page up to the first error.

Esse erro ocorre pelo seguinte. Geralmente quando salvamos o arquivo xml salvamos com o version e enconding

<?xml version="1.0" encoding="UTF-8" ?>

Ai usamos o header para o xml ser lido no navegador

header("Content-type: text/xml");

O que acontece é que o header junto com a tag xml acaba fazendo uma duplicação, gerando esse erro.

Para solucionar o problema salve o seu xml sem a linha do version

<?xml version="1.0" encoding="UTF-8" ?>

Ai o código que vai puxar o arquivo xml blog do banco de dados você usa o header e define o charset. Segue um exemplo:

<?php header("Content-type: text/xml"); header('Content-Type: application/xml; charset=utf-8'); define("SERVIDOR", "localhost"); define("USUARIO", ""); define("SENHA", ""); define("BANCODEDADOS", ""); $conecta = new mysqli(SERVIDOR, USUARIO, SENHA, BANCODEDADOS); // CONECTA if ($conecta->connect_error) { trigger_error("ERRO NA CONEXÃO: " . $conecta->connect_error, E_USER_ERROR); } // PODE SER SEPARADO O TRECHO ACIMA PARA SER CHAMADO POR INCLUDE $sql = "SELECT colunas FROM sua_tabela WHERE id='1'"; // CONSULTA $query = $conecta->query($sql); // RODA A CONSULTA $linhas = $query->num_rows; if($linhas >= 1) { // SE HÁ LINHAS while($colunas = $query->fetch_assoc()) { echo " {$colunas["arquivo"]} "; // DADOS DA CONSULTA } $query->free(); // LIBERANDO OS DADOS DA CONSULTA } else { echo "Não há resultados"; // SEM RESULTADOS } $conecta->close(); // FECHANDO A CONEXÃO ?>

1
A melhor hospedagem para o seu site HostGator!

Quem está online

Usuários navegando neste fórum: Nenhum usuário registrado