2013-11-13 5 views
0

Я попытался понять, почему это не отражается, но каждый результат, когда люди пытаются использовать php на странице html, поэтому я здесь спрашиваю.PHP не будет Echo

У меня есть 3 php-файла, файл входа, глобальный файл конфигурации и файл темы. Страница входа echo - это сценарий входа, но он подключается к глобальному файлу. Глобальный файл подключается к файлу темы и конфигурационному файлу db. Файл темы - простая таблица.

Вот мои файлы

<? 
include('../tools/global.php'); 



switch($_POST[act]){ 

case "setlogin": 
set($login); 
break; 

case "refresh": 
refresh(); 
break; 

case "logout": 
lout(); 
break; 

default: 
login($mes); 
break; 
} 

function login($mes){ 


if (isset($_COOKIE["user"])){ 
$out[body]="<br /> 
<center> 
<table width='90%' border='0' cellspacing='1' cellpadding='1' bgcolor='#BDBDBD'> 
<tr bgcolor='##ff80ff'> 
<td width='100%' valign='center' align='left' colspan='2' background='#BDBDBD'> 
<strong>Login</strong> 
</td> 
</tr> 
<tr bgcolor='#BDBDBD'> 
<td width='100%' valign='center' align='left'><center> 
<b>You are already logged in! Would you like to <a href='http://www.fivedesignguys.com/dir/panel/login.php?act=refresh&type=logout'>Logout?</a></center></td></tr> 
</table> 
</center><br /><br /><br /><br />"; 

}else{ 

$out[body]=" 
<br /> 
<center> 
<table width='400' border='0' cellspacing='1' bgcolor='#BDBDBD' cellpadding='1'> 
<form method='post'> 
<tr bgcolor='$config[altcolor]'> 
<td background='#BDBDBD' width='100%' valign='center' align='left' colspan='2'> 
<strong>Login</strong>"; 

Это продолжается, но я знаю, что это эхо мне первый вариант,

Heres глобальный PHP файл

<?php 

include('../theme/default.php'); 
include('config.php'); 

?> 

и, наконец, default.php тематический файл

<table border='0'> 
<tr> 
<td colspan='2'> 
<center>bar</center> 
</td> 
</tr> 
<tr> 
<td width='10%'> 
hey<br>hey<br> 
</td> 
<td> 
hello 
<?php 

echo $out[body]; 
?> 

</td> 
</tr> 
</table> 

, как вы можете сказать, я хочу, чтобы он эхо $ out [body], но он этого не хочет. Да, все файлы - это PHP, но здесь я застрял.

+2

Прежде всего это должно быть '$ out [" body "]', и тогда это не глобальная переменная. Его переменная определяется внутри вашей функции и, следовательно, вы не можете отбросить ее вне этого. Либо верните переменную в главный элемент управления, либо сделайте ее глобальной. –

+0

. Массив должен быть как $ out ['body'] вместо $ out [body] – Rohit

ответ

1

массив $out не является глобальным, поэтому его невозможно прочитать за пределами функции login().

Вы должны объявить массив глобальным и немного прочитать о globals.

+0

Я изменил переменную на $ body, поэтому установка 'global $ body;' не работала , Должен ли я обернуть его в функцию, и тогда он сможет получить доступ, например, к странице register.php? – user2981166

Смежные вопросы