У меня есть несколько php-запросов и распечатки информации о MySQL-таблице на медицинском веб-сайте.
Иногда пользователи вводят, вызывая разрывы строк, где я бы не хотел их, потому что
это влияет на макет отображаемой HTML-таблицы так, как это не должно быть.
Я могу обрезать строки, когда они заполняют формы и данные записываются в таблицу, но там уже много данных, поэтому я решил удалить разрывы строк на странице
где php читает и печатает результаты.
я объявил одну из строк, где это вызывает проблемы как таковые:
$specialtr = trim($special, "\n");
, а затем, где отображается HTML-таблица:
echo '<td width="150">' . $specialtr . '</td>';
Вот весь код:
Весь код работает, я добавил только вышеперечисленные части, теперь столбец с переменной $ specialtr не печатает / печатает как пустой.
<form action="selected.php" method="POST">
<table border="1" cellpadding="2" cellspacing="2" style="width: 98%; margin-left: auto; margin-right: auto;">
<tr>
<td>
<?php
$dbhost = 'xxx';
$dbuser = 'xxx';
$dbpass = 'xxx';
$dbname = 'xxx';
$conn = mysql_connect($dbhost, $dbuser, $dbpass) or die (mysql_error($conn));
mysql_select_db($dbname) or die(mysql_error($conn));
$specialtr = trim($special, "\n");
echo '<table border="1" cellpadding="2" cellspacing="2" style="margin-left: auto; margin-right: auto;">';
$query = 'SELECT userid FROM employee
ORDER BY userid ASC';
$result = mysql_query($query, $conn) or die(mysql_error($conn));
$num_entries = mysql_num_rows($result);
while ($row = mysql_fetch_assoc($result)) {
foreach ($row as $value) {
echo '<tr>';
echo '<td><input type="radio" name="employee" value="' . $row['userid'] . '"/></td>';
echo '<td>Select</td>';
}
}
echo '</tr>';
echo '</table>';
?>
</td>
<td>
<?php
echo '<table border="1" cellpadding="2" cellspacing="2" style="width: 98%; margin-left: auto; margin-right: auto;">';
echo '<tr>';
$query = 'SELECT userid, name, surname, sex, age, nationality, email, telnr, special FROM employee
ORDER BY userid ASC';
$result = mysql_query($query, $conn) or die(mysql_error($conn));
while ($row = mysql_fetch_assoc($result)) {
extract($row);
echo '<td>' . $userid . '</td>';
echo '<td>' . $name . '</td>';
echo '<td>' . $surname . '</td>';
echo '<td>' . $sex . '</td>';
echo '<td>' . $age . '</td>';
echo '<td>' . $nationality . '</td>';
echo '<td>' . $email . '</td>';
echo '<td>' . $telnr . '</td>';
echo '<td width="150">' . $specialtr . '</td>';
echo '</tr>';
}
echo '</table>';
?>
</td>
</tr>
</table>
<br/>
<br/>
<input type="submit" name="go" value="Go!" />
</form>
Код работал достаточно хорошо, но, поскольку я добавил обрезку, весь этот столбец (столбец $ special исчезает).
Я надеюсь, что кто-то может сказать мне, почему он исчезает или в моем синтаксисе есть небольшая ошибка.