Форум: Форум PHPФорум ApacheФорум Регулярные ВыраженияФорум MySQLHTML+CSS+JavaScriptФорум FlashРазное
Новые темы: 0000000
Социальная инженерия и социальные хакеры. Авторы: Кузнецов М.В., Симдянов И.В. PHP 5. На примерах. Авторы: Кузнецов М.В., Симдянов И.В., Голышев С.В. MySQL на примерах. Авторы: Кузнецов М.В., Симдянов И.В. PHP Puzzles. Авторы: Кузнецов М.В., Симдянов И.В. Объектно-ориентированное программирование на PHP. Авторы: Кузнецов М.В., Симдянов И.В.
ВСЕ НАШИ КНИГИ
Консультационный центр SoftTime

Форум MySQL

Выбрать другой форум

 

Здравствуйте, Посетитель!

вид форума:
Линейный форум Структурный форум

тема: сортировка выборки в таблице БД
 
 автор: Arta   (18.02.2016 в 14:05)   письмо автору
 
 

Уважаемые пользователи этого форума подскажите как мне решить данную как для меня очень серьёзную и тяжолую задачу,
как мне провести сортировку выбранных данных без ajax всё на php+mysql
[PHP]
<?PHP

mysql_connect("..........", "..........", "........");
$sql = mysql_query("SET CHARACTER SET cp1251_koi8");
mysql_select_db("База Данных");
$sql = "SELECT `city`, `sleeper`, `bedroom` FROM `users` group by `city`";
$result_select = mysql_query($sql);
//создаем массивы для хранения городов, гостей, спален
$city = array();
$sleeper = array();
$badgoom = array();
// достаем из таблицы столбцы city, sleeper, bedroom и распределяем их по массивам
while($res = mysql_fetch_object($result_select)){
$city[] = $res->city;
$sleeper[] = $res->sleeper;
$bedroom[] = $res->bedroom;
}
// далее код отвечающий за сортировку в табице вывода
// Значения, полученные из формы для сортировки
$sort = isset($_GET['sort']) ? $_GET['sort'] : 'desc';
$key = isset($_GET['key']) ? $_GET['key'] : 'number';

// Разрешённые значения
$key_array = array('number', 'city', 'name', 'sleeper', 'bedroom', 'price');
$sort_array = array('asc','desc');

// Часть SQL-запроса - фильтр
$orderby = " ORDER BY $key $sort";

// Меняем сортировку для правильного вывода в таблице
$sort = $sort == 'asc' ? 'desc' : 'asc';

// далее код отвечающий за выбор из базы. зачем $values, я не понимаю
if(!empty($_POST['bedroom']) && !empty($_POST['city']) && !empty($_POST['sleeper']))
{
$where = "WHERE `bedroom` = '".$_POST['bedroom']."' and `city`='".$_POST['city']."' and `sleeper`='".$_POST['sleeper']."'";
$values = null;
}
else
{
$where = null;
$values = null;
}

$query = "SELECT * FROM `users` $where $orderby";
$result = mysql_query($query) or die(mysql_error());

?>
<!--далее вывод формы с селектами-->
<h1>Гостинница</h1>

<h1 style="background-color:0000ff; padding:40px">
<form method="post">
<div style="float:left;margin-right:20px">
<select style= "width:200px;height:45px" name="city">
<option>Все города</option>
<?PHP foreach($city as $c){
if(isset($_POST['city']) && $_POST['city'] == $c){
?>
<option value="<?PHP echo $c;?>" selected="selected"><?PHP echo $c;?></option>
<?PHP }else{?>
<option value="<?PHP echo $c;?>"><?PHP echo $c;?></option>
<?PHP }} ?>
</select>
</div>
<div style="float:left;margin-right:20px">
<select style= "width:200px;height:45px" name="sleeper">
<option>Все гости</option>
<?PHP foreach($sleeper as $s){
if(isset($_POST['sleeper']) && $_POST['sleeper'] == $s){
?>
<option value="<?PHP echo $s;?>" selected="selected"><?PHP echo $s;?></option>
<?PHP }else{ ?>
<option value="<?PHP echo $s;?>"><?PHP echo $s;?></option>
<?PHP }}?>
</select>
</div>
<div style="float:left;margin-right:20px">
<select style= "width:200px;height:45px" name="bedroom">
<option>Все спальни</option>

<?PHP foreach( $bedroom as $b){
if(isset($_POST['bedroom']) && $_POST['bedroom'] == $b){
?>
<option value="<?PHP echo $b;?>" selected="selected"><?PHP echo $b;?></option>
<?PHP }else{?>
<option value="<?PHP echo $b;?>"><?PHP echo $b;?></option>
<?PHP }} ?>
</select>
<input type="submit" name="sub" style= "background-color:red;width:200px;height:45px" value = "Подобрать">
</div>
</h1>
</form>
</div>
<div style="clear:both;"></div>
<div style="margin-top:40px;">
<!-- далее проверяем, если есть в выборке данные выводим таблицу иначе сообщение "По вашему запросу, ничего не найдено."-->
<?PHP if(mysql_num_rows($result)> 0){?>
<table align= "center" border = 1>
<tr>
<th width='50'><a href="?key=number&sort=<?=$sort . $values?>">Номер</a></th>
<th width='50'><a href="?key=city&sort=<?=$sort . $values?>">Місто</a></th>
<th width='50'><a href="?key=name&sort=<?=$sort . $values?>">Назва</a></th>
<th width='50'><a href="?key=sleeper&sort=<?=$sort . $values?>">Гостей</a></th>
<th width='50'><a href="?key=bedroom&sort=<?=$sort . $values?>">Спальні</a></th>
<th width='50'><a href="?key=price&sort=<?=$sort . $values?>">Ціна</a></th>
</th></tr>
<? while($row = mysql_fetch_assoc($result)): ?>
<tr>
<td><?=$row['number']?></td>
<td><?=$row['city']?></td>
<td><?=$row['name']?></td>
<td><?=$row['sleeper']?></td>
<td><?=$row['bedroom']?></td>
<td><?=substr($row['price'],0,30)?></td>
</tr>
<? endwhile; ?>
</table>
<?PHP }else{?>
<p>По вашему запросу, ничего не найдено.</p>
<?PHP }?>
</div>
[/PHP]


[PHP]
<?php
error_reporting(E_ALL);

mysql_connect("...........", "..........", ".........");
$sql = mysql_query("SET CHARACTER SET cp1251_koi8");
mysql_select_db(".............");
// если есть $_POST, формируем WHERE для запроса
$where = '';
if (!empty($_POST['bedroom'])){
if ($_POST['bedroom'] != 'Все спальни'){
$where .= (empty($where)?'':' and ')."`bedroom` = '".$_POST['bedroom']."'ORDER BY bedroom ASC ";

}
}
if (!empty($_POST['city'])){
if ($_POST['city'] != 'Все города'){
$where .= (empty($where)?'':' and ')."`city` = '".$_POST['city']."'ORDER BY city ASC ";

}

}
if (!empty($_POST['sleeper'])){
if ($_POST['sleeper'] != 'Все гости'){
$where .= (empty($where)?'':' and ')."`sleeper` = '".$_POST['sleeper']."'ORDER BY sleeper ASC ";

}
}

$sql = "SELECT * FROM `users`". (empty($where)?'':'WHERE'.$where);

$result = mysql_query($sql);
while($res = mysql_fetch_object($result)){
$city[] = $res->city;
$sleeper[] = $res->sleeper;
$bedroom[] = $res->bedroom;
$number[] = $res->number;
$name[] = $res->name;
$price[] = $res->price;
}
?>

<!--далее вывод формы с селектами-->
<h1>Гостинница</h1>
<h1 style="background-color:0000ff; padding:40px">
<form method="post">
<div style="float:left;margin-right:20px">
<select style= "width:200px;height:45px" name="city">
<option>Все города</option>
<?PHP
$city_sel = array_unique($city);
foreach($city_sel as $c){
if(isset($_POST['city']) && $_POST['city'] == $c){
?>
<option value="<?PHP echo $c;?>" selected="selected"><?PHP echo $c;?></option>
<?PHP }else{?>
<option value="<?PHP echo $c;?>"><?PHP echo $c;?></option>
<?PHP }} ?>
</select>
</div>
<div style="float:left;margin-right:20px">
<select style= "width:200px;height:45px" name="sleeper">
<option>Все гости</option>
<?PHP
$sleeper_sel = array_unique($sleeper);
foreach($sleeper_sel as $s){
if(isset($_POST['sleeper']) && $_POST['sleeper'] == $s){
?>
<option value="<?PHP echo $s;?>" selected="selected"><?PHP echo $s;?></option>
<?PHP }else{ ?>
<option value="<?PHP echo $s;?>"><?PHP echo $s;?></option>
<?PHP }}?>
</select>
</div>
<div style="float:left;margin-right:20px">
<select style= "width:200px;height:45px" name="bedroom">
<option>Все спальни</option>

<?PHP
$bedroom_sel = array_unique($bedroom);
foreach( $bedroom_sel as $b){
if(isset($_POST['bedroom']) && $_POST['bedroom'] == $b){
?>
<option value="<?PHP echo $b;?>" selected="selected"><?PHP echo $b;?></option>
<?PHP }else{?>
<option value="<?PHP echo $b;?>"><?PHP echo $b;?></option>
<?PHP }} ?>
</select>
<input type="submit" name="sub" style= "background-color:red;width:200px;height:45px" value = "Подобрать">
</div>
</select>
</h1>
</form>
</div>

<?
// Подключение к MySQL
$con = mysql_connect("..........","...........","............");
if (!$con)
die('Could not connect: ' . mysql_error());
mysql_select_db(".............", $con);
$sql = mysql_query("SET CHARACTER SET cp1251_koi8");

$bed = "";
if(isset($_GET['bedroom']))
$bedrooms = "&bedroom=".$_GET['bedroom'];
// Значения, полученные из формы
$sort = isset($_GET['sort']) ? $_GET['sort'] : 'desc';
$key = isset($_GET['key']) ? $_GET['key'] : 'number';

// Разрешённые значения
$key_array = array('number', 'city', 'name', 'sleeper', 'bedroom', 'price');
$sort_array = array('asc','desc');

// Если указаны неправильные данные - выход
if(!in_array($key, $key_array) or !in_array($sort, $sort_array))

exit('Неверный формат запроса!');
if(isset($_GET['price']) and (empty($_GET['v1']) or empty($_GET['v2'])))
exit('Пустой запрос!');

// Часть SQL-запроса - фильтр
$orderby = " ORDER BY $key $sort";

// Если кол-во лет заполнено - вводим его в mysql-запрос и добавляем в фильтры таблицы
if(!empty($_GET['v1']) and !empty($_GET['v2']))
{
$where = 'WHERE `bedroom` BETWEEN ' . $_GET['v1'] . ' AND ' . $_GET['v2'];
$values = '&v1=' . $_GET['v1'] .'&v2=' . $_GET['v2'];
}
elseif(!empty($_GET['bedroom']))

{
$where = 'WHERE `bedroom` = "' . $_GET['bedroom'] . '"';
$values = null;
}

else
{
$where = null;
$values = null;
}
// Запрос к БД
$query = "";

$query ="SELECT * from `users` $where $orderby";

$result = mysql_query($query) or die(mysql_error());

// Меняем сортировку для правильного вывода в таблице
$sort = $sort == 'asc' ? 'desc' : 'asc';
?>


<?php
header("Content-Values: text/html; SET CHARACTER SET cp1251_koi8");
error_reporting(E_ALL);

$SQLHost = ".........";
$SQLDB = "...........";
$SQLUser = "...............";
$SQLPassw = "...............";

mysql_connect($SQLHost, $SQLUser, $SQLPassw);
$sql = mysql_query("SET CHARACTER SET cp1251_koi8");
mysql_select_db($SQLDB);

if ( empty($_GET['orderby']) ) {
$orderby = 'number';
} else {
$orderby = $_GET['orderby'];
}

if ( empty($_GET['sortvalues']) ) {
$sortValues = 'ASC';
$sqlQuery = "SELECT * FROM users ORDER BY " . $orderby . " " . $sortValues . "";

} else if ( $_GET['sortvalues'] == 'ASC' ) {
$sortValues = 'ASC';
$sqlQuery = "SELECT * FROM users ORDER BY " . $orderby . " " . $sortValues . "";
} else if ( $_GET['sortvalues'] == 'DESC' ) {
$sortValues = 'DESC';
$sqlQuery = "SELECT * FROM users ORDER BY " . $orderby . " " . $sortValues . "";
}

$result = mysql_query($sqlQuery);
$dataArray = array();
$i=0;
while ($res = mysql_fetch_array($result)) {
$dataArray[$i]['number'] = $res['number'];
$dataArray[$i]['city'] = $res['city'];
$dataArray[$i]['name'] = $res['name'];
$dataArray[$i]['sleeper'] = $res['sleeper'];
$dataArray[$i]['bedroom'] = $res['bedroom'];
$dataArray[$i]['price'] = $res['price'];
$i++;
}


$sortValues = ($sortValues == 'ASC') ? $sortValues = 'DESC' : $sortValues = 'ASC';

?>

</div>
<br />
<a href="?">Сортировка по умолчанию ( по номеру|по возрастанию )</a>
<br />
<a href="?orderby=number&sortvalues=<?php echo $sortValues?>">По номеру</a>
<br />
<a href="?orderby=price&sortvalues=<?php echo $sortValues?>">По цене</a>
<br />
<div style="clear:both;"></div>
<div style="margin-top:40px;">
<!-- далее проверяем, если есть в выборке данные выводим таблицу иначе сообщение "По вашему запросу, ничего не найдено."-->
<?PHP if($city){?>
<table align= "center" border = 1>
<tr>
<th width="50"><a href="?orderby=number&sorttype=<?php echo $sortType?>">Номер</a></th>
<th width='50'><a href="?orderby=city&sorttype=<?php echo $sortType?>">Місто</a></th>
<th width='50'><a href="?orderby=name&sorttype=<?php echo $sortType?>">Назва</a></th>
<th width='50'><a href="?orderby=sleeper&sorttype=<?php echo $sortType?>">Гостей</a></th>
<th width='50'><a href="?orderby=bedroom&sorttype=<?php echo $sortType?>">Спальні</a></th>
<th width='50'><a href="?orderby=price&sorttype=<?php echo $sortType?>">Ціна</a></th>
</tr>
<?php foreach ( $dataArray as $num=>$numArray ) { ?>
<tr>
<td><?php echo $dataArray[$num]['number']?></td>
<td><?php echo $dataArray[$num]['city']?></td>
<td><?php echo $dataArray[$num]['name']?></td>
<td><?php echo $dataArray[$num]['sleeper']?></td>
<td><?php echo $dataArray[$num]['bedroom']?></td>
<td><?php echo $dataArray[$num]['price']?></td>
</tr>
<?php } ?>

</table>
<?PHP } else {?>
<p>По вашему запросу, ничего не найдено.</p>
<?PHP }?>
</div>
[/PHP]
в этом мне не всё понятно а именно то что когда я подставляю эту часть кода
[PHP]
<? while($row = mysql_fetch_assoc($result)): ?>
<tr>
<td><?=$row['number']?></td>
<td><?=$row['city']?></td>
<td><?=$row['name']?></td>
<td><?=$row['sleeper']?></td>
<td><?=$row['bedroom']?></td>
<td><?=substr($row['price'],0,30)?></td>
</tr>
<? endwhile; ?>
</table>
<?PHP }else{?>
<p>По вашему запросу, ничего не найдено.</p>
<?PHP }?>
</div>
[/PHP]
вместо этой
[PHP]
<?php foreach ( $dataArray as $num=>$numArray ) { ?>
<tr>
<td><?php echo $dataArray[$num]['number']?></td>
<td><?php echo $dataArray[$num]['city']?></td>
<td><?php echo $dataArray[$num]['name']?></td>
<td><?php echo $dataArray[$num]['sleeper']?></td>
<td><?php echo $dataArray[$num]['bedroom']?></td>
<td><?php echo $dataArray[$num]['price']?></td>
</tr>
<?php } ?>

</table>
<?PHP } else {?>
<p>По вашему запросу, ничего не найдено.</p>
<?PHP }?>
</div>
[/PHP]
вот в этой части скрипта
[PHP]
<?php
error_reporting(E_ALL);

mysql_connect("..........", "................", "..........");
$sql = mysql_query("SET CHARACTER SET cp1251_koi8");
mysql_select_db(".............");
// если есть $_POST, формируем WHERE для запроса
$where = '';
if (!empty($_POST['bedroom'])){
if ($_POST['bedroom'] != 'Все спальни'){
$where .= (empty($where)?'':' and ')."`bedroom` = '".$_POST['bedroom']."'ORDER BY bedroom ASC ";

}
}
if (!empty($_POST['city'])){
if ($_POST['city'] != 'Все города'){
$where .= (empty($where)?'':' and ')."`city` = '".$_POST['city']."'ORDER BY city ASC ";

}

}
if (!empty($_POST['sleeper'])){
if ($_POST['sleeper'] != 'Все гости'){
$where .= (empty($where)?'':' and ')."`sleeper` = '".$_POST['sleeper']."'ORDER BY sleeper ASC ";

}
}

$sql = "SELECT * FROM `users`". (empty($where)?'':'WHERE'.$where);

$result = mysql_query($sql);
while($res = mysql_fetch_object($result)){
$city[] = $res->city;
$sleeper[] = $res->sleeper;
$bedroom[] = $res->bedroom;
$number[] = $res->number;
$name[] = $res->name;
$price[] = $res->price;
}
?>

<!--далее вывод формы с селектами-->
<h1>Гостинница</h1>
<h1 style="background-color:0000ff; padding:40px">
<form method="post">
<div style="float:left;margin-right:20px">
<select style= "width:200px;height:45px" name="city">
<option>Все города</option>
<?PHP
$city_sel = array_unique($city);
foreach($city_sel as $c){
if(isset($_POST['city']) && $_POST['city'] == $c){
?>
<option value="<?PHP echo $c;?>" selected="selected"><?PHP echo $c;?></option>
<?PHP }else{?>
<option value="<?PHP echo $c;?>"><?PHP echo $c;?></option>
<?PHP }} ?>
</select>
</div>
<div style="float:left;margin-right:20px">
<select style= "width:200px;height:45px" name="sleeper">
<option>Все гости</option>
<?PHP
$sleeper_sel = array_unique($sleeper);
foreach($sleeper_sel as $s){
if(isset($_POST['sleeper']) && $_POST['sleeper'] == $s){
?>
<option value="<?PHP echo $s;?>" selected="selected"><?PHP echo $s;?></option>
<?PHP }else{ ?>
<option value="<?PHP echo $s;?>"><?PHP echo $s;?></option>
<?PHP }}?>
</select>
</div>
<div style="float:left;margin-right:20px">
<select style= "width:200px;height:45px" name="bedroom">
<option>Все спальни</option>

<?PHP
$bedroom_sel = array_unique($bedroom);
foreach( $bedroom_sel as $b){
if(isset($_POST['bedroom']) && $_POST['bedroom'] == $b){
?>
<option value="<?PHP echo $b;?>" selected="selected"><?PHP echo $b;?></option>
<?PHP }else{?>
<option value="<?PHP echo $b;?>"><?PHP echo $b;?></option>
<?PHP }} ?>
</select>
<input type="submit" name="sub" style= "background-color:red;width:200px;height:45px" value = "Подобрать">
</div>
</select>
</h1>
</form>
</div>

<?
// Подключение к MySQL
$con = mysql_connect("............",".............","..............");
if (!$con)
die('Could not connect: ' . mysql_error());
mysql_select_db(".............", $con);
$sql = mysql_query("SET CHARACTER SET cp1251_koi8");

$bed = "";
if(isset($_GET['bedroom']))
$bedrooms = "&bedroom=".$_GET['bedroom'];
// Значения, полученные из формы
$sort = isset($_GET['sort']) ? $_GET['sort'] : 'desc';
$key = isset($_GET['key']) ? $_GET['key'] : 'number';

// Разрешённые значения
$key_array = array('number', 'city', 'name', 'sleeper', 'bedroom', 'price');
$sort_array = array('asc','desc');

// Если указаны неправильные данные - выход
if(!in_array($key, $key_array) or !in_array($sort, $sort_array))

exit('Неверный формат запроса!');
if(isset($_GET['price']) and (empty($_GET['v1']) or empty($_GET['v2'])))
exit('Пустой запрос!');

// Часть SQL-запроса - фильтр
$orderby = " ORDER BY $key $sort";

// Если кол-во лет заполнено - вводим его в mysql-запрос и добавляем в фильтры таблицы
if(!empty($_GET['v1']) and !empty($_GET['v2']))
{
$where = 'WHERE `bedroom` BETWEEN ' . $_GET['v1'] . ' AND ' . $_GET['v2'];
$values = '&v1=' . $_GET['v1'] .'&v2=' . $_GET['v2'];
}
elseif(!empty($_GET['bedroom']))

{
$where = 'WHERE `bedroom` = "' . $_GET['bedroom'] . '"';
$values = null;
}

else
{
$where = null;
$values = null;
}
// Запрос к БД
$query = "";

$query ="SELECT * from `users` $where $orderby";

$result = mysql_query($query) or die(mysql_error());

// Меняем сортировку для правильного вывода в таблице
$sort = $sort == 'asc' ? 'desc' : 'asc';
?>


<?php
header("Content-Values: text/html; SET CHARACTER SET cp1251_koi8");
error_reporting(E_ALL);

$SQLHost = "...............";
$SQLDB = "..........";
$SQLUser = "..............";
$SQLPassw = "............";

mysql_connect($SQLHost, $SQLUser, $SQLPassw);
$sql = mysql_query("SET CHARACTER SET cp1251_koi8");
mysql_select_db($SQLDB);

if ( empty($_GET['orderby']) ) {
$orderby = 'number';
} else {
$orderby = $_GET['orderby'];
}

if ( empty($_GET['sortvalues']) ) {
$sortValues = 'ASC';
$sqlQuery = "SELECT * FROM users ORDER BY " . $orderby . " " . $sortValues . "";

} else if ( $_GET['sortvalues'] == 'ASC' ) {
$sortValues = 'ASC';
$sqlQuery = "SELECT * FROM users ORDER BY " . $orderby . " " . $sortValues . "";
} else if ( $_GET['sortvalues'] == 'DESC' ) {
$sortValues = 'DESC';
$sqlQuery = "SELECT * FROM users ORDER BY " . $orderby . " " . $sortValues . "";
}

$result = mysql_query($sqlQuery);
$dataArray = array();
$i=0;
while ($res = mysql_fetch_array($result)) {
$dataArray[$i]['number'] = $res['number'];
$dataArray[$i]['city'] = $res['city'];
$dataArray[$i]['name'] = $res['name'];
$dataArray[$i]['sleeper'] = $res['sleeper'];
$dataArray[$i]['bedroom'] = $res['bedroom'];
$dataArray[$i]['price'] = $res['price'];
$i++;
}


$sortValues = ($sortValues == 'ASC') ? $sortValues = 'DESC' : $sortValues = 'ASC';

?>

</div>
<br />
<a href="?">Сортировка по умолчанию ( по номеру|по возрастанию )</a>
<br />
<a href="?orderby=number&sortvalues=<?php echo $sortValues?>">По номеру</a>
<br />
<a href="?orderby=price&sortvalues=<?php echo $sortValues?>">По цене</a>
<br />
<div style="clear:both;"></div>
<div style="margin-top:40px;">
<!-- далее проверяем, если есть в выборке данные выводим таблицу иначе сообщение "По вашему запросу, ничего не найдено."-->
<?PHP if($city){?>
<table align= "center" border = 1>
<tr>
<th width="50"><a href="?orderby=number&sorttype=<?php echo $sortType?>">Номер</a></th>
<th width='50'><a href="?orderby=city&sorttype=<?php echo $sortType?>">Місто</a></th>
<th width='50'><a href="?orderby=name&sorttype=<?php echo $sortType?>">Назва</a></th>
<th width='50'><a href="?orderby=sleeper&sorttype=<?php echo $sortType?>">Гостей</a></th>
<th width='50'><a href="?orderby=bedroom&sorttype=<?php echo $sortType?>">Спальні</a></th>
<th width='50'><a href="?orderby=price&sorttype=<?php echo $sortType?>">Ціна</a></th>
</tr>
<?php foreach ( $dataArray as $num=>$numArray ) { ?>
<tr>
<td><?php echo $dataArray[$num]['number']?></td>
<td><?php echo $dataArray[$num]['city']?></td>
<td><?php echo $dataArray[$num]['name']?></td>
<td><?php echo $dataArray[$num]['sleeper']?></td>
<td><?php echo $dataArray[$num]['bedroom']?></td>
<td><?php echo $dataArray[$num]['price']?></td>
</tr>
<?php } ?>

</table>
<?PHP } else {?>
<p>По вашему запросу, ничего не найдено.</p>
<?PHP }?>
</div>

[/PHP]
и работает то выборка то сортировка,когда работает сортировка выборка остаётся в выпадающих списках как сделать чтобы работала и выборка и сортировка в этой таблице???

  Ответить  
 
 автор: elenaki   (18.02.2016 в 14:13)   письмо автору
 
   для: Arta   (18.02.2016 в 14:05)
 

Смешно.

  Ответить  
 
 автор: KPETuH   (18.02.2016 в 15:49)   письмо автору
 
   для: Arta   (18.02.2016 в 14:05)
 

Лучше бы вы дали ссылку на страницу где все это работает, и указали что вам надо (что не работает).

  Ответить  
 
 автор: Arta   (19.02.2016 в 10:59)   письмо автору
 
   для: KPETuH   (18.02.2016 в 15:49)
 

Вот ссылка примера http://dizarius.com/arta/sorting.php проведите сортировку по нажатии на указанные названия,по умолчанию,по номеру и по цене,сортировка работает а вот при выборке когда выбираете определённый город или что-то подобное то выбираются только с первого наименования из таблицы и в таком случае я не знаю что сделать а при изменении той части скрипта которая находится под таблицей работает или сортировка или выборка а и сортировка и выборка не работает,вот один пример где правильно работает выборка http://dizarius.com/arta/gos4.php а вот здесь всё тот-же код только изменения в окончании таблицы http://dizarius.com/arta/sorting.php вот к наглядному примеру как выглядят таблицы
Здесь правильно работает выборка
[PHP]
<table align= "center" border = 1>
<tr>
<th width='50'><a href="?key=number&sort=<?=$sort . $values?>">Номер</a></th>
<th width='50'><a href="?key=city&sort=<?=$sort . $values?>">Місто</a></th>
<th width='50'><a href="?key=name&sort=<?=$sort . $values?>">Назва</a></th>
<th width='50'><a href="?key=sleeper&sort=<?=$sort . $values?>">Гостей</a></th>
<th width='50'><a href="?key=bedroom&sort=<?=$sort . $values?>">Спальні</a></th>
<th width='50'><a href="?key=price&sort=<?=$sort . $values?>">Ціна</a></th>
</th></tr>
<? while($row = mysql_fetch_assoc($result)): ?>
<tr>
<td><?=$row['number']?></td>
<td><?=$row['city']?></td>
<td><?=$row['name']?></td>
<td><?=$row['sleeper']?></td>
<td><?=$row['bedroom']?></td>
<td><?=substr($row['price'],0,30)?></td>
</tr>
<? endwhile; ?>
</table>
<?PHP }else{?>
<p>По вашему запросу, ничего не найдено.</p>
<?PHP }?>
</div>
[/PHP]
Здесь правильно работает сортировка
[PHP]
<?PHP if($city){?>
<table align= "center" border = 1>
<tr>
<th width="50"><a href="?orderby=number&sorttype=<?php echo $sortType?>">Номер</a></th>
<th width='50'><a href="?orderby=city&sorttype=<?php echo $sortType?>">Місто</a></th>
<th width='50'><a href="?orderby=name&sorttype=<?php echo $sortType?>">Назва</a></th>
<th width='50'><a href="?orderby=sleeper&sorttype=<?php echo $sortType?>">Гостей</a></th>
<th width='50'><a href="?orderby=bedroom&sorttype=<?php echo $sortType?>">Спальні</a></th>
<th width='50'><a href="?orderby=price&sorttype=<?php echo $sortType?>">Ціна</a></th>
</tr>
<?php foreach ( $dataArray as $num=>$numArray ) { ?>
<tr>
<td><?php echo $dataArray[$num]['number']?></td>
<td><?php echo $dataArray[$num]['city']?></td>
<td><?php echo $dataArray[$num]['name']?></td>
<td><?php echo $dataArray[$num]['sleeper']?></td>
<td><?php echo $dataArray[$num]['bedroom']?></td>
<td><?php echo $dataArray[$num]['price']?></td>
</tr>
<?php } ?>

</table>
<?PHP } else {?>
<p>По вашему запросу, ничего не найдено.</p>
<?PHP }?>
</div>

[/PHP]
а и выборка и сортировка не как не работает,подскажите пожалуйста,как это сделать???

  Ответить  
 
 автор: KPETuH   (19.02.2016 в 13:10)   письмо автору
 
   для: Arta   (19.02.2016 в 10:59)
 

Выборка у вас методом POST, сортировка методом GET, если вы переделаете выборку в GET то сортировка заработает.

  Ответить  
 
 автор: Arta   (19.02.2016 в 19:56)   письмо автору
 
   для: KPETuH   (19.02.2016 в 13:10)
 

Я конечно извиняюсь скажу всё как есть в php+mysql очень мало понимаю и стараюсь вести обучение,мой хороший знакомый программист сейчас в Днепропетровске и этот код написан не мной а им и он мне делал советы я тебе дам рабочий код для того чтобы ты понял как он работает дальше будем усложнять и изменять скрипт и таким путём будем вести обучение но сейчас мне много чего не понятно из POST в GET я переписывал заменяя слова get на post и не чего не происходит а как переписать его полностью не знаю а когда я вижу рабочий код я себе выписую что как работает и таким образом создаю что-то подобное и веду обучение того что не понятно,подскажите пожалуйста как мне нужно всё это изменить для того чтобы я имел хоть какое-то представление о том чего сейчас не понимаю,за наглость мою извините но так как я не где не чего не учил только коды и видеоуроки мне очень нужна чья-то помощь помогите мне решить этот вопрос и я уже буду разбирать и понимать что делал не так и как нужно делать,помогите мне пожалуйста...

  Ответить  
 
 автор: Valick   (19.02.2016 в 23:09)   письмо автору
 
   для: Arta   (19.02.2016 в 19:56)
 

купите книгу и учите

  Ответить  
 
 автор: Arta   (22.02.2016 в 13:12)   письмо автору
 
   для: KPETuH   (19.02.2016 в 13:10)
 

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

  Ответить  
Rambler's Top100
вверх

Rambler's Top100 Яндекс.Метрика Яндекс цитирования