2014-11-15 4 views
0

Я пытаюсь выбрать данные базы данных на основе уровней членства. Если участником является уровень 1, ему будут показаны данные уровня 1, и если он/она будет уровнем 2, тогда они будут видеть данные уровня 1 и уровня 2.Выберите несколько полей, но разные строки в одном запросе

Вот пример таблицы:

member| membership_level 
------|---------------- 
john | 1 
------|----------------- 
andy | 2 

Тогда у меня есть PHP код, который представляет данные, основанные на membership_level, например, так:

<?php if($userMember_level == 1) { ?> 
Show data for membership level 1 
<?php }elseif($userMember_level == 2) { ?> 
Show data for membership level 1 And membership level 2 

А вот мой Mysqli заявление:

//connect to database 
require_once("../../db_query/connection.php"); 

$sql = "SELECT id,title,postdate FROM getting_started WHERE membership_level = ? AND active = ? AND membership_level = ? ORDER BY id DESC"; 
$stmt = $con->prepare($sql); 
$stmt->bind_param('iii',$b=1,$a=1,$c=2); 

$stmt->execute(); 

$stmt->store_result(); 
$numrow = $stmt->num_rows; 
if($numrow >0){ 

$stmt->bind_result($id, $title, $postdate); 

while($stmt->fetch()){ } 

?> 

<div class="resultWrap"> ... 

У меня нет ошибок, но я тоже не получаю никаких результатов.

Спасибо за любую помощь.

+0

'но я не получаю никаких результатов either' Там ничем не' echo', '' print_r' или var_dump' в вашем коде. Почему вы уверены, что не получите результатов? –

+0

уровень членства никогда не может быть одним, а также другим!!! – Strawberry

+0

Я не столько озабочен эхом, либо print_r, либо проверкой ошибок, я делаю все это, это просто не отображается. Основное внимание уделяется выбору нескольких строк из базы данных и получению результатов на основе того, являются ли члены на уровне 1 или уровне 2. –

ответ

0

SQL, вы ищете:

$sql = " 
    SELECT id,title,postdate 
    FROM getting_started 
    WHERE membership_level IN (?,?) 
    AND active = ? 
    ORDER BY id DESC 
"; 
$stmt->bind_param('iii',1,2,1); 
+0

Вы, сэр, полные гения. Я буду принимать ваш ответ. Просто подумал, что добавлю этот комментарий, чтобы сэкономить мне часы и часы неприятностей. Благодарю. –

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