|
|
|
| При выводе информации почему-то постоянно пропускается(не отображается) первая запись
подскажите плз, где ошибка и как её исправить
<?php
//проверка данных
$S[1] = preg_replace("|[^"."0123456789%_ ]|", "", $S[1]);
$S[2] = preg_replace("|[^"."АБВГДЕЖЗИКЛМНОПРСТУФХЦЧШЩЬЄЮЯЇІабвгдежзийклмнопрстуфхцчшщьєюяії%_' ]|", "", $S[2]);
$S[3] = preg_replace("|[^"."АБВГДЕЖЗИКЛМНОПРСТУФХЦЧШЩЬЄЮЯЇІабвгдежзийклмнопрстуфхцчшщьєюяії%_' ]|", "", $S[3]);
$S[4] = preg_replace("|[^"."АБВГДЕЖЗИКЛМНОПРСТУФХЦЧШЩЬЄЮЯЇІабвгдежзийклмнопрстуфхцчшщьєюяії%_' ]|", "", $S[4]);
// Создаём запрос
$arr[1]="T";
$arr[2]="U";
$arr[3]="V";
$arr[4]="W";
$val[1]=" = '";
$val[2]=" like '";
$val[3]=" and ";
$val[4]="'";
$quer='';
for ($i=1; $i<=4; $i++)
{
$sub_S[$i] = substr_count($S[$i],"%") + substr_count($S[$i],"_");
$num==0;
if ($C[$i]=='ON')
{if ($num==0)
{$num[$i]=1;
if ($sub_S[$i]==0)
{$q[$i]=$arr[$i].$val[1].$S[$i].$val[4];}
else {$q[$i]=$arr[$i].$val[2].$S[$i].$val[4];};
}
else {if ($sub_S[$i]==0)
{$q[$i]=$val[3].$arr[$i].$val[1].$S[$i].$val[4];}
else {$q[$i]=$val[3].$arr[$i].$val[2].$S[$i].$val[4];};
};
};
$quer=$quer.$q[$i];
};
if ($quer == null)
{echo "<p align='Center'><font size=5>Вы ничего не ввели</font></p>\n";}
else {
//Данные для mysql сервера
include "config.php";
if ($flag==0)
{$size = "SELECT * FROM $dbtable where $quer;";
//Считаем количество строк
$res = mysql_query($size, $link);
$all = mysql_num_rows($res);};
//Данные
$shag = 25;
$start = ($page*$shag)-($shag-1);
//Делаем sql запрос
$query = "SELECT * FROM $dbtable where $quer Order by U, S LIMIT $start, $shag;";
//Ставим кодировку, в которой хранятся данные в MySQL
mysql_query("SET CHARSET cp1251");
// Запрашиваем
$result = mysql_query($query, $link);
//Проверяем, есть ли результаты
if (mysql_num_rows($result) == -1)
{echo "<font size=5>Поиск не дал результатов</font>\n";}
else {
//Создаём массив с названиями районов
$ragon[] = 'Балаклійський';
$ragon[] = 'Барвінківський';
$ragon[] = 'Блізнюківський';
$ragon[] = 'Богодухівський';
$ragon[] = 'Борівський';
$ragon[] = 'Валківський';
$ragon[] = 'Великобурлуцький';
$ragon[] = 'Вовчанський';
$ragon[] = 'Зміївський';
$ragon[] = 'Двуречанський';
$ragon[] = 'Дергачівський';
$ragon[] = 'Зачепілівський';
$ragon[] = 'Золочівський';
$ragon[] = 'Ізюмський';
$ragon[] = 'Кегічівський';
$ragon[] = 'Красноградський';
$ragon[] = 'Краснокутський';
$ragon[] = 'Куп"янський';
$ragon[] = 'Лозівський';
$ragon[] = 'Нововодолазький';
$ragon[] = 'Первомайський';
$ragon[] = 'Сахновщінський';
$ragon[] = 'Чугуївський';
$ragon[] = 'Харківський';
$ragon[] = 'Шевченківський';
$ragon[] = 'Дзержинський';
$ragon[] = 'Київський';
$ragon[] = 'Комінтерновський';
$ragon[] = 'Ленінський';
$ragon[] = 'Московський';
$ragon[] = 'Жовтневий';
$ragon[] = 'Орджонікідзевський';
$ragon[] = 'Червонозаводський';
$ragon[] = 'Фрунзенський';
$ragon[] = 'Печенізький';
$ragon[] = 'Коломацький';
echo "<font size=5>Результаты поиска</font>\n";
//Рисуем таблицу
echo "Всего найдено ", $all;
echo "<table border=1>\n";
echo "<tr><td>Код</td><td>Фамилия</td><td>Имя</td><td>Отчество</td><td>DA</td><td>DB</td><td>Район</td><td>Посмотреть</td></tr>\n";
while($rows = mysql_fetch_array($result))
{$qwe=$rows ["UID"];
$url="View.php?id=$qwe";
echo "<tr><td>", $rows ["T"], "</td>\n";
echo "<td>", $rows ["U"], "</td>\n";
echo "<td>", $rows ["V"], "</td>\n";
echo "<td>", $rows ["W"], "</td>\n";
echo "<td>", $rows ["S"], "</td>\n";
echo "<td>", $rows ["BA"], "</td>\n";
echo "<td>", $ragon[$rows ["P"]-1], "</td>\n";
echo "<td>", "<a href=$url>Анкета</a>", "</td></tr>\n";}
echo "</table>\n";
//Рисуем кнопки
$nawP = $page + 1;
$nawM = $page - 1;
$maxnaw = intval(($all/25)+1);
if ($maxnaw != 1 ) {
echo "Страница ", $page, " из ", $maxnaw;
echo "<form action='List.php' method='post'>
<input type='hidden' name='S[1]' value=$S[1]>
<input type='hidden' name='S[2]' value=$S[2]>
<input type='hidden' name='S[3]' value=$S[3]>
<input type='hidden' name='S[4]' value=$S[4]>
<input type='hidden' name='C[1]' value=$C[1]>
<input type='hidden' name='C[2]' value=$C[2]>
<input type='hidden' name='C[3]' value=$C[3]>
<input type='hidden' name='C[4]' value=$C[4]>
<input type='hidden' name='flag' value=1>
<input type='hidden' name='res' value=$res>
<input type='hidden' name='all' value=$all>
<select size='1' name='page'>";
for($n=1; $n <= $maxnaw; $n++)
echo "<option>".$n."</option>";
echo "<input type='submit' name='submit' value='Перейти'></p></form>";};};
// Закрываем соединение
mysql_close($link);}
?>
|
| |
|
|
|
|
|
|
|
для: Michail1982
(25.12.2006 в 10:37)
| | $page откуда берётся и какое значение принимает? | |
|
|
|
|
|
|
|
для: cheops
(25.12.2006 в 11:31)
| | Вот форма $page - целые положительные числа (с формы передаётся 1)
<?php /*include("Protect/protection.php"); /*include("test.php");*/?>
<html>
<head>
<meta HTTP-EQUIV="Content-Type" CONTENT="text/html; charset=windows-1251">
<meta http-equiv="Content-Language" content="ru">
</head>
<body>
<p align="Center"><form action="List.php" method="post">
<table border="1" id="table1">
<tr>
<td><span lang="ru">Код ЗО</span></td>
<td>
<input type="checkbox" name="C1" value="ON" tabindex="1"></td>
<td><input type="text" name="S1" tabindex="2" size="30"></textarea></td>
</tr>
<tr>
<td><span lang="ru">Фамилия</span></td>
<td>
<input type="checkbox" name="C2" value="ON" tabindex="3"></td>
<td><input type="text" name="S2" tabindex="4" size="30"></textarea></td>
</tr>
<tr>
<td><span lang="ru">Имя</span></td>
<td>
<input type="checkbox" name="C3" value="ON" tabindex="5"></td>
<td><input type="text" name="S3" tabindex="6" size="30"></textarea></td>
</tr>
<tr>
<td><span lang="ru">Отчество</span></td>
<td>
<input type="checkbox" name="C4" value="ON" tabindex="7"></td>
<td><input type="text" name="S4" tabindex="8" size="30"></textarea></td>
</tr>
</table>
<p align="center">
<input type="hidden" name="page" value="1">
<input type="hidden" name="flag" value="0">
<input type="submit" name="submit" value="Искать" tabindex="9">
<input type="reset" name="reset" value="Очистить" tabindex="10">
</p>
</form>
</p>
Внимание !!!<br>Символ "%" означает любое количество символов ( включая 0 )<br>, а символ "_" - один символ
</body>
</html>
|
| |
|
|
|
|
|
|
|
для: MIchail1982
(25.12.2006 в 12:02)
| | Попробуйте передать 0 - какая реакция скрипта? | |
|
|
|
|
|
|
|
для: cheops
(25.12.2006 в 12:25)
| | echo пишет, что запись найдена (или несколько)
но данных не выводит вообще
при переходе на страницу 1 (если результатов много) данные отображаются без первой записи
:0( | |
|
|
|
|
|
|
|
для: MIchail1982
(25.12.2006 в 13:04)
| | А если так, то всё работает нормально
<?php
//проверка данных
$S[1] = preg_replace("|[^"."0123456789%_ ]|", "", $S[1]);
$S[2] = preg_replace("|[^"."АБВГДЕЖЗИКЛМНОПРСТУФХЦЧШЩЬЄЮЯЇІабвгдежзийклмнопрстуфхцчшщьєюяії%_' ]|", "", $S[2]);
$S[3] = preg_replace("|[^"."АБВГДЕЖЗИКЛМНОПРСТУФХЦЧШЩЬЄЮЯЇІабвгдежзийклмнопрстуфхцчшщьєюяії%_' ]|", "", $S[3]);
$S[4] = preg_replace("|[^"."АБВГДЕЖЗИКЛМНОПРСТУФХЦЧШЩЬЄЮЯЇІабвгдежзийклмнопрстуфхцчшщьєюяії%_' ]|", "", $S[4]);
// Создаём запрос
$arr[1]="T";
$arr[2]="U";
$arr[3]="V";
$arr[4]="W";
$val[1]=" = '";
$val[2]=" like '";
$val[3]=" and ";
$val[4]="'";
$quer='';
for ($i=1; $i<=4; $i++)
{
$sub_S[$i] = substr_count($S[$i],"%") + substr_count($S[$i],"_");
$num==0;
if ($C[$i]=='ON')
{if ($num==0)
{$num[$i]=1;
if ($sub_S[$i]==0)
{$q[$i]=$arr[$i].$val[1].$S[$i].$val[4];}
else {$q[$i]=$arr[$i].$val[2].$S[$i].$val[4];};
}
else {if ($sub_S[$i]==0)
{$q[$i]=$val[3].$arr[$i].$val[1].$S[$i].$val[4];}
else {$q[$i]=$val[3].$arr[$i].$val[2].$S[$i].$val[4];};
};
};
$quer=$quer.$q[$i];
};
if ($quer == null)
{echo "<p align='Center'><font size=5>Вы ничего не ввели</font></p>\n";}
else {
//Данные для mysql сервера
include "config.php";
/*if ($flag==0)
{$size = "SELECT * FROM $dbtable where $quer;";
//Считаем количество строк
$res = mysql_query($size, $link);
$all = mysql_num_rows($res);};
//Данные
$shag = 25;
$start = ($page*$shag)-($shag-1);
*/
//Делаем sql запрос
//$query = "SELECT * FROM $dbtable where $quer Order by U, S LIMIT $start, $shag;";
$query = "SELECT * FROM $dbtable where $quer Order by U, S";
//Ставим кодировку, в которой хранятся данные в MySQL
mysql_query("SET CHARSET cp1251");
// Запрашиваем
$result = mysql_query($query, $link);
//Проверяем, есть ли результаты
if (mysql_num_rows($result) == -1)
{echo "<font size=5>Поиск не дал результатов</font>\n";}
else {
//Создаём массив с названиями районов
$ragon[] = 'Балаклійський';
$ragon[] = 'Барвінківський';
$ragon[] = 'Блізнюківський';
$ragon[] = 'Богодухівський';
$ragon[] = 'Борівський';
$ragon[] = 'Валківський';
$ragon[] = 'Великобурлуцький';
$ragon[] = 'Вовчанський';
$ragon[] = 'Зміївський';
$ragon[] = 'Двуречанський';
$ragon[] = 'Дергачівський';
$ragon[] = 'Зачепілівський';
$ragon[] = 'Золочівський';
$ragon[] = 'Ізюмський';
$ragon[] = 'Кегічівський';
$ragon[] = 'Красноградський';
$ragon[] = 'Краснокутський';
$ragon[] = 'Куп"янський';
$ragon[] = 'Лозівський';
$ragon[] = 'Нововодолазький';
$ragon[] = 'Первомайський';
$ragon[] = 'Сахновщінський';
$ragon[] = 'Чугуївський';
$ragon[] = 'Харківський';
$ragon[] = 'Шевченківський';
$ragon[] = 'Дзержинський';
$ragon[] = 'Київський';
$ragon[] = 'Комінтерновський';
$ragon[] = 'Ленінський';
$ragon[] = 'Московський';
$ragon[] = 'Жовтневий';
$ragon[] = 'Орджонікідзевський';
$ragon[] = 'Червонозаводський';
$ragon[] = 'Фрунзенський';
$ragon[] = 'Печенізький';
$ragon[] = 'Коломацький';
echo "<font size=5>Результаты поиска</font>\n";
//Рисуем таблицу
//echo "Всего найдено ", $all;
echo "<table border=1>\n";
echo "<tr><td>Код</td><td>Фамилия</td><td>Имя</td><td>Отчество</td><td>DA</td><td>DB</td><td>Район</td><td>Посмотреть</td></tr>\n";
while($rows = mysql_fetch_array($result))
{$qwe=$rows ["UID"];
$url="View.php?id=$qwe";
echo "<tr><td>", $rows ["T"], "</td>\n";
echo "<td>", $rows ["U"], "</td>\n";
echo "<td>", $rows ["V"], "</td>\n";
echo "<td>", $rows ["W"], "</td>\n";
echo "<td>", $rows ["S"], "</td>\n";
echo "<td>", $rows ["BA"], "</td>\n";
echo "<td>", $ragon[$rows ["P"]-1], "</td>\n";
echo "<td>", "<a href=$url>Анкета</a>", "</td></tr>\n";}
echo "</table>\n";
/* //Рисуем кнопки
$nawP = $page + 1;
$nawM = $page - 1;
$maxnaw = intval(($all/25)+1);
if ($maxnaw != 1 ) {
echo "Страница ", $page, " из ", $maxnaw;
echo "<form action='List.php' method='post'>
<input type='hidden' name='S[1]' value=$S[1]>
<input type='hidden' name='S[2]' value=$S[2]>
<input type='hidden' name='S[3]' value=$S[3]>
<input type='hidden' name='S[4]' value=$S[4]>
<input type='hidden' name='C[1]' value=$C[1]>
<input type='hidden' name='C[2]' value=$C[2]>
<input type='hidden' name='C[3]' value=$C[3]>
<input type='hidden' name='C[4]' value=$C[4]>
<input type='hidden' name='flag' value=1>
<input type='hidden' name='res' value=$res>
<input type='hidden' name='all' value=$all>
<select size='1' name='page'>";
for($n=1; $n <= $maxnaw; $n++)
echo "<option>".$n."</option>";
echo "<input type='submit' name='submit' value='Перейти'></p></form>";};*/};
// Закрываем соединение
mysql_close($link);}
?>
|
| |
|
|
|
|
|
|
|
для: Michail1982
(25.12.2006 в 21:04)
| | Разобрался :0))
надо было
$start = ($page*$shag)-($shag);
вместо
$start = ($page*$shag)-($shag-1); | |
|
|
|
|