Quando clico no botão Enviar do meu formulário, a seguinte mensagem de erro é exibida:
"A codificação de caracteres do documento HTML não foi declarada. O documento será renderizado com texto ilegível em algumas configurações do navegador se o documento contiver caracteres fora do intervalo ASCII dos EUA. A codificação de caracteres da página deve ser declarada no documento ou no protocolo de transferência ".
insert.html:
<!DOCTYPE html PUBLIC"-//W3C//DTD XHTML 1.0 Strict//EN"
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="content-type" content="text/html; charset=utf-8" />
<title>insert page</title></head>
<body>
<h1> Insert Page </h1>
<form action="insert.php" method="post" enctype="application/x-www-form-urlencoded" >
<p>Title:<input type="text" name="title" size="40"/></p>
<p>Price:<input type= "text" name="price" size="40" /></p>
<p><input type="submit" value="Insert" />
<input type="reset" value="Reset" /></p>
</form>
</body>
</html>
insert.php:
<?php
$title = $_POST["title"];
$price = $_POST["price"];
echo $title;
?>
Não sei onde está o problema no meu código. Por favor me ajude.
insert.html
->insert.php
. E nomeie seu arquivo de manipulação de formulário (insert.php
)insert_action.php
ou algo assim. (Não tenho certeza se isso ajuda, mas eu não iria misturarhtml
ephp
páginas quando usando PHP.)Respostas:
Adicione isso como uma primeira linha na seção HEAD do seu modelo HTML
fonte
Bad value encoding for attribute http-equiv on element meta.
Eu tenho o mesmo problema com a situação mais básica e meu problema foi resolvido com a inserção dessa meta na cabeça:
a codificação de caracteres (que na verdade é UTF-8) do documento html não foi declarada
fonte
Bem, quando você publica, o navegador apenas gera
$title
- todas as suas tags e doctype HTML desaparecem. Você precisa incluir aqueles em seuinsert.php
arquivo:fonte
Eu tive o mesmo problema ao executar meu aplicativo de formulário no Firefox. A adição
<meta charset="utf-8"/>
do código html resolveu meu problema no Firefox.fonte
Você precisa alterar o arquivo de .html para .php.
e adicione esta seguinte linha
fonte
Sua página inicial é uma página HTML completa que contém um formulário, cujo conteúdo é publicado em insert.php quando o botão Enviar é clicado, mas o insert.php precisa processar o conteúdo do formulário e fazer algo com ele, como adicioná-lo a um banco de dados ou produza-os em uma nova página. Seu insert.php atual apenas gera o conteúdo do campo de título, então seu navegador tenta interpretá-lo como uma página HTML e falha, obviamente, porque não é um HTML válido (ou seja, não está contido em um 'HTML' etiqueta etc.).
Seu insert.php precisa gerar o HTML necessário e inserir os dados do formulário em algum lugar.
Por exemplo:
fonte