Перейти к контенту
  • 0

Как проверить ник пользователя


ZOLTER

Вопрос

Я незнаю как подобрать тему поэтому написал первое что пришло в голову.. проблема в том что я создаю скрипт чтобы пользователи могли отправять друг другу открытки. Работу с базой я уже отписал, систему отправки открыток в базу данных тоже.. :D

 

Проблема в том что когда начал делать часть пользовательского интерфейса отправки открыток вошол в тупик. у меня должно быть авто заполняемое поле $outname в котором должен записаца ник отправителя открытки.. как мне проверить под каким ником авторизирован пользователь? ;)

 

я не знаю откуда можно просто выдрать под каким ником пользователь пользуеца скриптом.. я думал сначала подключить через инклуд("логин.пхп") но он мне недает прав на работу с ним.. прошу помочь. :)

Ссылка на комментарий
Поделиться на других сайтах

Рекомендуемые сообщения

  • 0

$ibforums->input['id']

Попробуй юзать переменную. Она содержид ид юзера. Из бд по иду ник запрашиваеш и все :D

 

Не уверен что попрет, я пока не особо в ипб разобрался. Пару модов написал уже ;)

Ссылка на комментарий
Поделиться на других сайтах

  • 0

$ibforums->member['name'], так вроде. :D Соответственно в функции должно быть global $ibforums.

 

Вообще в $ibforums есть почти всё, что необходимо. Есть очень удобный трюк: пишете где-нибудь в скрипте

echo "<pre>;
print_r($ibforums);
echo "</pre>";

Загружаете страницу и ищете в листинге нужную вам информацию и соответственно переменную, в которой она содержится.

Изменено пользователем Dr.Freddy
Ссылка на комментарий
Поделиться на других сайтах

  • 0

Хм чтото не то.. еще один маленький вопрос если не трудно.. Вот так выводица имя пользователя :

 

<?

global $ibforums;

$ibforums->member['name'];

echo "имя : $name";

?>

 

то шото он не выводит.. просто не совсем понимаю что делает $ibforums->member['name'];

Изменено пользователем ZOLTER
Ссылка на комментарий
Поделиться на других сайтах

  • 0

Неа :D вот смотрите как я делаю, может укажите мне на ошибку то я уже голову сломал ненаю что нетак..

 

На страницу форума стоит ссылка на магазин в виде :

<font color=black size=2><a href="sources/src.php">Тест</a></font>

 

В src.php прописан вот этот код который должен отображать какой пользователь зашол :

<?
global $ibforums;
echo "Вы вошли как : ";
echo "{$ibforums->member['name']}";
?>

 

Вродибы все правильно.. некакой ошибки не выводица.. но и имя пользователя после слов "Вы вошли как : " тоже не пишеца.. может вы скажите в чем ошибка то я ниче понять не могу..

Изменено пользователем ZOLTER
Ссылка на комментарий
Поделиться на других сайтах

  • 0

Хмм, второй код то, что вы привели - весь?

 

Попробуйте интегрировать свои скрипты со скриптами IPB - проблем будет на порядок меньше.

Ссылка на комментарий
Поделиться на других сайтах

  • 0

второй код весь.. просто чтоб без всего лишнего хотел проверить выводит он или нет.. получилось что он неможет выдрать имя.. :D

 

в смысле интегрировать со скриптами ИПБ?.. просто изза какогото имя такие траблы что ужас.. ;)

неукого нету идей в чем ошибка ? или как сделать чтобы возвращялось имя пользователя :)

Изменено пользователем ZOLTER
Ссылка на комментарий
Поделиться на других сайтах

  • 0

И так все вродибы получилась.. спасиба всем кто помог, так как несовсем все ответы были понятны то пришлось действовать старыд добрым методом тыка.. Копить файл index.php и вырезать из него все без чего он может работать и не терять имя авторизированого пользователя :D когда такого результата достиг просто вставил форму отправки открытки и вродибы все пашет.. кому интересно вот код

 

<?

define( 'ROOT_PATH'  , "./" );
define( 'KERNEL_PATH', ROOT_PATH.'ips_kernel/' );
define ( 'USE_MODULES', 1 );
define ( 'USE_SHUTDOWN', 1 );
define( 'CUSTOM_ERROR', 1 );
define( 'TRIAL_VERSION', 0 );
define ( 'IN_IPB', 1 );
define ( 'IN_DEV', 0 );

//===========================================================================
// DEBUG CLASS
//===========================================================================

class Debug
{
function startTimer()
{
	global $starttime;
	$mtime = microtime ();
	$mtime = explode (' ', $mtime);
	$mtime = $mtime[1] + $mtime[0];
	$starttime = $mtime;
}
function endTimer()
{
	global $starttime;
	$mtime = microtime ();
	$mtime = explode (' ', $mtime);
	$mtime = $mtime[1] + $mtime[0];
	$endtime = $mtime;
	$totaltime = round (($endtime - $starttime), 5);
	return $totaltime;
}
}

//===========================================================================
// INFO CLASS
//===========================================================================

class info {

var $member	   = array();
var $input		= array();
var $session_id   = "";
var $base_url	 = "";
var $vars		 = "";
var $lang_id	  = "en";
var $skin		 = "";
var $lang		 = "";
var $server_load  = 0;
var $version	= "v2.0.4";
var $lastclick	= "";
var $location	 = "";
var $debug_html   = "";
var $perm_id	  = "";
var $forum_read   = array();
var $topic_cache  = "";
var $session_type = "";
var $skin_global  = "";
var $loaded_templates = array();
var $converge	 = "";

function info()
{
	global $sess, $std, $DB, $INFO;

	$this->vars = &$INFO;
}
}

//===========================================================================
// MAIN PROGRAM
//===========================================================================

//--------------------------------
// Import $INFO, now!
//--------------------------------

$INFO = array();

require ROOT_PATH."conf_global.php";

//--------------------------------
// The clocks a' tickin'
//--------------------------------

$Debug = new Debug;
$Debug->startTimer();

//--------------------------------
// Load the DB driver and such
//--------------------------------

$INFO['sql_driver'] = ! $INFO['sql_driver'] ? 'mysql' : strtolower($INFO['sql_driver']);

require ( KERNEL_PATH.'class_db_'.$INFO['sql_driver'].".php" );

$DB = new db_driver;

$DB->obj['sql_database']	 = $INFO['sql_database'];
$DB->obj['sql_user']		 = $INFO['sql_user'];
$DB->obj['sql_pass']		 = $INFO['sql_pass'];
$DB->obj['sql_host']		 = $INFO['sql_host'];
$DB->obj['sql_tbl_prefix']   = $INFO['sql_tbl_prefix'];
$DB->obj['query_cache_file'] = ROOT_PATH.'sources/sql/'.$INFO['sql_driver'].'_queries.php';
$DB->obj['use_shutdown']	 = USE_SHUTDOWN;

//-----------------------------------
// Required vars?
//-----------------------------------

if ( is_array( $DB->connect_vars ) and count( $DB->connect_vars ) )
{
foreach( $DB->connect_vars as $k => $v )
{
	$DB->connect_vars[ $k ] = $INFO[ $k ];
}
}

//--------------------------------
// Get a DB connection
//--------------------------------

$DB->connect();

//--------------------------------
// Make CONSTANT
//--------------------------------

define( 'SQL_PREFIX', $DB->obj['sql_tbl_prefix'] );
define( 'SQL_DRIVER', $INFO['sql_driver']		);

//--------------------------------
// Wrap it all up in a nice easy to
// transport super class
//--------------------------------

$ibforums = new info();

//--------------------------------
// Require our global functions
//--------------------------------

require ROOT_PATH."sources/functions.php";
require ROOT_PATH."sources/classes/class_display.php";
require ROOT_PATH."sources/classes/class_session.php";
require ROOT_PATH."sources/classes/class_forums.php";
require KERNEL_PATH."class_converge.php";

$std	= new FUNC;
$print  = new display();
$sess   = new session();
$forums = new forum_functions();

//--------------------------------
//  Set up our vars
//--------------------------------

$ibforums->input = $std->parse_incoming();

//-----------------------------------------
// Make a safe query string
//-----------------------------------------

$ibforums->query_string_safe = str_replace( '&', '&', $std->clean_value( $_SERVER['QUERY_STRING'] ) );

//--------------------------------
//  Set converge
//--------------------------------

$ibforums->converge = new class_converge( $DB );

//===========================================================================
// Generate choice array
//===========================================================================

$choice = array(
			 "idx"		=> array( "boards"			 , 'boards'	   ,"'birthdays', 'calendar'," ),
			 "sf"		 => array( "forums"			 , 'forums'	   ,"'announcements', 'multimod'," ),
			 "sr"		 => array( "forums"			 , 'forums'		),
			 "st"		 => array( "topics"			 , 'topics'	   ,"'attachtypes','bbcode', 'multimod','ranks','profilefields'," ),
			 "announce"   => array( "announcements"	  , 'announcements',"'bbcode','badwords','emoticons','ranks','profilefields'," ),
			 "login"	  => array( "login"			  , 'login'		 ),
			 "post"	   => array( "post"			   , 'post'		 ,"'attachtypes','badwords','bbcode','emoticons'," ),
			 "poll"	   => array( "lib/add_poll"	   , 'poll'		  ),
			 "reg"		=> array( "register"		   , 'register'	  ),
			 "online"	 => array( "online"			 , 'online'		),
			 "members"	=> array( "memberlist"		 , 'memberlist'   ,"'ranks','profilefields'," ),
			 "help"	   => array( "help"			   , 'help'		  ),
			 "search"	 => array( "search"			 , 'search'	   ,"'attachtypes','multimod','bbcode','ranks','profilefields'," ),
			 "mod"		=> array( "moderate"		   , 'moderate'	 ,"'attachtypes','multimod','bbcode','emoticons'," ),
			 "print"	  => array( "misc/print_page"	, 'printpage'	,"'attachtypes','bbcode', 'multimod','ranks','profilefields'," ),
			 "forward"	=> array( "misc/forward_page"  , 'forwardpage'   ),
			 "mail"	   => array( "misc/contact_member", 'contactmember' ),
			 "invite"	 => array( "misc/contact_member", 'contactmember' ),
			 "icq"		=> array( "misc/contact_member", 'contactmember' ),
			 "aol"		=> array( "misc/contact_member", 'contactmember' ),
			 "yahoo"	  => array( "misc/contact_member", 'contactmember' ),
			 "msn"		=> array( "misc/contact_member", 'contactmember' ),
			 "report"	 => array( "misc/contact_member", 'contactmember' ),
			 "chat"	   => array( "misc/contact_member", 'contactmember' ),
			 "integ"	  => array( "misc/contact_member", 'contactmember' ),
			 'boardrules' => array( "misc/contact_member", 'contactmember' ),
			 "msg"		=> array( "messenger"		  , 'messenger'	,"'profilefields','attachtypes','badwords','bbcode','emoticons'," ),
			 "usercp"	 => array( "usercp"			 , 'usercp'	   ,"'attachtypes','badwords','bbcode','emoticons'," ),
			 "profile"	=> array( "profile"			, 'profile'	  ,"'ranks','profilefields','badwords','bbcode','emoticons',"),
			 "track"	  => array( "misc/tracker"	   , 'tracker'	   ),
			 "stats"	  => array( "misc/stats"		 , 'stats'		 ),
			 "attach"	 => array( "misc/attach"		, 'attach'	   ,"'attachtypes'," ),
			 'legends'	=> array( 'misc/legends'	   , 'legends'	  ,"'badwords','bbcode'  ,'emoticons',"  ),
			 'calendar'   => array( "calendar"		   , 'calendar'	 ,"'attachtypes','bbcode', 'multimod','emoticons','badwords',"),
			 'buddy'	  => array( "browsebuddy"		, 'assistant'	 ),
			 'mmod'	   => array( "misc/multi_moderate", 'mmod'		 ,"'multimod',"),
			 'warn'	   => array( "misc/warn"		  , 'warn'		 ,"'badwords','bbcode'  ,'emoticons',"  ),
			 'home'	   => array( 'ipbportal'		  , 'ipdl'		 ,"'attachtypes','bbcode', 'multimod','ranks','profilefields'," ),
			 'module'	 => array( 'modules'			, 'modules'	   ),
			 'toutline'   => array( 'topics_outline'	 , 'toutline'	  ),
			 'task'	   => array( 'taskloader'		 , 'taskloader'	),
			 'findpost'   => array( 'findpost'		   , 'findpost'	  ),
		   );

//---------------------------------------------------
// Check to make sure the array key exits..
//---------------------------------------------------

$ibforums->input['_low_act'] = strtolower( $ibforums->input['act'] );

if (! isset($choice[ $ibforums->input['_low_act'] ][0]) )
{
$ibforums->input['act'] = 'idx';
}

//===========================================================================
//  Short tags...
//===========================================================================

if ( $ibforums->input['showforum'] != "" )
{
$ibforums->input['act'] = "sf";
$ibforums->input['f']   = intval($ibforums->input['showforum']);
}
else if ( $ibforums->input['showtopic'] != "")
{
$ibforums->input['act'] = "st";
$ibforums->input['t']   = intval($ibforums->input['showtopic']);

//---------------------------------------------------
// Grab and cache the topic now as we need the 'f' attr for
// the skins...
//---------------------------------------------------

$DB->simple_construct( array( 'select' => '*',
							  'from'   => 'topics',
							  'where'  => "tid=".$ibforums->input['t'],
					)	  );

$DB->simple_exec();

$ibforums->topic_cache = $DB->fetch_row();
$ibforums->input['f']  = $ibforums->topic_cache['forum_id'];
}
else if ( $ibforums->input['showuser'] != "")
{
$ibforums->input['act'] = "profile";
$ibforums->input['MID'] = intval($ibforums->input['showuser']);
}
else if ( $ibforums->input['automodule'] != "" )
{
$ibforums->input['act']	= 'module';
$ibforums->input['module'] = $ibforums->input['automodule'];
}
else
{
$ibforums->input['act'] = $ibforums->input['act'] == '' ? "idx" : $ibforums->input['act'];
}


//===========================================================================
// Get cache...
//===========================================================================

$DB->simple_construct( array( 'select' => '*', 'from' => 'cache_store', 'where' => "cs_key IN ( ".$choice[ strtolower($ibforums->input['act']) ][2]."'banfilters', 'settings', 'group_cache', 'systemvars', 'skin_id_cache', 'forum_cache', 'moderators', 'stats', 'languages' )" ) );
$DB->simple_exec();

while ( $r = $DB->fetch_row() )
{
if ( $r['cs_key'] == 'settings' )
{
	$tmp = unserialize( $std->txt_safeslashes($r['cs_value']) );

	if ( is_array( $tmp ) and count( $tmp ) )
	{
		foreach( $tmp as $k => $v )
		{
			$ibforums->vars[ $k ] = stripslashes($v);
		}
	}

	unset( $tmp );
}
else
{
	if ( $r['cs_array'] )
	{
		$ibforums->cache[ $r['cs_key'] ] = unserialize(stripslashes($r['cs_value']));
	}
	else
	{
		$ibforums->cache[ $r['cs_key'] ] = $r['cs_value'];
	}
}
}

if ( ! isset( $ibforums->cache['systemvars'] ) )
{
$DB->simple_exec_query( array( 'delete' => 'cache_store', 'where' => "cs_key='systemvars'" ) );
$DB->do_insert( 'cache_store', array( 'cs_key' => 'systemvars', 'cs_value' => addslashes(serialize(array())), 'cs_array' => 1 ) );
}


//--------------------------------
// Set up cache path
//--------------------------------

if ( $ibforums->vars['ipb_cache_path'] )
{
define( 'CACHE_PATH', $ibforums->vars['ipb_cache_path'] );
}
else
{
define( 'CACHE_PATH', ROOT_PATH );
}


//--------------------------------
// Set debug mode
//--------------------------------

$DB->set_debug_mode( $ibforums->vars['sql_debug'] == 1 ? intval($_GET['debug']) : 0 );

//--------------------------------
//  Initialize the FUNC
//--------------------------------

$std->FUNC_init();

//--------------------------------
//  The rest :D
//--------------------------------

$ibforums->member	 = $sess->authorise();
$ibforums->lastclick  = $sess->last_click;
$ibforums->location   = $sess->location;
$ibforums->session_id = $sess->session_id; // Used in URLs
$ibforums->my_session = $sess->session_id; // Used in code

//--------------------------------
//  Initialize the forums
//--------------------------------

$forums->strip_invisible = 1;
$forums->forums_init();

//--------------------------------
// Load the skin
//--------------------------------

$std->load_skin();

list($ppu,$tpu) = explode( "&", $ibforums->member['view_prefs'] );

$ibforums->vars['display_max_topics'] = ($tpu > 0) ? $tpu : $ibforums->vars['display_max_topics'];
$ibforums->vars['display_max_posts']  = ($ppu > 0) ? $ppu : $ibforums->vars['display_max_posts'];

//===========================================================================
//  Set up defaults
//===========================================================================

$ibforums->skin_id = $ibforums->skin['_setid'];

$ibforums->vars['img_url']	   = 'style_images/' . $ibforums->skin['_imagedir'];
$ibforums->vars['AVATARS_URL']   = 'style_avatars';
$ibforums->vars['EMOTICONS_URL'] = 'style_emoticons/<#EMO_DIR#>';
$ibforums->vars['mime_img']	  = 'style_images/<#IMG_DIR#>';

//===========================================================================
// REQUIRE AND RUN
//===========================================================================				

{
// Require and run

require_once( ROOT_PATH."sources/".$choice[ strtolower($ibforums->input['act']) ][0].".php" );

//	$runme = new $choice[ strtolower($ibforums->input['act']) ][1];
//	$runme->auto_run();
}
?>

<html>
<head>
</head>
<body>
<form action=p_send.php method=post>
<h2>Тест магазина</h2>
<?
  echo "<b>Отправитель : </b>";
  echo "{$ibforums->member['name']}";
  echo "<br>"
?>

Кому?<br>
<input name="postname" type=text><br>
Текст<br>
<input name="posttext" type=text><br>
Тип<br>
<input name="posttyp" type=text>
 <br>
<input type=submit value="Search">

</form>
</body>
</html>

 

Собствено возникло еще два маленьких вопроса.

1) Как сделать поле в котором бы писался текст и его немог изменить пользователь..?

2) Как значение $ibforums->member['name'] присовить какойто переменной? через $test = {$ibforums->member['name']}; - выдает ошибку..

Изменено пользователем ZOLTER
Ссылка на комментарий
Поделиться на других сайтах

  • 0

1) HTML-теги <textarea>, <input type='text'> с аттрибутом readonly. RTFM

2)

$foo = $ibforums->member['name'];

Изменено пользователем SphinX
Ссылка на комментарий
Поделиться на других сайтах

Присоединиться к обсуждению

Вы можете ответить сейчас, а зарегистрироваться позже. Если у вас уже есть аккаунт, войдите, чтобы ответить от своего имени.

Гость
Ответить на вопрос...

×   Вы вставили отформатированный текст.   Удалить форматирование

  Допустимо не более 75 смайлов.

×   Ваша ссылка была автоматически заменена на медиа-контент.   Отображать как ссылку

×   Ваши публикации восстановлены.   Очистить редактор

×   Вы не можете вставить изображения напрямую. Загрузите или вставьте изображения по ссылке.

Зарузка...
×
×
  • Создать...

Важная информация

Находясь на нашем сайте, вы соглашаетесь на использование файлов cookie, а также с нашим положением о конфиденциальности Политика конфиденциальности и пользовательским соглашением Условия использования.