За последние 24 часа нас посетили 18533 программиста и 1670 роботов. Сейчас ищут 888 программистов ...

where

Тема в разделе "PHP для новичков", создана пользователем mihai, 2 окт 2009.

  1. mihai

    mihai Активный пользователь

    С нами с:
    17 мар 2009
    Сообщения:
    40
    Симпатии:
    0
    Господа программисты.

    нужно сделать выборку из БД
    при eсловии что

    $str="page1";

    но вот такая конструкция не работает
    подскажите как это реализовать

    PHP:
    1.  
    2. $res = mysql_query("SELECT COUNT(*) FROM gb where apr=1 and stranica=$str");
    3.  
     
  2. Alost

    Alost Активный пользователь

    С нами с:
    7 фев 2009
    Сообщения:
    335
    Симпатии:
    0
    Адрес:
    Город вокруг невы
    Код (Text):
    1. $res = mysql_query("SELECT COUNT(*) FROM gb where apr=1 and stranica='$str'");
     
  3. Alost

    Alost Активный пользователь

    С нами с:
    7 фев 2009
    Сообщения:
    335
    Симпатии:
    0
    Адрес:
    Город вокруг невы
    а лучше
    Код (Text):
    1. $res = mysql_query("SELECT COUNT(*) FROM `gb` where `apr`=1 and `stranica`='$str'");
     
  4. karakh

    karakh Активный пользователь

    С нами с:
    11 дек 2007
    Сообщения:
    1.344
    Симпатии:
    0
    Alost, а $str через две пары кавычек точно восприниматься будет?

    Лучше имхо
    Код (Text):
    1. $res = mysql_query("SELECT COUNT(*) FROM `gb` where `apr`=1 and `stranica`='".$str."'");
     
  5. Simpliest

    Simpliest Активный пользователь

    С нами с:
    24 сен 2009
    Сообщения:
    4.511
    Симпатии:
    2
    Адрес:
    Донецк
    Мда, а экранирование параметров передаваемых в запрос уже не надо?
     
  6. karakh

    karakh Активный пользователь

    С нами с:
    11 дек 2007
    Сообщения:
    1.344
    Симпатии:
    0
    Э не, это уже совершенно другой вопрос. Я понятия не имею откуда $str берется, может она от всего очищена сто раз.
     
  7. TheShock

    TheShock Активный пользователь

    С нами с:
    30 май 2009
    Сообщения:
    1.255
    Симпатии:
    0
    Адрес:
    Київ
    конечно, будет, пхп интересует только внешняя кавычка, а внутренняя — будет считатся таким же символом, как любой другой

    а кто сказал, что в предыдущей строке написано не следующее?
    PHP:
    1. <?php $str = (int) $_GET['str'];
     
  8. mihai

    mihai Активный пользователь

    С нами с:
    17 мар 2009
    Сообщения:
    40
    Симпатии:
    0
    господа спасибо что помогли,
    ошибка была не в этом,
    но все равно спасибо,
    потому что я бы так и думал что тут делаю неправельно