- Как правильно подключить Include файлы в PHP? При подключении получаются ошибки
- В include выдаёт ошибку
- MySQL error in file: /engine/inc/include/functions.inc.php at line 149
- Ответил: Sander
- 15 комментариев
- Похожие вопросы
- Проблема с редактированием группы
- MySQL error в RSS импорт новостей
- Сustom Error Number: 1064
- Вывод последних комментарией из определенных категорий
- Проблема с Картой сайта
- MySQL Error
- Скрипт загрузки файлов на сервер
- error: syntax error on line 660
- Как сделать редирект с несуществующих категорий?
- Ошибка MySQL error in file: /engine/modules/show.full.php at line. Как решить?
- mysql — соединение с БД через PHP не работает
- Решение
- Другие решения
Как правильно подключить Include файлы в PHP? При подключении получаются ошибки
Создаю сайт, в дереве сайта создал папки( пишу то, что относится к проблеме ): include, pages. В корне сайта создал Index файл, в нем вывел всю нужную информацию, потом перенес все данные с Header в Header.php, Header.php закинул в Include, далее подключил его в Index файле(пробелы специально сейчас написал):
Обновил страницу, все работает.
Далее создал новый файл в папке Pages и назвал его, к примеру, news.php. После чего открыл файл и подключил в нем Header.php таким образом:
, мне вывелись ошибки, мол такого файла нет.
Начал гуглить, нагуглил такой способ, подключать инклюды так:
include $_SERVER['DOCUMENT_ROOT'].('/include/header.php '); ?>
.Все заработало, но на локальном сервере ( на денвере работаю ), думал что все круто, перенес все на WEB, но там данный способ не захотел работать. В итоге, на WEB`е не сработали такие способы подключения include:
include('/include/header.php'); ?> include('include / header.php '); ?> include $_SERVER['DOCUMENT_ROOT'].('/include/header.php'); ?> include ('http://').$_SERVER['HTTP_HOST'].('/include / header.php'); ?> require_once('/include/header.php'); ?>
Не работает в файлах, которые находятся в сторонних папках корня, к примеру Pages. В Index все работает, потому что он в корне лежит.
Задолбался уже искать ответы на свой вопрос. Нужна ваша помощь)
include require как подключить правильно файл
Проблема в следующем: Нужно подключить файл который находиться в другой директории. Имеем файл.
Как правильно подключать файлы через include?
Есть основная папка с проектом. В ней находится ещё несколько папок. В index.php который.
Как прописать Если time() >= a1 и
Сейчас для вывода информации по временному графику пользуюсь кодом $a =.
Как правильно подключить html-файл в php
Доброе время суток, форумчане. Прошу помочь, не могу найти как правильно подключить html-файл.
include ($_SERVER['DOCUMENT_ROOT'].'/include/header.php'); ?>
Добавлено через 1 минуту
Очевидно, метод тыка вам не подходит. В таком случае отлично помогает документация. Проверено на самых закоренелых тупицах.
Все равно ошибка, дерево вообще не известно от куда начинается: File(/usr/local/apache/htdocs/include/header.php) is not within the allowed path(s): (/home/:/usr/lib/php:/tmp) in /home/a7409378/public_html/index.php on line 4
Без скобок на денвере все работало, со скобками и без них все равно не работает на WEB
1) Header.php и header.php для Linux’a (который на веб-сервере наверняка) — это разные файлы. Убедитесь, что при подключении файла название соответствует тому, что лежит в соответствующем каталоге.
2)
include('include / header.php '); ?>
Полезет в каталог include за файлом header.php относительно той директории, в которой был инициализирован скрипт.
1. Название одинаковое, указываю название с тем же регистром, что и в папке.
2. что (‘include. ‘) не хочет отображать файл, что (‘/include. ‘). Понятия не имею что за чушь) Скорее всего руки не от туда, хотя не факт)
2.1 При (‘include. ‘) = failed to open stream: No such file or directory in /home/a7409378/public_html/pages/fket.php on line 4 . Т.к. файл не в этой же дер-ии
2.2 При (‘/include. ‘) = Failed opening ‘/include/header.php’ for inclusion (include_path=’.:/usr/lib/php:/usr/local/lib/php’) in /home/a7409378/public_html/index.php on line 4
У вас неправильно настроен сервер или вы неправильно использовали мой код. Что за WEB, известный хостинг или свой сервер?
В include выдаёт ошибку
Все файлы в инклуде лежат рядом с index.php. И ещё какой-то колл ошибку вызывает. Вот код index.php:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24
error_reporting(E_ALL^E_NOTICE); define ( 'TIMER',microtime(1)); define ( 'SAMP_STATS',true ); define ( 'ROOT_DIR',dirname ( 'index.php' ) ); define ( 'SAMP_STATSRU',ROOT_DIR .'/engine'); session_start(); include '/core.php'; include '/gzdoc.php'; $main->tpl->set('',$main->tpl->head()); $main->tpl->set('',$main->tpl->ajax()); $main->tpl->set('',$u_panel); $main->tpl->set('',$tags); $main->tpl->set('',$main->tpl->titla()); $main->tpl->set('',$language); $main->tpl->set('',' cache_update(\''.$game.'\'); '); $main->tpl->set('',$nav); $main->tpl->parse(); $main->tpl->fill(); $main->db->close(); gzdocout(); ?>
MySQL error in file: /engine/inc/include/functions.inc.php at line 149
Переносил сайт и бд, все сделал, должно работать, а тут ошибка, в нете искал решение не нашел, я так понимаю для начала можно полечить базу, не помню команду, помогите.
MySQL error in file: /engine/inc/include/functions.inc.php at line 149
Error Number: 1146
The Error returned was:
Table 'dvkrot.dle_admin_logs' doesn't exist
SQL query:
INSERT INTO dle_admin_logs (name, date, ip, action, extras) values ('dv-kpot', '1382874864', '91.11.11.111', '82', '')
Ответил: Sander
бла бла бла
Table ‘dvkrot.dle_admin_logs’ doesn’t exist
Т.е. таблица dle_admin_logs не существует.
Причина по которой она может отсутствовать — наиболее вероятная только одна. Версия DLE не соответствует БД.
Т.е. бд старее dle.
Причину выяснили. Теперь обновляйте бд встроенным апдейтером.
15 комментариев
Похожие вопросы
Проблема с редактированием группы
MySQL error в RSS импорт новостей
Сustom Error Number: 1064
Вывод последних комментарией из определенных категорий
Проблема с Картой сайта
MySQL Error
Скрипт загрузки файлов на сервер
error: syntax error on line 660
Как сделать редирект с несуществующих категорий?
Ошибка MySQL error in file: /engine/modules/show.full.php at line. Как решить?
Вышло небольшое обновление:
1. Поддержка всех редакторов, включая BBCODE
2. Убрана JS библиотека для преобразования MARKDOWN разметки в HTML код (теперь этим занимается PHP библиотека)
3. Добавлен модуль «Переводчик», а также интеграция с модулем multi-language dle, от japing
4. Добавлены настройки модуля, где можно редактировать параметры, заданные по умолчанию
5. Добавлен CRON, позволяющий выполнить задания, например: перевести все на английский язык, или переписать все описания
6. Незначительные правки и улучшения
Ошибки в консоле отношения к проблеме с тегами не имеют. У вас в консоле сказано, что есть проблемы с инициализацией библиотеки jquery.
Напишите в телегу, посмотрим. Так же приготовьте доступы в админку.
mysql — соединение с БД через PHP не работает
Я уверен, что это очень тривиально, но я просто не могу понять это. Я использовал часть своего кода, который работает на другом сервере, но не в моей новой сети.
В отдельном файле я получил это:
и в index.php я просто включаю этот файл в тело:
include "protected/_mysql.php";
При этом содержимое тела не отображается, есть просто пустая белая страница. Если я помещу некоторый текст как уведомление об ошибке вместо переменной в
mysqli_select_db(MYSQL_DB, $db) or die(mysqli_error($db));
он отобразит этот текст ошибки.
Я попытался указать localhost как MYSQL_HOST, но при этом отображается первая ошибка «не удалось подключиться».
Что я делаю неправильно?
Решение
Этот способ работает для меня:
Пример (MySQLi процедурный)
$servername = "localhost"; $username = "username"; $password = "password"; $dbname = "myDB"; // Create connection $conn = mysqli_connect($servername, $username, $password, $dbname); // Check connection if (!$conn) < die("Connection failed: " . mysqli_connect_error()); >$sql = "SELECT id, firstname, lastname FROM MyGuests"; $result = mysqli_query($conn, $sql); if (mysqli_num_rows($result) > 0) < // output data of each row while($row = mysqli_fetch_assoc($result)) < echo "id: " . $row["id"]. " - Name: " . $row["firstname"]. " " . $row["lastname"]. "
"; > > else < echo "0 results"; >mysqli_close($conn); ?>
Пример (MySQLi Object-ориентированный)
connect_error) < die("Connection failed: " . $conn->connect_error); > $sql = "SELECT id, firstname, lastname FROM MyGuests"; $result = $conn->query($sql); if ($result->num_rows > 0) < echo "ID Name "; // output data of each row while($row = $result->fetch_assoc()) < echo "".$row["id"]." ".$row["firstname"]." ".$row["lastname"]." "; > echo "
"; > else < echo "0 results"; >$conn->close(); ?>
"; echo "Id Firstname Lastname "; class TableRows extends RecursiveIteratorIterator < function __construct($it) < parent::__construct($it, self::LEAVES_ONLY); >function current() < return "" . parent::current(). " "; > function beginChildren() < echo ""; > function endChildren() < echo " " . "\n"; > > $servername = "localhost"; $username = "username"; $password = "password"; $dbname = "myDBPDO"; try < $conn = new PDO("mysql:host=$servername;dbname=$dbname", $username, $password); $conn->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION); $stmt = $conn->prepare("SELECT id, firstname, lastname FROM MyGuests"); $stmt->execute(); // set the resulting array to associative $result = $stmt->setFetchMode(PDO::FETCH_ASSOC); foreach(new TableRows(new RecursiveArrayIterator($stmt->fetchAll())) as $k=>$v) < echo $v; >> catch(PDOException $e) < echo "Error: " . $e->getMessage(); > $conn = null; echo ""; ?>
Эти примеры взяты из w3schools.
Другие решения
Прежде всего, я бы посмотрел в PHP -> PDO
Это очень хорошая библиотека, поставляемая с PHP, которая может общаться с MySQL серверами (и другими) и немного абстрагирует движок.
Работать через PDO намного приятнее, чем через mysqli imho.
Следующими предложениями будет error_reporting (), если вы видите белую страницу, скорее всего, в вашем PHP-коде есть ошибка (в данном случае внутри этого PHP-включения или отсутствует файл).
Вы можете включить отчеты об ошибках, и вы можете посмотреть в файлах журнала apache, чтобы увидеть, если ваша ошибка была зарегистрирована.