У меня возникла проблема, когда я пытаюсь выполнить эхо-страницу html после того, как пользователь отправит форму. После нажатия кнопки отправки пользователь перенаправляет страницу email.php, содержащую код php ниже. Однако эхо возвращает html-содержимое в поле clear и не отформатировано правильно.Когда Echoing html в Php, вывод отображается в ящике
Вот мой PHP код:
<?php
//error_reporting(E_ALL);
//ini_set("display_errors", "On");`
//$json_data=$_GET['track'];
//______________________________________
//Establish Connection
$db = new PDO('mysql:host=xxxx;dbname=xxxx;charset=utf8', 'xxxx', 'xxxx')
or die("cannot open database");
//$db->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION);
//$db->setAttribute(PDO::ATTR_DEFAULT_FETCH_MODE, PDO::FETCH_OBJ);
$sql = "INSERT INTO xxxx (xxxx, xxxx, xxxx, xxxx) VALUES (:email, :firstname, :lastname, :year :month :day)";
$params = array(
':email' => $_POST['email'],
':firstname' => $_POST['firstname'],
':lastname' => $_POST['lastname'],
':day' => $_POST['day'],
':month' => $_POST['month'],
':year' => $_POST['year']
);
$points = $db->prepare($sql);
echo "<html>
<head>
<title>XXXX Confrimation</title>
</head>
<body style='background-color:#f3f3f3; margin:0;'>
<div style='background-color:#0a5a92; padding: 10px;color:#f3f3f3; margin:0px;'>
<h2>Thank You for Signing up!</h2>
</div>
<div style='padding: 0px 10px 0px 10px;'>
<p> If you did not subscribe to XXXX, please email <a href='mailto:[email protected]'>[email protected]</a> to unsubcribe.</p>
<br/>
</div>
</body>
</html>"
;
Вот результат:
<html>
<head>
<style type="text/css"></style>
</head>
<body>
<pre style="word-wrap: break-word; white-space: pre-wrap;">
<html>
<head>
<title>XXXX Confirmation</title>
</head>
<body style='background-color:#f3f3f3; margin:0;'>
<div style='background-color:#0a5a92; padding: 10px;color:#f3f3f3; margin:0px;'>
<h2>Thank You for Signing up!</h2>
</div>
<div style='padding: 0px 10px 0px 10px;'>
<p> If you did not subscribe to XXXX, please email <a href='mailto:[email protected]'>[email protected]</a> to unsubcribe.</p>
<br/>
</div>
</body>
</html>
</pre>
</body>
</html>
Я не лучший с PHP, и я бегу на очень ограниченные знания. Я также запускаю свой сайт с помощью Wordpress. Если у вас есть идея, почему это происходит, сообщите мне. Я уже более недели просматриваю форумы и не нашел удачи в поиске решения.
------ EDIT -------
я понял, что сделал ошибку в заголовках моего PHP кода, заявивших содержимое в виде файла в формате JSON. Поскольку это была моя ошибка, которая не имеет ничего общего с вышеизложенным вопросом, я собираюсь удалить этот вопрос. Спасибо, что опубликовали ваши ответы, потому что без них я бы не видел эту глупую ошибку.
--------- EDIT ---------- Исправление: Я буду вверх голосования тех, кто помог мне вместо этого, просто упаковывают кто-то другой вопрос аналогично этому. В настоящее время у меня нет репутации для голосования, но я буду, как только это произойдет. Еще раз спасибо.
Что вы подразумеваете под «в ясном»? Обычно это означает «без шифрования», но это не имеет смысла в этом контексте. Показывает ли исходный код в браузере вместо отображения страницы? – Quentin
Не забудьте разобрать опечатку в этом, если это производственный сайт. – Mouser
Похоже, вы включаете файл PHP из другого места. Вы показываете полный код здесь? Вы используете некоторые рамки? WordPress? – h00ligan