Есть php файл для вывода подписей из базы данных. Если Друпал не стоит, работает, ставишь друпал - перестает работать - белая страница.
Может там что-то с пересечением баз данных? Как все-таки запустить этот файл? Помогите пожалуйста разобраться.
Есть php файл для вывода подписей из базы данных. Если Друпал не стоит, работает, ставишь друпал - перестает работать - белая страница.
Может там что-то с пересечением баз данных? Как все-таки запустить этот файл? Помогите пожалуйста разобраться.
Комментарии
код в студию. и потом как и от куда запускаете?
все файлы лежат в корне, запускаем напрямую
Файл под кодовым названием podpisi.php:
<?php
require ("$DOCUMENT_ROOT/code/cfg.php");
$dbtable=Array("main"=>$PFX."manifest"); //имена и псевдонимы таблиц
#Вывод информации
$html="";
$res = mysql_query("select id, name, surname, org, country, city FROM
$dbtable[main] ORDER BY id desc") or die('Определение кол-ва записей ' . mysql_error());
while (list($id, $name, $surname, $org, $country, $city) = mysql_fetch_array($res))
{
$html.="$name $surname, $org $country $city
";
}
echo $html;
?>
Файл SEND.PHP
<?php
require ("$DOCUMENT_ROOT/code/cfg.php");
$title="Манифест";
$dbtable=Array("main"=>"manifest"); //имена и псевдонимы таблиц
mysql_select_db($db);
$q = mysql_query ("INSERT INTO manifest (name,surname,org,country,cont,mail,city)
VALUES ('$name','$surname','$org','$country','$cont','$mail','$city')") or die
("
ERROR:
".mysql_error());
$f = mysql_query($q);
echo "Спасибо, Ваша подпись добавлена Вернуться назад";
?>
Файл коннфиг в папке code:
<?
setlocale (LC_CTYPE,"ru_RU.CP1251");
$REQUEST_URI=$_SERVER['REQUEST_URI'];
if (isset($print)) {
$print=1;
$print_url=strip_tags(ereg_replace("((\?|&)print$)","",$REQUEST_URI));
} else {
$print=0;
$print_url=strip_tags($REQUEST_URI).((ereg("\?",$REQUEST_URI)) ? "&print" : "?print");
}
$URI=explode('/',ereg_replace("(^/|/$)","",$REQUEST_URI));
if (ereg("\?",$URI[(COUNT($URI)-1)]) || $URI[(COUNT($URI)-1)]==="") unset($URI[(COUNT($URI)-1)]);
$URL_empty=ereg_replace("/index\\.php([^/]*)$","/\\1",$_SERVER['PHP_SELF']);
$PATH=$DOCUMENT_ROOT;
$PATH_admin="admin";
$dbcounter["alias"]="";
$dbcounter["name"]="название сайта|название сайта";//Домены и синонимы
$PFX=$dbcounter["alias"]."";
$type_plst=0;//тип пролистывания страниц
$PATH_default="download";
$PATH_image="image";
$maintitle="Название сайта";
$keywords="";
$description="";
$user="доступ к бд";
$pass='доступ к бд';
$dbname="доступ к бд";
$hostname="доступ к бд";
$mysql=mysql_connect($hostname, $user, $pass) or die(' Ошибка поключения к MySQL-серверу: ' . mysql_error());
mysql_select_db($dbname,$mysql) or die(' Ошибка подключения к базе данных: ' . mysql_error());
?>
В настройках друпала доступ к тойже базе данных.
Странно. По идее должно работать. А ошибок никаких не выдает? Вообще уровень обработки ошибок php позволяет их выдавать?
Ну как сказать, выдается пустая страница (и код пустой) если в файл подписи вписать текст, текст выдается, но из БД не вытягивается. Если сносить друпал, то все пашет. Если удалить файл настроек друпала, тот который сеттингс, все равно не работает. Там видимо с друпалом как-то конфликт, но не пойму в каком месте. Может еще с префиксами проблема... А уровень обработки ошибок как и где можно посмотреть?
Часть файла настроек Друпала
$db_url = 'mysql://*****:*****@*****.*****/*****';
$db_prefix = 'pre';
А не проще ли импортировать подписи в Drupal?
php.ini секция ; Error handling and logging ; Вам надо E_ALL