2015-11-17 2 views
-1
$sqlQuery = "SELECT username as display_name, fullname as full_name, email as email, role as administrators, status as be_on FROM admin"; 

записи роль: 0,1, ...Выберите дисплей PHP

Я хочу роль администраторов будет отображать 1 администратор и, если значение равно 0, то показать пользователь.

Кто может мне помочь?

+0

Каковы ваши фактические требования? – Ninju

+0

использовать, если условие после выполнения запроса –

+0

Я хочу выбрать, чтобы получить значение в роли записи в качестве администраторов. Но при отображении в Интернете, если это роль = 0, является admin и role = 1 является пользователем. –

ответ

0

Я думаю, что ваш взгляд на заявление IF

SELECT IF(`admin`.`role`= 1,TRUE,FALSE) FROM ... 

http://www.mysqltutorial.org/mysql-if-function.aspx

+1

@MayankVadiya, я никогда не делал это обо мне, я сделал это о ** SO ПРАВИЛАХ ** , вы не можете задавать вопросы по вопросу OP, если ваш вопрос ** DIRECTLY ** не соответствует вопросу OP, это не то, для чего он используется. Пожалуйста, воздержитесь от этого, как я. Простая вещь, на которой это сводится, заключается в следующем: * Не задавайте вопросы по чужому вопросу, это умаляет полезность вопроса и ответов * –

0

Мое предложение было бы использовать mysqli функциональность как таковой:

<?php 
$mysqliClass = mysqli_init(); 
$mysqliClass->real_connect("hostname or IP", "dbUsername", "dbPassword", "databasename"); 

$query = "SELECT `username` AS display_name, `fullname` AS full_name, `email`, `role` as administrators, `status` as be_on FROM `admin`"; 
$rs = $mysqliClass->query($query); # Preform your query 
$showUser = false; # Start negative 
$row = []; # Set a variable for the row to go into 
while ($result = mysqli_fetch_assoc($rs)) # Fetch each result one at a time 
{ 
    if ($result['administrators'] == 1) # Check the role 
    { 
     $showUser = true; # Set the show to true if it equals 1 
     $row = $result; # Set the row to equal the result given 
    } 
    break; # You only need the first result 
} 
if ($showUser) 
{ 
    /* Do your work with $row! */ 
} 
?> 

Я также удалил email AS email только за email поскольку у этого уже будет это имя, так что это бесполезный беспорядок.

Я также рекомендовал бы добавить пункт WHERE в запросе, чтобы уменьшить (фильтр) результаты

Если вы используете изображение из вашей БД, вы могли бы сделать что-то такое, как это:

<img src="<?=$row['image_column_name'];?>" height="120" width="120" /> 

И это должен показать изображение, как вы хотите, чтобы он :)

Source of example code

Более полный пример, например, оригинальный ответ:

<?php 

$mysqliClass = mysqli_init(); 
$mysqliClass->real_connect("hostname or IP", "dbUsername", "dbPassword", "databasename"); 

$query = "SELECT `name`, `logo` AS describe , IF(`status` = 0, 'Online', 'Offline') as be_on FROM `domain`"; 
$rs = $mysqliClass->query($query); 

$rows = []; # This will have more than one in it this time! 
while ($result = mysqli_fetch_assoc($rs)) 
{ 
    $rows[] = $result; 
} 

foreach ($rows as $r) 
{ 
    foreach ($r as $rowKey => $rowValue) # Double loop because you have an array in an array this way 
    { 
     if ($rowKey == "describe") 
     { 
      print '<img src="' . $rowValue . '" height="120" width="120" />'; 
     } 
    } 
} 

?> 
+0

Tks так много :) .......... –

+0

Если это исправляет вашу проблему, пожалуйста, подумайте о правильности и правильности размещения :) –

+0

Можете ли вы помочь мне выбрать .jpg в записи базы данных? –

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