Warning: Cannot use a scalar value as an array in /home/admin/public_html/forum/include/fm.class.php on line 757

Warning: Invalid argument supplied for foreach() in /home/admin/public_html/forum/include/fm.class.php on line 770

Warning: Invalid argument supplied for foreach() in /home/admin/public_html/forum/topic.php on line 737
Форумы портала PHP.SU :: syntax error, unexpected T_ENCAPSED_AND_WHITESPACE

 PHP.SU

Программирование на PHP, MySQL и другие веб-технологии
PHP.SU Портал     На главную страницу форума Главная     Помощь Помощь     Поиск Поиск     Поиск Яндекс Поиск Яндекс     Вакансии  Пользователи Пользователи


 Страниц (1): [1]   

> Без описания
twelveee
Отправлено: 07 Марта, 2013 - 12:50:58
Post Id


Гость


Покинул форум
Сообщений всего: 70
Дата рег-ции: Янв. 2013  


Помог: 0 раз(а)




Помогите! В общем я начал работать над CMS. Установил шаблонизатор, мне посоветовали Smarty. В принципе доволен. Но дело в том, что мне надо сделать так, чтобы регистрация была доступна. Тобишь у меня сейчас есть в корневом каталоге скрипт регистрации. Он рабочий. Но мне надо из главной страницы скрипта сделать переменную, которую позже я помещу в тег {$login}.
Я решил сделать так:
PHP:
скопировать код в буфер обмена
  1.  
  2. $logmenu = <<<HERE
  3. <?PHP include "configs/database.php";
  4. ?>
  5.  
  6. <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
  7. <html xmlns="http://www.w3.org/1999/xhtml">
  8. <head>
  9. <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
  10. <title> Система управления пользователями </title>
  11. <link rel="stylesheet" href="/style.css" type="text/css" />
  12. </head>
  13. <body>
  14. <div id="main">
  15. <?PHP
  16. if(!empty($_SESSION['LoggedIn']) && !empty($_SESSION['Username']))
  17. {
  18.  ?>
  19.  
  20.  <h1>Пользовательская зона</h1>
  21.  <p Спасибо что вошли! Вы <b><?=$_SESSION['Username']?></b> и Ваш адрес электронной почты <b><?=$_SESSION['EmailAddress']?></b>.<br>
  22.  </p>
  23.  
  24.  <?PHP
  25. }
  26. elseif(!empty($_POST['username']) && !empty($_POST['password']))
  27. {
  28.  $username = mysql_real_escape_string($_POST['username']);
  29.  $password = md5(mysql_real_escape_string($_POST['password']));
  30.  
  31.  $checklogin = mysql_query("SELECT * FROM users WHERE Username = '".$username."' AND Password = '".$password."'");
  32.  
  33.  if(mysql_num_rows($checklogin) == 1)
  34.  {
  35.  $row = mysql_fetch_array($checklogin);
  36.  $email = $row['EmailAddress'];
  37.  
  38.  $_SESSION['Username'] = $username;
  39.  $_SESSION['EmailAddress'] = $email;
  40.  $_SESSION['LoggedIn'] = 1;
  41.  
  42.  echo "<h1>Вы успешно вошли</h1>";
  43.  echo "<p>Сейчас вы будете переадресованы в ваш профиль .</p>";
  44.  echo "<meta http-equiv='refresh' content='=2;index.php' />";
  45.  }
  46.  else
  47.  {
  48.  echo "<h1>Ошибка</h1>";
  49.  echo "<p>Ваша учётная запись не найдена или вы неправильно ввели логин или пароль. <a href=\"index.php\">Попробовать снова </a>.</p>";
  50.  }
  51. }
  52. else
  53. {
  54.  ?>
  55.  
  56.  <h1>Вход</h1>
  57.  
  58.  <p>Хорошо что зашли <a href="/register.php">Регистрация </a>.</p>
  59.  
  60.  <form method="post" action="index.php" name="loginform" id="loginform">
  61.  <fieldset>
  62.  <label for="username">Логин:</label><input type="text" name="username" id="username" /><br />
  63.  <label for="password">Пароль:</label><input type="password" name="password" id="password" /><br />
  64.  <input type="submit" name="login" id="login" value="Войти" />
  65.  </fieldset>
  66.  </form>
  67.  
  68.  <?PHP
  69. }
  70. ?>
  71.  
  72. </div>
  73. HERE;
  74.  


Ну только вы сразу не кричите что неверно) Сам знаю) Но как верно, я и спрашиваю у Вас)

При таком построении кода выдается ошибка Parse error: Parse error: syntax error, unexpected T_ENCAPSED_AND_WHITESPACE, expecting T_STRING or T_VARIABLE or T_NUM_STRING in Z:\home\gamer.ru\www\configs\var.php on line 17


P.S. VAR.PHP - файл, где у меня лежат все переменные. 17 строка этого файла:
if(!empty($_SESSION['LoggedIn']) && !empty($_SESSION['Username']))
 
 Top
esterio
Отправлено: 07 Марта, 2013 - 13:21:13
Post Id



Активный участник


Покинул форум
Сообщений всего: 5025
Дата рег-ции: Нояб. 2012  
Откуда: Украина, Львов


Помог: 127 раз(а)




twelveee пишет:
$logmenu = <<<HERE
<?PHP include "configs/database.php";
?>

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title> Система управления пользователями </title>
<link rel="stylesheet" href="/style.css" type="text/css" />
</head>
<body>
<div id="main">

Вы откриваете HEREDOC и в нем пробуете подключить файл - так нельзя
(Добавление)
UDP
уберите первую и последнюю строчки
(Добавление)
UDPP
если вам нужно занести вивод в переменную используйте

 
 Top
OrmaJever Модератор
Отправлено: 07 Марта, 2013 - 13:28:05
Post Id



Активный участник


Покинул форум
Сообщений всего: 7540
Дата рег-ции: Янв. 2010  
Откуда: Чернигов


Помог: 299 раз(а)




esterio пишет:
Вы откриваете HEREDOC и в нем пробуете подключить файл - так нельзя

А по моему он ничего не открывает. heredoc за тегами php и считается как простой вывод.


-----
Если вы хотя бы 3-4 раза не решите всё выкинуть и начать заново - вы явно что-то делаете не так.
 
 Top
esterio
Отправлено: 07 Марта, 2013 - 13:30:14
Post Id



Активный участник


Покинул форум
Сообщений всего: 5025
Дата рег-ции: Нояб. 2012  
Откуда: Украина, Львов


Помог: 127 раз(а)




шестое чуство подсказивает что у ТС више приведенного кода есть откривающий тег PHP. у хотя всякое может быть. Во всяком случае вариант с ob_* именно то что надо

(Отредактировано автором: 07 Марта, 2013 - 13:30:39)

 
 Top
twelveee
Отправлено: 07 Марта, 2013 - 13:33:19
Post Id


Гость


Покинул форум
Сообщений всего: 70
Дата рег-ции: Янв. 2013  


Помог: 0 раз(а)




А можно поподробнее про ob_start
Что за функция, что делает, в идеале примеры)
 
 Top
OrmaJever Модератор
Отправлено: 07 Марта, 2013 - 13:37:57
Post Id



Активный участник


Покинул форум
Сообщений всего: 7540
Дата рег-ции: Янв. 2010  
Откуда: Чернигов


Помог: 299 раз(а)




esterio пишет:
шестое чуство подсказивает что у ТС више приведенного кода есть откривающий тег PHP.

Тогда получается
PHP:
скопировать код в буфер обмена
  1. <?PHP
  2. $logmenu = <<<HERE
  3. <?PHP include "configs/database.php";
  4. ?>
  5. ...

Теги php внутри тегов php?
twelveee пишет:
А можно поподробнее про ob_start

Блин ну вы же cms пишите, вы же всё должны знать.


-----
Если вы хотя бы 3-4 раза не решите всё выкинуть и начать заново - вы явно что-то делаете не так.
 
 Top
twelveee
Отправлено: 07 Марта, 2013 - 13:42:01
Post Id


Гость


Покинул форум
Сообщений всего: 70
Дата рег-ции: Янв. 2013  


Помог: 0 раз(а)




OrmaJever пишет:
esterio пишет:
шестое чуство подсказивает что у ТС више приведенного кода есть откривающий тег PHP.

Тогда получается
PHP:
скопировать код в буфер обмена
  1. <?PHP
  2. $logmenu = <<<HERE
  3. <?PHP include "configs/database.php";
  4. ?>
  5. ...

Теги php внутри тегов php?
twelveee пишет:
А можно поподробнее про ob_start

Блин ну вы же cms пишите, вы же всё должны знать.


CMS я пишу для себя, ob_start не юзал ни разу.
 
 Top
esterio
Отправлено: 07 Марта, 2013 - 13:54:48
Post Id



Активный участник


Покинул форум
Сообщений всего: 5025
Дата рег-ции: Нояб. 2012  
Откуда: Украина, Львов


Помог: 127 раз(а)




OrmaJever пишет:
Тогда получается

Я так думаю
twelveee пишет:
А можно поподробнее про ob_start

Пример я написал. Что ето такое смотрите на php.net
 
 Top
Страниц (1): [1]
Сейчас эту тему просматривают: 0 (гостей: 0, зарегистрированных: 0)
« Программирование на PHP »


Все гости форума могут просматривать этот раздел.
Только зарегистрированные пользователи могут создавать новые темы в этом разделе.
Только зарегистрированные пользователи могут отвечать на сообщения в этом разделе.
 



Powered by PHP  Powered By MySQL  Powered by Nginx  Valid CSS  RSS

 
Powered by ExBB FM 1.0 RC1. InvisionExBB