@viktorross

Не правильно работает код php?

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

я хочу в этом скрипте выполнить 2 запроса сразу

class banners {
	function addHit($id=0) {
		global $db,$config_abs_path;
		if(!$id) $id=$this->id;
		$res_del=$db->query('update '.TABLE_BANNERS.' set `clicks` = `clicks`+1 where `id`="'.$id.'"');

		require_once $config_abs_path."/classes/users.php";
		$email=users::getNEmail($id);
		return 1;
	}
}


при выполнении этого

require_once $config_abs_path."/classes/users.php";
$email=users::getNEmail($id);


в бд записывается постоянно значение из 1 строки бд

class users {
static function getEmail($id='') {

		global $db;
		if(!$id) return;
		$email=$db->fetchRow('select email from '.TABLE_USERS.' where id="'.$id.'"');
		return $email;
	}
function getNEmail($id) {

		global $db;
		$email=users::getEmail($id);
		$db->query("insert into `class_click` set `email` = '$email'");
	}

}


почему так происходит?

получается он не видит авторизации? хотя во втором скрипте в самом файле сессия запущена
  • Вопрос задан
  • 152 просмотра
Решения вопроса 1
@AUser0
Чем больше знаю, тем лучше понимаю, как мало знаю.
Код вполне рабочий. Проверяйте место вызова banners::addHit(), там аргументом явно указан не ID текущего пользователя, а что-то ещё (первый из базы данных).

P.S. Или class_click меняется где-то ещё.
Ответ написан
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы