Я разработал свой сайт с php, и он отлично работает на сервере Wamp, но когда я загрузил свой PHP-сайт на свой хост, и я пошел на адрес своего сайта, я увидел только белую страницу (он показывает только заголовок страницы правильным образом!)
Я использовал некоторое предложение include с указанием родительского каталога с использованием двух точек "../". Считаете ли вы, что это может быть проблемой?
Пожалуйста, порекомендуйте мне способ найти ошибку и отладить ее.
Это мой первый код страницы: (я должен упомянуть, что, например, когда я перехожу к content.php, он отображается правильно)
<?php
include("includes/classes/mysession.php");
$ms=new Mysession("turkish_az","home");
$ms->setCurrentPage("home");
if(isset($_GET["slc_language"])){
$ms->setLanguage($_GET["slc_language"]);
}
?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>Untitled Document</title>
<link href="includes/css/style_header.css" rel="stylesheet" type="text/css" />
<link href="includes/css/style_home.css" rel="stylesheet" type="text/css" />
<link href="includes/css/syle_footer.css" rel="stylesheet" type="text/css" />
<script type="text/javascript" src="includes/js/jquery-1.11.1.min.js"></script>
<script type="text/javascript">
$(document).ready(function(e) {
$("#slc_language").val("<?php echo($ms->getLanguage());?>");
$("#form_search").submit(function(e) {
var data=$(this).serialize();
e.preventDefault();
$.ajax({
type: 'POST',
url: 'pages/meaning/mean.php',
data: data,
success: function(resp){
$("#resultpart").html(resp);
}
});
});
});
</script>
</head>
<body>
<div id="container">
<?php require("pages/header/header.php"); ?>
<?php require("pages/main/content.php"); ?>
<?php require("pages/footer/footer.php"); ?>
</div>
</body>
</html>
Я проверил файлы hedear & content & footer php:
1-Заголовок показывает белую страницу, как первая страница
2 - содержимое отображается правильно
3 - нижний колонтитул отображается наполовину правильно, но имеет ошибку:
Fatal error: Call to a member function getLayoutName() on a non-object in /home/u998326115/public_html/pages/footer/footer.php on line 14
У вас есть только два бита php, некоторые над заголовком и некоторые ниже.
Поскольку вы получаете заголовок страницы, мы можем заключить, что нижний php вызывает загрузку страницы.
Предположительно, пути к файлам, которые вы включаете, неверны. Попробуйте изменить первый "включить" в "требовать", перестаете ли вы получать титул? В этом случае ваши пути неправильны.
Добавьте это к самому верхнему
error_reporting(E_ALL);
ini_set('display_errors', '1');
Найдите в своих документах хостинга, как вы можете видеть журналы ошибок. Это может быть файл error_log в папках сценариев, некоторые файлы в журналах папок или вы можете получить доступ к журналам в панели управления хостингом (например, CPanel). Или вы можете запросить поддержку своего хостинга.
Включите отображение ошибок и установите уровень ошибки E_ALL для всех ваших скриптов. Вы можете сделать это в файле.htaccess или в коде. Попросите свою группу поддержки хостинга, как вы можете сделать это лучше.