[ Поиск ] - [ Пользователи ] - [ Календарь ]
Полная Версия: Генерация таблицы, ID для каждой ячейки
asdf27
Всем доброго времени. Накидал код генерации таблицы, пытаюсь присвоить каждой ячейке TD свой id. Делаю через цикл, сперва высчитывается количество рядов <tr>, потом столько раз генерируется блок <td>.

Проблема в том, что при каждом проходе, id выдается с начала.

$_POST[ok] - кнопка отправить в форме.
$tr - количество строк <tr>
$n - количество <td>
$t - через нее методом ++ пытаюсь присвоить id по-порядку

После этого из базы будет выводиться материал с якорем id ячейки.


<?php
require "sql.php";
if (isset($_POST[ok])) {
$tr = $_POST[vsego] / $_POST[line];
echo ceil($tr);
print "<table border=1>";
$n = $_POST[line];
$t=0;
for($k=1;$k<=$tr;$k++){

echo '<tr>';
$t=0;
$result = mysql_query("SELECT * FROM map WHERE tid=$i");
$myrow = mysql_fetch_array($result);

for($i=1;$i<=$n;$i++){


print "<td width=100 height=50 id=".$t.">".$myrow[text]."</td>\n";
$t++;
}
echo '</tr>';
}
print "</table>";

}
?>

<form
action="index.php" method="POST">
Всего столиков <input type="text" name="vsego"><br>
Столиков в ряд <input type="text" name="line"><br>
<input
type="submit" name="ok">
</form>





Спустя 18 минут, 33 секунды (5.07.2012 - 19:35) redreem написал(а):
ну так убери $t=0; после echo '<tr>';

а еще лучше делай семантичный id:

 print '<td width=100 height=50 id="tr_'. $k . '_td_' . $i . '">' . $myrow[text] . '</td>'; 

Спустя 1 минута, 7 секунд (5.07.2012 - 19:36) asdf27 написал(а):
Спасибо, только что нашел :) Еще в запросе ошибку сделал, $i

Рабочая часть


for($i=1;$i<=$n;$i++){
$result = mysql_query("SELECT * FROM map WHERE tid=$t");
$myrow = mysql_fetch_array($result);

print "<td width=100 height=50 id=".$t.">".$myrow[text]."</td>\n";
$t++;
}
Быстрый ответ:

 Графические смайлики |  Показывать подпись
Здесь расположена полная версия этой страницы.
Invision Power Board © 2001-2024 Invision Power Services, Inc.