Задать вопрос
@Farrien
Tell me who

Почему не работает класс?

Создал класс для подготовленных выражений. Посоветовали здесь Такое сильно влияет на производительность?
class FGLike {
	public $con;
	public $lc;
	public $like_loc;
	public $like_owner_id;
	public $thread_id;
	public $trgt_id;
	
	public function __construct($loc) {
		global $pdo_db;
		$this->like_loc = $loc;
		$this->like_owner_id = $owner;
		$this->con = $pdo_db->prepare("SELECT * FROM likes WHERE like_location='$this->like_loc' AND target_id=':id' ORDER BY id ASC");
		$this->con->bindParam(':id', $this->trgt_id);
		$this->lc = $pdo_db->prepare("SELECT COUNT(*) FROM likes WHERE like_location='$this->like_loc' AND target_id=':id'");
		$this->lc->bindParam(':id', $this->trgt_id);
	}
	
	public function getLikesList($trgt_id) {
		$this->trgt_id = $trgt_id;
		$this->lc->execute();
		$count = $this->lc->fetch(PDO::FETCH_COLUMN);
		if ($count > 0) {
			$this->con->execute();
			while ($likes = $this->con->fetch(PDO::FETCH_ASSOC)) {
				$type = self::emi_like_type($likes[like_type]);
				echo '<div class="like-pod '.$type.'"></div>';
			}
		} else {
			echo 'null';
		}
	}
	
	public function emi_like_type($lt = 1) {
		switch ($lt) {
			case 1:
				$like_type = 'normal-like';
				break;
			case 2:
				$like_type = 'haha-like';
				break;
			case 3:
				$like_type = 'wow-like';
				break;
			case 4:
				$like_type = 'love-like';
				break;
			case 5:
				$like_type = 'sad-like';
				break;
		}
		return $like_type;
	}
}

Вызываю так
$c_likes = new FGLike(1);
$id = любое число из базы;
$c_likes->getLikesList($id);

Но выводит всегда null.
В чем ошибка?
  • Вопрос задан
  • 229 просмотров
Подписаться 1 Оценить Комментировать
Помогут разобраться в теме Все курсы
  • Skillfactory
    Профессия Fullstack веб-разработчик на JavaScript и PHP
    20 месяцев
    Далее
  • Хекслет
    PHP-разработчик
    10 месяцев
    Далее
  • Нетология
    Веб-разработчик с нуля: профессия с выбором специализации
    14 месяцев
    Далее
Пригласить эксперта
Ответы на вопрос 1
index0h
@index0h
PHP, Golang. https://github.com/index0h
Вам посоветовали херню))

Вопрос производительности при таких условиях решается с помощью кэширования. На подготовленых запросах вы ничего не сэкономите. Это примерно как прикладывать подорожник на открытый перелом ноги.
Ответ написан
Ваш ответ на вопрос

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

Похожие вопросы
FoodSoul Калининград
от 180 000 до 250 000 ₽
IT-Spirit Москва
от 230 000 до 320 000 ₽
от 200 000 до 290 000 ₽