Пробел над таблицей HTML, созданной с помощью PHP

У меня есть загадочный пробел над таблицей, которую я создал с помощью HTML (заголовок) и PHP (тело). Когда для тела используется PHP, над таблицей появляются случайные пробелы, которые мне не нужны. Когда я заменяю PHP на HTML, пустое пространство исчезает> К сожалению, поскольку я отображаю изменчивую информацию из базы данных, я не могу жестко запрограммировать каждую строку в таблице с помощью HTML.

Откуда берутся эти случайные пробелы и как от них избавиться?

Я слышал о дополнительных пробелах в тегах или о тексте не в тегах, вызывающем проблему, но когда я смотрю на исходный код страницы, вся информация отображается правильно, без лишних пробелов в тегах или случайного текста.

Эхо-код/источник страницы (пустые ячейки преднамеренны):

<tr><td>Name</td><td>2</td><td class="hasClass">Class</td><td class="hasClass">Class</td><td></td><td></td><td>0</td><td>15</td><td>No</td></tr>`

Исходный код HTML:

<table>
<tr><th>Name</th><th>No. of Parts</th><th>1<sup>st</sup> Block</th><th>2<sup>nd</sup> Block</th><th>3<sup>rd</sup> Block</th><th>4<sup>th</sup>Block</th><th>No. Enrolled</th><th>Limit</th><th>Requried</th></tr>
<tbody><?php include 'bin/table.php';?></tbody>
</table>

PHP (table.php) предполагает успешное подключение к базе данных:

while ($row = $result->fetch_row()) {
echo '<tr><td>'.$row[1].'</td><td>'.$row[2].'</td>';
    if ($row[3] == 1) {
        echo '<td class="hasClass">Class</td>';
    } else {
        echo '<td></td>';
    }
    if ($row[4] == 1) {
        echo '<td class="hasClass">Class</td>';
    } else {
        echo '<td></td>';
    }
    if($row[5] == 1) {
        echo '<td class="hasClass">Class</td>';
    }
    else {
        echo '<td></td>';
    }
    if ($row[6] == 1) {
        echo '<td class="hasClass">Class</td>';
    } else {
        echo '<td></td>';
    }
    if ($row[7] >= $row[8]) {
        echo '<td style="color:white; background-color:red;">FULL</td>';
    } else {
        echo '<td>'.$row[7].'</td>';
    }
    if ($row[7] >= $row[8]) {
        echo '<td style="color:white; background-color:red;">'.$row[8].'</td>';
    } else {
        echo '<td>'.$row[8].'</td>';
    }
    if ($row[9] == 1) {
        echo '<td>Yes</td>';
    } else {
        echo '<td>No</td>';
    }
    echo '</tr>';
}

Благодарю вас!


person Blake Morgan    schedule 27.12.2013    source источник
comment
Можете ли вы предоставить скриншот, пожалуйста?   -  person WP_    schedule 28.12.2013
comment
также проверьте свой css на отступы, поля   -  person Lawrence Cherone    schedule 28.12.2013
comment
Какой текстовый редактор вы используете?   -  person Shahlin Ibrahim    schedule 28.12.2013
comment
Можем ли мы сделать хороший скриншот проблемы?   -  person Ali Gajani    schedule 28.12.2013
comment
Я не могу добавить скриншот, потому что у меня недостаточно очков репутации. Я проверил свой CSS, и ничего не изменилось, когда я убрал отступы/поля. Единственный способ, которым я смог избавиться от него, - это удалить файл PHP. Я использую Dreamweaver (CS4).   -  person Blake Morgan    schedule 28.12.2013


Ответы (1)


попробуйте изменить кодировку вашего php-файла на «UTF-8 без спецификации»

person Adrian    schedule 27.12.2013
comment
ДА! Это сработало! Благодарю вас! Я бы проголосовал за это, если бы мог. - person Blake Morgan; 28.12.2013