Po kliknięciu przycisku przesyłania mojego formularza pojawia się następujący komunikat o błędzie:
„Kodowanie znaków dokumentu HTML nie zostało zadeklarowane. W niektórych konfiguracjach przeglądarki dokument będzie renderowany z zniekształconym tekstem, jeśli dokument zawiera znaki spoza zakresu US-ASCII. Kodowanie znaków na stronie musi być zadeklarowane w dokumencie lub w protokole transmisji. "
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;
?>
Nie wiem, gdzie jest problem w moim kodzie. Proszę pomóż mi.
insert.html
->insert.php
. I nazwij plik obsługi formularza (insert.php
) nainsert_action.php
czy coś. (Nie jestem pewien, czy to pomaga, ale nie mieszałbymhtml
iphp
stron podczas korzystania z PHP.)Odpowiedzi:
Dodaj to jako pierwszą linię w sekcji HEAD szablonu HTML
źródło
Bad value encoding for attribute http-equiv on element meta.
Mam ten sam problem z najbardziej podstawową sytuacją i mój problem został rozwiązany poprzez wstawienie tej meta do głowy:
kodowanie znaków (w rzeczywistości jest to UTF-8) dokumentu HTML nie zostało zadeklarowane
źródło
Kiedy publikujesz, przeglądarka tylko wyświetla
$title
- wszystkie tagi HTML i typ dokumentu znikają. Musisz uwzględnić je w swoiminsert.php
pliku:źródło
Miałem ten sam problem, gdy uruchomiłem aplikację formularza w przeglądarce Firefox. Dodanie
<meta charset="utf-8"/>
kodu html rozwiązało mój problem w przeglądarce Firefox.źródło
Musisz zmienić plik z .html na .php.
i dodaj następujący wiersz
źródło
Twoja strona początkowa to kompletna strona HTML zawierająca formularz, którego zawartość jest umieszczana w pliku insert.php po kliknięciu przycisku przesyłania, ale insert.php musi przetworzyć zawartość formularza i coś z nimi zrobić, np. Dodać je do bazy danych lub wyślij je na nową stronę. Twój obecny plik insert.php po prostu wyświetla zawartość pola tytułu, więc twoja przeglądarka próbuje zinterpretować to jako stronę HTML, ale oczywiście kończy się to niepowodzeniem, ponieważ nie jest to poprawny HTML (tj. Nie jest zawarty w 'HTML' tag itp.).
Twój insert.php musi wypisać niezbędny kod HTML i gdzieś wstawić dane formularza.
Na przykład:
źródło