2014-01-04 5 views
0

Я хотел бы напечатать переменную в тексте метода post xml. Возможно?php echo variable xml

<? 
$qtdRows = 10; //Ver consulta do banco 
$nome = $_POST['nome']; 
//ARQUIVO XML CRIADO NO SERVIDOR (Pode ser um arquivo em branco, so para iniciar, e depois ele coloca o conteudo com o script) 
$arquivo = "cases.xml"; 

$escrever .= '<?xml version="1.0" encoding="ISO-8859-1" ?>'; 
$escrever .= '<filmes>'; 

    for($i=0; $i<$qtdRows; $i++){ 
     $escrever .= '<filme>'; 
     $escrever .= '<nome> $nome </nome>'; 
     $escrever .= '<ano>$ano</ano>'; 
     $escrever .= '<diretor>$diretor</diretor>'; 
     $escrever .= '<comentarios>$filme</comentarios>'; 
     $escrever .= '</filme>'; 
    } 
$escrever .= '</filmes>'; 

$fd = fopen ($arquivo, "w"); // abre o arquivo 
fwrite($fd, $escrever); //Escreve no arquivo 
fclose ($fd); // fecha o arquivo 

?> 
<script> 
    location.href = 'index.php'; //Redirediona, depois de gerado o XML, para qualquer pagina (Ex: index.php) 
</script> 

этот способ не работает! Каков правильный синтаксис? $escrever .= '<nome> $nome </nome>';

+0

Пожалуйста, включите отчет об ошибках на самый высокий уровень при написании кода. Затем исправить все уведомления, предупредить, и если вы их получили, то и ошибки. – hakre

ответ

0

Изменить эту строку:

$escrever .= '<?xml version="1.0" encoding="ISO-8859-1" ?>'; 

для:

// Without concatenation 
$escrever = '<?xml version="1.0" encoding="ISO-8859-1" ?>'; 

Кроме того, конкатенация должна быть:

$escrever .= '<nome>' . $nome . '</nome>'; 

Я надеюсь, что это помогает!

0

. Используется для конкатенации строк, как показано здесь.

$escrever .= '<nome>' . $nome . '</nome>'; 

(Добавить точки . и одиночные кавычки '.)

SUERTE!

+0

Я верю, что '' $ nome ''правильно напечатал бы содержимое' $ nome' с помощью PHP – MackieeE

+0

Не просыпался! Выходной файл: . $ nome. Мейреллиш Filme мю ито бом !!

+0

Тогда '$ nome' вероятно не установлен, вы должны проверить' Исеть ($ _POST [ 'нома']) 'и это тоже содержимое, до цикла. – MackieeE