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

Форум MySQL

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

 

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

вид форума:
Линейный форум (новые сообщения вниз) Структурный форум

тема: выборка по буквам

Сообщения:  [1-9] 

 
 автор: Денис   (23.09.2005 в 21:52)   письмо автору
 
   для: Евгений Петров   (11.09.2005 в 22:55)
 

решил!!! ошибка оказалась в том, что ставил $fetch['$i']'name'] - ошибка в [$i] - по буковке выбираем :). всем спасибо

   
 
 автор: Денис   (23.09.2005 в 00:42)   письмо автору
 
   для: Евгений Петров   (11.09.2005 в 22:55)
 

Пытался реализовать свою задачу сам - но все-таки есть какая-то ошибка, но в чем - пока не пойму. В общем, пытаюсь вывести данные из таблиц базы данных, названия данных которые начинаются на ту букву, которая будет получена в GET-запросе. Я делаю следующим образом:

<?php
db_connect
();
    if(
$_GET)
    {
$con $_GET['con'];
$letter $_GET['letter'];

        
$con $_GET['con']; 
        
$letter $_GET['letter'];
        
$query "SELECT name, name_eng FROM ".TABLE_STAR." WHERE name LIKE '$letter%' OR name_eng LIKE '$letter%' AND con = '$con'"
          
$query mysql_query($query);
        echo 
mysql_errno() . ": " mysql_error() . "\n";
        
//get_star_eng($letter, $con);
        
$i=0;$j=1;
        
        while(
$fetch mysql_fetch_array($query))
        {
?>
            <tr bgcolor="#EEFCFC">
                <td>&nbsp;<a target="_blank" href="actors.php?cid=1&aid=336"><?=$fetch[$i]['name_eng'];?></a></td>
                <td>&nbsp;<a target="_blank" href="actors.php?cid=1&aid=336"><?=$fetch[$i]['name'];?></a></td></tr>
<?php
        
}
    }
?>

Но результат совсем какой-то не такой: выводит начальные буквы записей из базы данных :), в общем, если сможете - выручайте, я уже не справляюсь:)

   
 
 автор: Денис   (13.09.2005 в 01:45)   письмо автору
 
   для: Евгений Петров   (11.09.2005 в 22:55)
 

Подскажите, в чем может быть ошибка невыполнения вот этого запроса:

function get_letter($id_letter,$con)
{
  $query = "SELECT name AS name, name_eng AS name_eng FROM ".TABLE_STAR."    WHERE name LIKE '$id_letter%' OR name_eng LIKE '$id_letter%' AND id_role=(star.id_role < 3) AND con='$con'"; 
 $query = mysql_query($query);
}


GET-запросом передаются параметры

<A class="head" href="index.php?con=1&letter=A">A</A>&nbsp;&nbsp;

Но проблема сама в функции, а точнее в запросе - проверял отладчиком: FALSE не выдает но и данные показывать тоже не хочет

   
 
 автор: Евгений Петров   (11.09.2005 в 22:55)   письмо автору
 
   для: Денис   (11.09.2005 в 20:37)
 

В смысле &#194? Да кириллица, специальные символы и.т.д. передаются именно так. Для этого используются функции UrlEncode() и UrlDecode()
<?
  $url 
"http://www.yandex.ru/yandsearch?rpt=rad&text=кириллица и символы !\"&#185;";
  echo 
$url urlEncode($url);
  echo 
$url urlDecode($url);
?>

   
 
 автор: Евгений Петров   (11.09.2005 в 22:55)   письмо автору
 
   для: Денис   (11.09.2005 в 20:37)
 

-

   
 
 автор: Денис   (11.09.2005 в 20:37)   письмо автору
 
   для: Евгений Петров   (10.09.2005 в 23:39)
 

еще один вопрос: я где-то видел передачу параметров в навигации по буквам английской раскладки в таком виде:

<class="head" href="../includes/db_index.php?con=1&amp;letter=Y">

а русская раскладка - таким образом:

class="head" href="../includes/db_index.php?con=1&amp;letter=%C0">&#192;</A>&nbsp;&nbsp;<A 
               class="head" href="./includes/db_index.php?con=1&amp;letter=%C1">&#193;</A>&nbsp;&nbsp;<A 
               class="head" href="./includes/db_index.php?con=1&amp;letter=%C2">&#194;</A>&nbsp;&nbsp;<A 

Это просто строится таким образом запрос либо же действительно должен передаваться именно такой get-запрос русской буквы?

   
 
 автор: Денис   (11.09.2005 в 00:00)   письмо автору
 
   для: Евгений Петров   (10.09.2005 в 23:39)
 

Спасибо :-)

   
 
 автор: Евгений Петров   (10.09.2005 в 23:39)   письмо автору
 
   для: Денис   (10.09.2005 в 23:22)
 

<?
  $letter 
"А";
  
$query mysql_query("SELECT * FROM tbl WHERE field LIKE '$letter%'");
  while(
$fetch mysql_fetch_array($query))
  {
    
print_r($fetch);
    echo 
"<br>\n";
  }
?>

   
 
 автор: Денис   (10.09.2005 в 23:22)   письмо автору
 
 

Подскажите, пожалуйста, как построить запрос на получение записи, начинающейся на определенную букву. Скажем, есть алфавитный порядок букв, пользователь жмет на одну из них и на странице выводятся записи, начинающиеся на эту букву, причем вывод записей также идет в алфавитном порядке "Аб..", "Ав.."

   

Сообщения:  [1-9] 

Форум разработан IT-студией SoftTime
Rambler's Top100
вверх

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