#php #mysql
#php #mysql
Вопрос:
Возможно ли нумеровать строки в mysql с помощью php? Значит, не с автоматическим увеличением, а с каким-то типом кода? Я могу сделать num_row(), но он отображает числа на основе того, как данные сортируются в таблице… но я бы хотел, чтобы данные были отсортированы, например, по размеру, но пронумерованы от 1 — самого старого до X -самого нового.
На самом деле я хотел бы вручную присвоить номера строк… Например, все входные данные с идентификатором 10 должны быть пронумерованы от 1 до 10 и т.д. (потому что я вывожу данные на основе идентификатора)…
Я пытался с автоматическим увеличением числа, но поскольку все данные записываются в одну и ту же таблицу, числа не начинаются с 1, а с того места, где они остановились (я удалял строки раньше)… Мне нужно, чтобы каждый вывод, который я делаю на странице, был пронумерован от 1 до X.
Подводя итог, я просто хочу создать счетчик для имитации упорядоченного списка в таблице, но каждый вывод должен быть пронумерован, а затем отсортирован по размеру: скриншот прилагается, как это должно быть. Итак, первое добавленное значение равно 1, второе — 2…
if(!empty($_GET["orderby"])) {
$orderBy = $_GET["orderby"];
}
if(!empty($_GET["order"])) {
$order = $_GET["order"];
}
$randomNum = substr(str_shuffle("0123456789"), 0, 4);
$conn = mysqli_connect("localhost", "owjej_david", "dadadada", "owjej_kalkulator");
// Check connection
if ($conn->connect_error) {
die("Connection failed: " . $conn->connect_error);
}
$sql = "SELECT dolzina, sirina, kolicina, opombe, povrsina, id, narocilo, cas FROM zunanje where id='$id' ORDER BY " . $orderBy . " " . $order;", cas asc";
$result = $conn->query($sql);
if ($result->num_rows > 0) {
$rowNumber=0;
// output data of each row
while($row = $result->fetch_assoc()) {
$rowNumber ;
echo "<tr><td>" .
$rowNumber. "</td><td>" .
$row["dolzina"] ." cm".'<a href="uredizunanjo.php?id=' . $row['id'] . 'amp;uredi=dolzinaamp;narocilo='. $row['narocilo'] . 'amp;value='.$row['dolzina'].'"> amp;#9998;</a>'. "</td><td>" .
$row["sirina"]." cm".'<a href="uredizunanjo.php?id=' . $row['id'] . 'amp;uredi=sirinaamp;narocilo='. $row['narocilo'] . 'amp;value='.$row['sirina'].'"> amp;#9998;</a>'. "</td><td>" .
$row["kolicina"].'<a href="uredizunanjo.php?id=' . $row['id'] . 'amp;uredi=kolicinaamp;narocilo='. $row['narocilo'] . 'amp;value='.$row['kolicina'].'"> amp;#9998;</a>'. "</td><td>" .
$row["opombe"].'<a href="uredizunanjo.php?id=' . $row['id'] . 'amp;uredi=opombeamp;narocilo='. $row['narocilo'] . 'amp;value='.$row['opombe'].'"> amp;#9998;</a>'. "</td><td>" .
$row["povrsina"]." mamp;#xb2;".'<a href="updatepovrsina.php?id=' . $row['id'] . 'amp;uredi=povrsinaamp;narocilo='. $row['narocilo'] . 'amp;value='.$row['povrsina'].'"> amp;#9998;</a>'. "</td><td>" .'
<a href="izbrisizunanjo.php?id=' . $row['id'].'amp;narocilo='. $row['narocilo'].'">X</a>'."</td></tr>";}
echo "</table>";
}
$conn->close();
?>
Комментарии:
1. Вам нужно хранить эти номера строк в таблицах MySQL?
2. Что не так с тем, что у вас там есть?
3. @IldarAkhmetov ну, учитель хочет, чтобы эти числа были доступны для редактирования:/ так что, вероятно, да.
4. @miken32 Я просто смоделировал, как это должно выглядеть. Он пронумерован не по времени, а по тому, как он упорядочен в таблице — я хочу, чтобы числа добавлялись по времени, а затем сортировались … прямо сейчас он пронумерован так, как он отсортирован, если вы понимаете.