я попытался получить данные в таблицу mysql, используя это
$query=$conn->query("SELECT * FROM users ORDER BY id_user ASC");
это моя структура таблицы
пользователи
id_user | INT auto-increment
username | varchar
password | varchar
nama | varchar
role | varchar
status | SET
но порядок отображаемых данных упорядочен следующим образом: 1,10,11,12,13,2,3,4,5,6,7,8,9 (13 данных в базе)
Обновлено: полный код для отображения
<table cellpadding = "0" cellspacing = "0" border = "0" class = "table table-striped table-bordered" id = "example">
<thead>
<tr>
<th align = "center">ID</th>
<th align = "center">Username</th>
<th align = "center">Nama</th>
<th align = "center">Role</th>
<th width = "13%" align = "center">Status</th>
<th width = "7%" align = "center">Edit</th>
<th width = "8%" align = "center">Hapus</th>
</tr>
</thead>
<?php
$query=$conn->query("SELECT * FROM users ORDER BY id_user ASC");
while($row=$query->fetch()){
$id=$row['id_user'];
$name=$row['username'];
$nama=$row['nama'];
$role=$row['role'];
$status=$row['status'];
?>
<tr>
<td>
<?php echo $id ;?>
</td>
<td>
<?php echo $name ;?>
</td>
<td>
<?php echo $nama ;?>
</td>
<td>
<?php echo $role ;?>
</td>
<td>
<?php echo $status ;?>
</td>
<td>
<a href = "edituser.php?id=<?php echo $id;?>"><button class = "alert-success">Edit</button></a>
</td>
<td>
<a href = "deleteuser.php?id=<?php echo $id;?>&role=<?php echo $role;?>" onclick = "return confirm('Apa anda yakin akan menghapus user ini?');"><button class = "alert-success">Delete</button></a></td>
</td>
</tr>
<?php }?>
</table>
добавлен скрипт для datatable, но он возвращает ошибку cannon переинициализировать таблицу данных
$(document).ready(function (){
var table = $('#example').dataTable({
"order": [[ 0, 'asc' ]]
});
});
Id_user - это строка?
его int со свойствами auto-inc
Если это int, он должен распечатать пользователей в правильном порядке. Покажите нам свой код целиком. @BillyAnthony
@BillyAnthony, если вы выполните тот же запрос SELECT * FROM users ORDER BY id_user ASC
в phpmyadmin, вы получите тот же порядок записей?
он работает так, как задумано в phpmyadmin, но не работает на странице
Я думаю, что эта проблема возникла во время записи отображения
$ row = $ query-> fetch (); и print_r ($ row); die (); и проверьте это правильно или нет
Можете ли вы print_r ($ row ['is_user']); и посмотреть, печатает ли он все строки в нужной последовательности?
Возможно, вы обращаетесь к другой базе данных в коде ....?
table id = "example" вы можете установить любой скрипт на table id?
У вас есть какой-то настраиваемый объект подключения к базе данных, который может переупорядочивать записи перед их возвратом?
@ReenaMori с print_r ($ row); die (); массив упорядочен по возрастанию
@Kickstart нет
попробуйте отобразить запись, используя другое сокращение, например foreach, для
с print_r ($ row ['id_user'] он дает правильный порядок вывода ... возможно, jquery.datatable.js возится с порядком
да, я уже спрашивал вас: - можете ли вы добавить любой скрипт в таблицу, если вы используете datatable, вам нужно установить порядок по умолчанию следующим образом: "order": [[0, "asc"]]
Тогда давайте правильно пометим этот вопрос, потому что он не имеет ничего общего с MySQL или php. Пожалуйста, добавьте код на стороне клиента уместным, который отображает результаты.
пожалуйста, поделитесь своим полным html-кодом с помощью скрипта и попробуйте: <table data-order = '[[1, "asc"]]'> в вашем html
а также удалите & nbsp; с каждого <td>
@ReenaMori решает проблему, удаляя только $ nbsp !! пожалуйста, напишите ответ, и я приму его, спасибо за помощь.
Мужчина уверен, что поле id_user имеет тип данных int в таблице БД.
А после попробуйте использовать «aaSorting». Ссылка: http://legacy.datatables.net/release-datatables/examples/basic_init/table_sorting.html
$(document).ready(function() {
$('#example').dataTable( {
"aaSorting": [[ 0, "asc" ]]
} );
} );
попробуй это :
<td>
<?php echo $id ;?>
</td>
Просто удалите из записи дисплея
для центрированных данных вы можете использовать класс начальной загрузки text-center
Тип данных id_user?