2016-06-21 4 views
1

В основном я занимаюсь цифровой подписью, и я пытаюсь получить имена, которые вытаскивают из базы данных MySQL на страницу PHP. Сейчас его все сосредоточено в одной колонке, но я хочу, чтобы результаты были в двух столбцах бок о бок. Как я могу это сделать?Как сделать страницу PHP имеющей два «столбчатых» региона?

$sql = "SELECT * FROM donor WHERE DonationAmount = 5000 AND Category = '1' or DonationAmount = 5000 AND Category IS NULL ORDER BY LastName ASC"; 
$result = mysqli_query($conn, $sql); 

if (mysqli_num_rows($result) > 0) { 
    // output data of each row 
    while($row = mysqli_fetch_assoc($result)) { 

      // test if the DisplayName field is empty or not 
      if(empty($row['DisplayName'])) 
      { 
       // it's empty! 
        if(empty($row['FirstName'])){ 
         echo $row['LastName']. "<br>"; 
        } 

        else{ 
         echo $row["LastName"]. ", " . $row["FirstName"]. "<br>"; 
        } 

      }else{ 
       // Do stuff with the field 
        echo $row["DisplayName"]. "<br>"; 
      } 

    } 
} else { 

} 

В основном я хочу, чтобы эти данные были распределены по двум столбцам вместо одной отдельной страницы.

+0

Можете ли вы привести и пример того, как должен быть выход? – fucethebads

+0

Это выглядит так: http://imgur.com/bj17wjv - Я хотел бы, чтобы заголовок суммы оставался центрированным, но имена в этой категории охватывали два столбца –

+0

, поэтому у вас есть набор div и/или span Tags для стилизации вашего поста. это больше вопрос о html/css, а не о php ... – fucethebads

ответ

0

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

$i = 0; 
$total_rows = $result->num_rows; 
echo "<table><tr>"; 
while($row = mysqli_fetch_assoc($result)) { 

    // test if the DisplayName field is empty or not 
    echo "<td>"; 
    if(empty($row['DisplayName'])) 
    { 
     // it's empty! 
     if(empty($row['FirstName'])){ 
      echo $row['LastName']; 
     } 

     else{ 
      echo $row["LastName"]. ", " . $row["FirstName"]; 
     } 

    }else{ 
     // Do stuff with the field 
     echo $row["DisplayName"]. ""; 
    } 
    echo "</td>"; 
    $i++; 
    if($i % 2 == 0 && $i != $total_rows) { 
     echo "</tr><tr>"; 
    } 

} 
echo "</tr></table>"; 
+0

это сделало трюк, спасибо! –

0

вывода строки, как это:

echo "<span style=\"width:50%;float:left;\">".$row['LastName']."</span>"; 

не забудьте удалить <br /> от каждого выхода

+0

Могу ли я указать что-то подобное в заголовке документа или что-то еще, чтобы он автоматически делал это для каждого вывода? –

+0

вам нужно хотя бы развернуть его. У меня есть что-то в стиле –

+0

К сожалению, я не знаю, что это значит, я парень SQL, а не PHP, поэтому для меня это довольно сложно. –

0

, если содержание в <div id="myDiv"> использования этого JS функцию и вызвать его после загрузки содержимого

function splitValues() { 
    var output = ""; 
    var names = document.getElementById('myDiv').innerHTML.split("<br>"); 
    for(var i in names) { 
    output += "<span style=\"width:50%;float:left;display:inline-block;text-align:center;\">"+names[i]+"</span>"; 
    } 
    document.getElementById('myDiv').innerHTML = output; 
} 

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

  • Нет связанных вопросов^_^