376

Re: Выпадающий список

пока отставлю решение на потом.  А вот здесь посоветуйте, в масив

$aName = array('achilles','aeolus','amtel','autoguard';

нужно подгружать данные из базы ( brands ) пусть бренды из базы грузятся чтоб не вписывать каждый раз наново

377

Re: Выпадающий список

Как саму выборку в масив прописать?

378

Re: Выпадающий список

function brands() {

$return = array();
$sql = 'SELECT `brand` FROM `table`';

if ($result = mysql_query($sql)) {
  while ($row = mysql_fetch_assoc($result)) {
    $return[] = $row["brand"];
  }
  mysql_free_result($result);
}

return $return;
}

$aName = brands();

379

Re: Выпадающий список

Всем привет. Нужна помощь по select'ам.
Ситуация такая что селекты с "Образования" запоминаются, а вот с "Специальности" или "Факультета" не запоминаются.
Не могу понять в чем проблема sad , помогите разобраться

Ниже привожу полный код


 
<?PHP
    session_name("students");
    session_start();
?>
 
<?PHP
 
        include("connect.php");
       
    if(!isset($_SESSION['id'])) {
        exit("Необходимо авторизоваться!!!");
    }
 
 
    if(isset($_POST['edit_this_user'])) {
       
         $r = mysql_query("SELECT id FROM adres WHERE adres='{$_POST['adres']}'", $db) or die(mysql_error());
        if(!mysql_num_rows($r)) {
            mysql_query("INSERT INTO adres (adres) VALUES ('{$_POST['adres']}')", $db);
            $adres_id = mysql_insert_id($db);
        }
        else {
            $r = mysql_fetch_array($r);
            $adres_id = $r['id'];
        }
 
        $r = mysql_query("SELECT id FROM facu WHERE facu='{$_POST['facu']}'", $db) or die(mysql_error());
        if(!mysql_num_rows($r)) {
            mysql_query("INSERT INTO facu (facu) VALUES ('{$_POST['facu']}')", $db);
            $facu_id = mysql_insert_id($db);
        }
        else {
            $r = mysql_fetch_array($r);
            $facu_id = $r['id'];
        }
               
        $r = mysql_query("SELECT id FROM spec WHERE spec='{$_POST['spec']}'", $db) or die(mysql_error());
        if(!mysql_num_rows($r)) {
            mysql_query("INSERT INTO spec (spec) VALUES ('{$_POST['spec']}')", $db);
            $spec_id = mysql_insert_id($db);
        }
        else {
            $r = mysql_fetch_array($r);
            $spec_id = $r['id'];
        }
 
        $r = mysql_query("SELECT id FROM work WHERE work='{$_POST['work']}'", $db) or die(mysql_error());
        if(!mysql_num_rows($r)) {
            mysql_query("INSERT INTO work (work) VALUES ('{$_POST['work']}')", $db);
            $work_id = mysql_insert_id($db);
        }
        else {
            $r = mysql_fetch_array($r);
            $work_id = $r['id'];
        }
 
        $r = mysql_query("UPDATE students SET family = '{$_POST["family"]}', name = '{$_POST['name']}', otch = '{$_POST['otch']}', birthday = '{$_POST['birthday']}', poul = {$_POST['poul']}, st_group = '{$_POST['st_group']}', num_zach = '{$_POST['num_zach']}', facu_id = $facu_id, spec_id = $spec_id, phone = {$_POST['phone']}, mess = '{$_POST['mess']}', work_id = $work_id, adres_id = $adres_id, abit = '{$_POST['abit']}' WHERE id='{$_POST['edit_student']}'", $db) or die(mysql_error());
                                                               
        if($r) {
            echo '<h1 align="center">Запись отредактирована!</h1><br>';
        }
        else {
            echo '<h1 align="center">Произошла ошибка! Попытайтесь снова!</h1>';
        }
    }
 ?>
 
 <h1 align="center">Редактировать запись</h1><br><br>
<?PHP
    if(!isset($_GET['edit_student'])) {
?>
    <form action="e.php" method="get">
        <select name="edit_student">
    <?PHP
        $rez = mysql_query("SELECT id, family, name, otch FROM students", $db) or die(mysql_error());
        while($r = mysql_fetch_array($rez)) {
            echo '\t\t\t<option value="' . $r['id'] . '">' . $r['family'] . ' ' . $r['name'] . ' ' . $r['otch'] .'</option>';
        }
    ?>
     </select><ol>      <br>
        <input type="submit" value="&nbspРедактировать данные&nbsp" />
        </ol>   </form>
<?PHP
    }
    else {
        $stud = mysql_query("SELECT family, name, otch, birthday, poul, st_group, num_zach, facu_id, spec_id, phone, mess, work_id, adres_id, abit FROM students WHERE id='{$_GET['edit_student']}'", $db) or die(mysql_error());
        $stud = mysql_fetch_array($stud);
 
        $facu = mysql_query("SELECT facu FROM facu WHERE id='{$stud['facu_id']}'", $db) or die(mysql_error());
        $facu = mysql_fetch_array($facu);
               
        $spec = mysql_query("SELECT spec FROM spec WHERE id='{$stud['spec_id']}'", $db) or die(mysql_error());
        $spec = mysql_fetch_array($spec);
 
        $work = mysql_query("SELECT work FROM work WHERE id='{$stud['work_id']}'", $db) or die(mysql_error());
        $work = mysql_fetch_array($work);
       
         $adres = mysql_query("SELECT adres FROM adres WHERE id='{$stud['adres_id']}'", $db) or die(mysql_error());
        $adres = mysql_fetch_array($adres);
     
?>
 
<form  id="signup" action="e.php" method="POST">
<table>
<input type="hidden" name="edit_student" value="<?PHP echo $_GET['edit_student']; ?>" />
<tr><td><p class=zag2>Фамилия</td><td><input size=61 class=input type=text name=family value='<?PHP echo $family; ?>'></td></tr>
<tr><td><p class=zag2>Имя</td><td><input size=61 class=input type=text name=name value='<?PHP echo $name; ?>'></td></tr>
<tr><td><p class=zag2>Отчество</td><td><input size=61 class=input type=text name=otch value='<?PHP echo $otch; ?>'></td></tr>
<tr><td><p class=zag2>Дата рождения</td><td><input size=61 class=input type=date name=birthday value='<?PHP echo $birthday; ?>'></td></tr>
<tr><td><p class=zag2>Пол</td><td><input size=61 class=input type=text name=poul value='<?PHP echo $poul; ?>'></td></tr>    
<tr><td><p class=zag2>Группа</td><td><input size=61 class=input type=text name=st_group value='<?PHP echo $st_group; ?>'></td></tr>    
<tr><td><p class=zag2>Номер зачётки</td><td><input size=61 class=input type=text name=num_zach value='<?PHP echo $num_zach; ?>'></td></tr>
<tr><td><p class=zag2>Работа</td><td><input size=61 class=input type=text name=work value='<?PHP echo $work['work']; ?>'></td></tr>
<tr><td><p class=zag2>Адресс</td><td><input size=61 class=input type=text name=adres value='<?PHP echo $adres['adres']; ?>'></td></tr>
<tr><td><p class=zag2>Телефон</td><td><input size=61 class=input type=text name=phone value='<?PHP echo $phone; ?>'></td></tr>
<tr><td><p class=zag2>E-mail</td><td><input size=61 class=input type=text name=mess value='<?PHP echo $mess; ?>'></td></tr>
 
 
<tr>
  <td><p class=zag2>Образование</td>
  <td>
    <select class=input type=text name=abit>
           <option value='sred' <?PHP if($abit == 'sred') echo "selected"; ?>>Среднее полное (11 кл.)
           <option value='srspec' <?PHP if($abit == 'srspec') echo "selected"; ?>>Среднее специальное
           <option value='srprof' <?PHP if($abit == 'srprof') echo "selected"; ?>>Среднее профессиональное
           <option value='vishee' <?PHP if($abit == 'vishee') echo "selected"; ?>>Высшее
    </select>
  </td>
</tr>
 
 
 
<tr>
  <td><p class=zag2>Факультет</td>
  <td>
   <select class=input type=text name=facu>
           <option value="do" <?PHP if ($_POST['facu'] == "do") {echo  " selected ";} ?> >Документоведения</option>
           <option value="in" <?PHP if ($_POST['facu'] == "in") {echo " selected ";} ?> >Информатики</option>
           <option value="ma" <?PHP if ($_POST['facu'] == "ma") {echo " selected ";} ?> >Менеджмента</option>
           <option value="ek" <?PHP if ($_POST['facu'] == "ek") {echo " selected ";} ?> >Экономики</option>
  </select>
       
  </td>
</tr>
 
 
 
<label>facu</label>
        <input type="text" name="facu" value="<?PHP echo $facu['facu']; ?>" />
 
<label>Специальность</label>
        <input type="text" name="spec" value="<?PHP echo $spec['spec']; ?>" /><tr>
 
<tr>
  <td><p class=zag2>Специальность</td>
  <td>
    <select class=input type=text name=spec>
            <option value='dou' <?PHP if($spec == 'dou') echo "selected"; ?>>SPECdou
            <option value='inf' <?PHP if($spec == 'inf') echo "selected"; ?>>SPECinf
            <option value='man' <?PHP if($spec == 'man') echo "selected"; ?>>SPECman
           <option value='eko' <?PHP if($spec == 'eko') echo "selected"; ?>>SPECeko
    </select>
  </td>
</tr>
 
<input type="submit" name="edit_this_user" value="Сохранить">

   </table>
       </form>
 
<?php
    }
?>

380

Re: Выпадающий список

Внутри одной формы (тег <form>) могут быть элементы форм только с уникальными именами (параметр name).
<select class=input type=text name=facu>
<input type="text" name="facu" value="<?PHP echo $facu['facu']; ?>" />

381

Re: Выпадающий список

Hanut сказал:

Внутри одной формы (тег <form>) могут быть элементы форм только с уникальными именами (параметр name).
<select class=input type=text name=facu>
<input type="text" name="facu" value="<?PHP echo $facu['facu']; ?>" />

Исправил, проблема осталась sad
Подскажите, что я делаю не так?

<?PHP
    session_name("students");
    session_start();
?>
 
<?PHP
 
        include("connect.php");
       
        if(!isset($_SESSION['id'])) {
             exit("Необходимо авторизироваться!!!");
        }
 
 
    if(isset($_POST['edit_this_user'])) {
       
        $r = mysql_query("SELECT id FROM adres WHERE adres='{$_POST['adres']}'", $db) or die(mysql_error());
        if(!mysql_num_rows($r)) {
            mysql_query("INSERT INTO adres (adres) VALUES ('{$_POST['adres']}')", $db);
            $adres_id = mysql_insert_id($db);
        }
        else {
            $r = mysql_fetch_array($r);
            $adres_id = $r['id'];
        }
 
 
        $r = mysql_query("SELECT id FROM facu WHERE facu='{$_POST['facu']}'", $db) or die(mysql_error());
        if(!mysql_num_rows($r)) {
            mysql_query("INSERT INTO facu (facu) VALUES ('{$_POST['facu']}')", $db);
            $facu_id = mysql_insert_id($db);
        }
        else {
            $r = mysql_fetch_array($r);
            $facu_id = $r['id'];
        }
          
      
        $r = mysql_query("SELECT id FROM spec WHERE spec='{$_POST['spec']}'", $db) or die(mysql_error());
        if(!mysql_num_rows($r)) {
            mysql_query("INSERT INTO spec (spec) VALUES ('{$_POST['spec']}')", $db);
            $spec_id = mysql_insert_id($db);
        }
        else {
            $r = mysql_fetch_array($r);
            $spec_id = $r['id'];
        }
 
 
        $r = mysql_query("SELECT id FROM work WHERE work='{$_POST['work']}'", $db) or die(mysql_error());
        if(!mysql_num_rows($r)) {
            mysql_query("INSERT INTO work (work) VALUES ('{$_POST['work']}')", $db);
            $work_id = mysql_insert_id($db);
        }
        else {
            $r = mysql_fetch_array($r);
            $work_id = $r['id'];
        }
 
 
        $r = mysql_query("UPDATE students SET family = '{$_POST["family"]}', name = '{$_POST['name']}', otch = '{$_POST['otch']}', birthday = '{$_POST['birthday']}', poul = {$_POST['poul']}, st_group = '{$_POST['st_group']}', num_zach = '{$_POST['num_zach']}', facu_id = $facu_id, spec_id = $spec_id, phone = {$_POST['phone']}, mess = '{$_POST['mess']}', work_id = $work_id, adres_id = $adres_id, abit = '{$_POST['abit']}' WHERE id='{$_POST['edit_student']}'", $db) or die(mysql_error());
                                                               
        if($r) {
            echo '<h1 align="center">Запись отредактирована!</h1><br>';
        }
        else {
            echo '<h1 align="center">Произошла ошибка! Попытайтесь снова!</h1>';
        }
    }
 ?>
 
 <h1 align="center">Редактировать запись</h1><br><br>
<?PHP
    if(!isset($_GET['edit_student'])) {
?>
    <form action="e.php" method="get">
        <select name="edit_student">
    <?PHP
        $rez = mysql_query("SELECT id, family, name, otch FROM students", $db) or die(mysql_error());
        while($r = mysql_fetch_array($rez)) {
        echo '\t\t\t<option value="' . $r['id'] . '">' . $r['family'] . ' ' . $r['name'] . ' ' . $r['otch'] .'</option>';
        }
    ?>
     </select><ol>      <br>
        <input type="submit" value="&nbspРедактировать данные&nbsp" />
        </ol>   </form>
<?PHP
    }
    else {
        $stud = mysql_query("SELECT family, name, otch, birthday, poul, st_group, num_zach, facu_id, spec_id, phone, mess, work_id, adres_id, abit FROM students WHERE id='{$_GET['edit_student']}'", $db) or die(mysql_error());
        $stud = mysql_fetch_array($stud);
 
        $facu = mysql_query("SELECT facu FROM facu WHERE id='{$stud['facu_id']}'", $db) or die(mysql_error());
        $facu = mysql_fetch_array($facu);
               
        $spec = mysql_query("SELECT spec FROM spec WHERE id='{$stud['spec_id']}'", $db) or die(mysql_error());
        $spec = mysql_fetch_array($spec);
 
        $work = mysql_query("SELECT work FROM work WHERE id='{$stud['work_id']}'", $db) or die(mysql_error());
        $work = mysql_fetch_array($work);
       
        $adres = mysql_query("SELECT adres FROM adres WHERE id='{$stud['adres_id']}'", $db) or die(mysql_error());
        $adres = mysql_fetch_array($adres);
     
?>
 
   <form  id="signup" action="e.php" method="POST">
    <table>
<input type="hidden" name="edit_student" value="<?PHP echo $_GET['edit_student']; ?>" />

<tr><td><p class=zag2>Фамилия</td><td><input size=61 class=input type=text name=family value='<?PHP echo $family; ?>'></td></tr>
<tr><td><p class=zag2>Имя</td><td><input size=61 class=input type=text name=name value='<?PHP echo $name; ?>'></td></tr>
<tr><td><p class=zag2>Отчество</td><td><input size=61 class=input type=text name=otch value='<?PHP echo $otch; ?>'></td></tr>
<tr><td><p class=zag2>Дата рождения</td><td><input size=61 class=input type=date name=birthday value='<?PHP echo $birthday; ?>'></td></tr>
<tr><td><p class=zag2>Пол</td><td><input size=61 class=input type=text name=poul value='<?PHP echo $poul; ?>'></td></tr>    
<tr><td><p class=zag2>Группа</td><td><input size=61 class=input type=text name=st_group value='<?PHP echo $st_group; ?>'></td></tr>    
<tr><td><p class=zag2>Номер зачётки</td><td><input size=61 class=input type=text name=num_zach value='<?PHP echo $num_zach; ?>'></td></tr>
<tr><td><p class=zag2>Работа</td><td><input size=61 class=input type=text name=work value='<?PHP echo $work['work']; ?>'></td></tr>
<tr><td><p class=zag2>Адресс</td><td><input size=61 class=input type=text name=adres value='<?PHP echo $adres['adres']; ?>'></td></tr>
<tr><td><p class=zag2>Телефон</td><td><input size=61 class=input type=text name=phone value='<?PHP echo $phone; ?>'></td></tr>
<tr><td><p class=zag2>E-mail</td><td><input size=61 class=input type=text name=mess value='<?PHP echo $mess; ?>'></td></tr>
 
 
<tr>
  <td><p class=zag2>Образование</td>
  <td>
      <select class=input type=text name=abit>
         <option value='sred' <?PHP if($abit == 'sred') echo "selected"; ?>>Среднее полное (11 кл.)
         <option value='srspec' <?PHP if($abit == 'srspec') echo "selected"; ?>>Среднее специальное
         <option value='srprof' <?PHP if($abit == 'srprof') echo "selected"; ?>>Среднее профессиональное
        <option value='vishee' <?PHP if($abit == 'vishee') echo "selected"; ?>>Высшее
     </select>
  </td>
</tr>


<tr>
  <td><p class=zag2>Факультет</td>
  <td>
     <select class=input type=text name="facu">
           <option value='do' <?PHP if($facu == 'do') echo "selected"; ?> >Документоведения</option>
           <option value='in' <?PHP if($facu == 'in') echo "selected"; ?> >Информатики</option>
           <option value='ma' <?PHP if($facu == 'ma') echo "selected"; ?> >Менеджмента</option>
        <option value='ek' <?PHP if($facu == 'ek') echo "selected"; ?> >Экономики</option>
     </select>
  </td>
</tr>
 

 
<input type="submit" name="edit_this_user" value="Сохранить">
       </table>
          </form>
 
<?php
    }
?>
 

382

Re: Выпадающий список

Проверьте содержимое переменной $facu. Например так:
exit($facu);

383 (изменено: hardsh, 2012-05-01 14:23:26)

Re: Выпадающий список

Hanut сказал:

Проверьте содержимое переменной $facu. Например так:
exit($facu);

ничего не понимаю,  exit($facu); выводит просто Array.
Причем данные с переменной  $facu передаются и успешно заносятся в бд

384

Re: Выпадающий список

hardsh сказал:

ничего не понимаю,  exit($facu); выводит просто Array

Все правильно. Значит в переменной массив данных выбранных из БД. Посмотрите что это за массив и можете вы его использовать или нет.
print_r($facu);

385

Re: Выпадающий список

Hanut сказал:
hardsh сказал:

ничего не понимаю,  exit($facu); выводит просто Array

Все правильно. Значит в переменной массив данных выбранных из БД. Посмотрите что это за массив и можете вы его использовать или нет.
print_r($facu);

Ок.

Print_r($facu)

выдает

 Array ( [0] => ma [facu] => ma ) 

Что мне теперь сделать нужно?
Создать массив вроде этого???
Простите за тупость sad

$arr = array(
    "ek" => "ek",
    "in" => "in",
    "ma" => "ma",
    "do" => "do",
);

386

Re: Выпадающий список

Сделайте так строки с элементом массива $facu['facu']. Думаю должно работать теперь.
<option value='do' <?PHP if($facu['facu'] == 'do') echo "selected"; ?> >Документоведения</option>

387

Re: Выпадающий список

Hanut, УРАААА, огромное Вам спасибо, заработало!

388 (изменено: павелsimon, 2012-05-02 13:27:21)

Re: Выпадающий список

Здравствуйте, подскажите пожалуйста как подключить постраничный вывод. Пробую вот так не получяется

function sub_func($r, $aSQL, $aName) {
    
    

    $aSQL[] = ' `md` = "' . $r['md'] . '" ';
$aSQL[] = ' `brand` = "' . $r['brand'] . '" ';
    global $db;
    $aSub = array();
    $aSQL[] = ' `md` = "' . $r['md'] . '" ';
    foreach ($aName as $checkbox) {
      if (isset($_POST[$checkbox])) {
       $aSub[] = ' SELECT * FROM `' . $checkbox . '`  WHERE ' . implode('AND', $aSQL) ;
      }
    }

  if (count($aSub) > 0) {
    $sql = '( ' . implode(' ) UNION ( ', $aSub) . ' )  ';
  } else {
  $sql = '(
    SELECT * FROM `achilles`  WHERE ' . implode('AND', $aSQL) . ' 
  ) 
   UNION (
    SELECT * FROM `aeolus`  WHERE ' . implode('AND', $aSQL) . '
  ) ';
  }
  
  if ($result = mysql_query($sql, $db)) {
    while ($row = mysql_fetch_array($result)) {
      if ($row["ostatok"] > 0) {
        print "<table width='900' border='1'>
          <tr>
                  
            <td width='100'>" . $row["shirina"] . "</td>
            <td width='100'>" . $row["profil"] . "</td>
            <td width='100'>" . $row["diametr"] . "</td>
            <td width='100'>" . $row["indnag"] . "</td>
            <td width='150'>" . $row["indskor"] . "</td>
            <td width='150'>" . $row["ostatok"] . "</td>
            <td width='100'>" . $row["cena"] . "</td>
            <td width='100'>Заказать</td>
             
          </tr>
        </table>";
      } else {
        print '';
      }
    }
  }
}// здесь выпадающие списки
// условия для чекбоксов
if (isset($_POST['achilles']) || !isset($_POST['nazv_sezon'])) {
  echo '<p>ACHILLES <input type="checkbox" checked="checked" name="achilles" value="" onchange="this.form.submit();">';
} else {
  echo '<p>ACHILLES <input type="checkbox" name="achilles" value="" onchange="this.form.submit();">';
}
if (isset($_POST['aeolus'])) {
  echo '<p>AEOLUS <input type="checkbox" checked="checked" name="aeolus" value="" onchange="this.form.submit();">';
} else {
  echo '<p>AEOLUS <input type="checkbox" name="aeolus" value="" onchange="this.form.submit();">';
}

// условия и запросы с выводом из нескольких таблиц
echo "</form>";
$aName = array('nazv_auto' => 'shirina', 'nazv_model' => 'profil', 'nazv_year' => 'diametr', 'nazv_sezon' => 'sezon');
// Теперь создаем пустой массив для хранения данных формирующих запрос (имя поля = значение).
$aSQL = array();
// Проходим цикл ассоциативного массива имен и добавляем элемент в массив $aSQL, если список выбран.
foreach ($aName as $select => $field) {
  if (!empty($_POST[$select])) $aSQL[] = ' `' . $field . '` = "' . mysql_real_escape_string($_POST[$select]) . '" ';
}


$aName = array('achilles','aeolus','amtel','autoguard','barum','bf_goodrich','blackstone','cooper','cordiant','daewoo','debica','diplomat','dunlop','falken','firestone','fulda','gislaved','goodyear','hercules','hifly','kama','kingstar','kleber','kormaran','lassa','maragoni','marshal','maxtrek','michelin','nokian','pirelli','premiori','rosava','sava','semperit','tigar','toyo','unirojal','viking','westlake','yokohama');
$aUnion = array();
foreach ($aName as $checkbox) {
  if (isset($_POST[$checkbox])) {
    $aUnion[] = ' SELECT * FROM `' . $checkbox . '`  WHERE ' . implode('AND', $aSQL) . ' GROUP BY `model` ';
  }
}


if (count($aUnion) > 0) { $sql = '( ' . implode(' ) UNION ( ', $aUnion) . ' ) ';
} else if ( count($aSQL) <= 0) {$sql = '(
  
    SELECT * FROM `achilles`  GROUP BY model
  )';


}



 else {
$sql = '(
  
    SELECT * FROM `achilles`  WHERE ' . implode('AND', $aSQL) . ' GROUP BY model
  ) UNION (
  
    SELECT * FROM `aeolus`  WHERE ' . implode('AND', $aSQL) . 'GROUP BY model
  ) 
   UNION (
    SELECT * FROM `amtel`  WHERE ' . implode('AND', $aSQL) . 'GROUP BY model
  ) ';
   
}

//   и здесь пытаюсь подключить постраничный вывод 
function link_bar($page, $pages_count)
{
for ($j = 1; $j <= $pages_count; $j++)
{
// Вывод ссылки
if ($j == $page) {
echo ' <a style="color: #808000;" ><b>'.$j.'</b></a> ';
} else {
echo ' <a style="color: #808000;" href='.$_server['php_self'].'?page='.$j.'>'.$j.'</a> ';
}
// Выводим разделитель после ссылки, кроме последней
// например, вставить "|" между ссылками
if ($j != $pages_count) echo ' ';
}
return true;
} // Конец функции

// Подключение к базе данных
mysql_connect('localhost', 'alex', '111') or die('error! Нет соединения с сервером mysql!');
mysql_select_db('shina') or die('error! Нет соединения с базой данных!');

// Подготовка к постраничному выводу
$perpage = 2; // Количество отображаемых данных из БД

if (empty($_GET['page']) || ($_GET['page'] <= 0)) {
$page = 1;
} else {
$page = (int) $_get['page']; // Считывание текущей страницы
}
// Общее количество информации
$count = mysql_numrows(mysql_query('select * from achilles')) or die('error! Записей не найдено!');
$pages_count = ceil($count / $perpage); // Количество страниц

// Если номер страницы оказался больше количества страниц
if ($page > $pages_count) $page = $pages_count;
$start_pos = ($page - 1) * $perpage; // Начальная позиция, для запроса к БД

// Вызов функции, для вывода ссылок на экран
link_bar($page, $pages_count);

// Вывод информации из базы данных
echo '<p><b>Постраничный вывод информации</b></p>';
    
    $result2 = mysql_query('select * from achilles limit '.$start_pos.', '.$perpage) or die('error!');
while ($row2 = mysql_fetch_array($result2)) {
$result = mysql_query($sql);
while ($row = mysql_fetch_array($result)) {

        
      
    print "<table width='900' border='1'>
      <tr>
        <td colspan='9'>  Шины " . $row["brand"] . " ...  Модель " . $row["model"] . "</td>
      </tr>
      <tr>
        <td colspan='2'>фото</td>
        <td colspan='7' rowspan='2'>текст</td>
      </tr>
      <tr>
        <td>" . $row["sezon"] . "</td>
        <td>" . $row["tip"] . "</td>
      </tr>
      <tr>
        <td  width='100'>" . $row["shirina"] . "</td>
        <td width='100'>Профиль</td>
        <td width='100'>Диаметр</td>
        <td width='150'>Инд.нагр</td>
        <td width='150'>Инд.скор</td>
        <td width='100'>Остаток</td>
        <td width='100'>Цена за 1</td>
        
        <td>Заказать</td>
      </tr>
      <tr>
      </tr>
    </table>" ;
    sub_func($row, $aSQL, $aName, $aUnion);
    print "<br><br>";
    
    }
   
echo '<p>'.$row2['some_field'].'</p>';
}

ссылки выводятся но их количество не соответствует количеству данных тоесть ссылок на 8 страниц а данных хватает лиш на одну, и при етом естественно по ссылкам не удается никуда перейти, и здесь еще видимо проблема возникает, ведь в условиях выше прописан вывод не только с одной таблицы а в скрипте постраничного вывода только для одной ето както тоже нужно соединить

389

Re: Выпадающий список

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

390 (изменено: павелsimon, 2012-05-02 13:29:50)

Re: Выпадающий список

изначально в етой строке стоял символ

if (empty(@$_GET['page']) || ($_GET['page'] <= 0)) {

@
с ним выдавало ошибку

Parse error: syntax error, unexpected '@', expecting T_STRING or T_VARIABLE or '$' in Z:\home\localhost\www\autoshina\ACHILLES.php on line 697

391

Re: Выпадающий список

Это и есть ошибка. Не должно быть там его.

392

Re: Выпадающий список

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

393

Re: Выпадающий список

Какой запрос выводит данные? Добавьте в него ограничение с помощью LIMIT.

394

Re: Выпадающий список

Ф сам скрипт постраничного вывода оставить?

395

Re: Выпадающий список

Дело в том что у меня в зависимости от условия выводятся данные, тоесть есть несколько запросов, что мне даст ограничение Limit ?

396

Re: Выпадающий список

у меня 3 условия и к каждому свой запрос

 if (isset($_POST[$checkbox])) {
    $aUnion[] = ' SELECT * FROM `' . $checkbox . '`  WHERE ' . implode('AND', $aSQL) . ' GROUP BY `model` ';
  }
}


if (count($aUnion) > 0) { $sql = '( ' . implode(' ) UNION ( ', $aUnion) . ' ) ';
} else if ( count($aSQL) <= 0) {$sql = '(
  
    SELECT * FROM `amtel`  GROUP BY model
  )';


}



 else {
$sql = '(
  
    SELECT * FROM `achilles`  WHERE ' . implode('AND', $aSQL) . ' GROUP BY model
  ) UNION (
  
    SELECT * FROM `aeolus`  WHERE ' . implode('AND', $aSQL) . 'GROUP BY model
  ) 

наверное нужно к каждому условию дописать функцию но как7

397

Re: Выпадающий список

Добавьте к каждому запросу.
LIMIT $start_pos, $perpage

Соответственно, переменные $start_pos и $perpage должны формироваться в коде выше запросов. Сперва следует подсчитать записи возвращаемые запросом для формирования листалки и затем уже выполнить запрос с LIMIT.

398

Re: Выпадающий список

Добавил в запрос один из 3 но вот как код из функции вынуть и над запросом правильно записать

if (count($aUnion) > 0) { $sql = '( ' . implode(' ) UNION ( ', $aUnion) . ' ) ';
} else if ( count($aSQL) <= 0) 


function link_bar($page, $pages_count)
{
for ($j = 1; $j <= $pages_count; $j++)
{
// Вывод ссылки
if ($j == $page) {
echo ' <a style="color: #808000;" ><b>'.$j.'</b></a> ';
} else {
echo ' <a style="color: #808000;" href='.$_server['php_self'].'?page='.$j.'>'.$j.'</a> ';
}
// Выводим разделитель после ссылки, кроме последней
// например, вставить "|" между ссылками
if ($j != $pages_count) echo ' ';
}
return true;
} // Конец функции

// Подключение к базе данных
mysql_connect('localhost', 'root', '') or die('error! Нет соединения с сервером mysql!');
mysql_select_db('data_base') or die('error! Нет соединения с базой данных!');

// Подготовка к постраничному выводу
$perpage = 10; // Количество отображаемых данных из БД

if (empty(@$_GET['page']) || ($_GET['page'] <= 0)) {
$page = 1;
} else {
$page = (int) $_get['page']; // Считывание текущей страницы
}
// Общее количество информации
$count = mysql_numrows(mysql_query('select * from table')) or die('error! Записей не найдено!');
$pages_count = ceil($count / $perpage); // Количество страниц

// Если номер страницы оказался больше количества страниц
if ($page > $pages_count) $page = $pages_count;
$start_pos = ($page - 1) * $perpage; // Начальная позиция, для запроса к БД

// Вызов функции, для вывода ссылок на экран
link_bar($page, $pages_count);


{$sql = '(
  
    SELECT * FROM `achilles`  GROUP BY model limit '.$start_pos.', '.$perpage.'
  )';


}



 else

399

Re: Выпадающий список

Вы какую-то кашу из кода сделали. Используйте Notepad++ с подсветкой кода, который показывает парные скобки и добавьте все между фигурными скобками условия.

400

Re: Выпадающий список

Может гдето и не доставил скобки, а вот саму функцию в етом месте так можно писать?