За последние 24 часа нас посетили 72040 программистов и 3532 робота. Сейчас ищут 2853 программиста ...

Не работает функция in_array()

Тема в разделе "PHP и базы данных", создана пользователем Rocker_dead, 1 фев 2012.

  1. Rocker_dead

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

    С нами с:
    1 фев 2012
    Сообщения:
    22
    Симпатии:
    0
    если такого значения не будет, то как обработать результат, что в коде писать?
    ну т.е. после
    Код (Text):
    1. SELECT `price` FROM `tPrice` WHERE `kid`=10;
    и да, я программировании не шарю, можете конечно смеяться :))) лишь основы институтские по С++
    но в итоге решение оказалось таким, что я бы сам хрен нашел его)
     
  2. igordata

    igordata Суперстар
    Команда форума Модератор

    С нами с:
    18 мар 2010
    Сообщения:
    32.333
    Симпатии:
    1.753
    Код (PHP):
    1. <?php
    2.  
    3. $sql = "SELECT kid FROM tPrice WHERE `kid`=10";
    4. $rez = sql_q($sql);
    5. if ($rez === false) {
    6.   echo 'Обломинго!';
    7. } else {
    8.   $tprice_arr = c_array($rez);
    9.  
    10.   if (in_array(10, $tprice_arr)) {
    11.     echo "You win!";
    12.   } else {
    13.     echo "You loose!";
    14.   }
    15. } 
    Добавлено спустя 2 минуты 24 секунды:
    только по причине опасности-безопасности, ты нам скажи, откуда у тебя берется это 10?
     
  3. Rocker_dead

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

    С нами с:
    1 фев 2012
    Сообщения:
    22
    Симпатии:
    0
    10 - это один из id страницы, который хранится в переменной $mid
    Код (Text):
    1. /katalog.php?mid=10
    а в БД я вручную заполняю таблицу соответствия. у каждого id по 5 своих ценовых категорий, как видно из скриншота в первом посте
     
  4. igordata

    igordata Суперстар
    Команда форума Модератор

    С нами с:
    18 мар 2010
    Сообщения:
    32.333
    Симпатии:
    1.753
    соотв
    если будет написано (к примеру)
    /katalog.php?mid=DROP%20TABLE
    то будут проблемы.
    для этого защищаются

    у тебя просто какие-то функции непонятные. у тебя там там объекты или функции внутри?
     
  5. asokol

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

    С нами с:
    17 янв 2012
    Сообщения:
    162
    Симпатии:
    0
    Rocker_dead, я смеюсь не над Вами, а над получившейся фразой. :)
    Все начинали с того, что ездили с буквой "У". Старайтесь разобраться и понять то, что Вам предлагают, потому что, к сожалению, иногда такое понапишут в помощь, что диву даешься.
     
  6. Rocker_dead

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

    С нами с:
    1 фев 2012
    Сообщения:
    22
    Симпатии:
    0
    не совсем понял, внутри чего? В таблице БД - только числа и string'и, которые и выводятся в итоге. В url'е считываю только id. В коде из функций только присваивание переменной sql запроса, проверка условия существующего id и вывод итогового столбца значений.

    Все, что здесь написали, мне оказалось полезно, это верно
     
  7. igordata

    igordata Суперстар
    Команда форума Модератор

    С нами с:
    18 мар 2010
    Сообщения:
    32.333
    Симпатии:
    1.753
    ты там с бд работаешь какими-то функциями. что у них внутри?
     
  8. Rocker_dead

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

    С нами с:
    1 фев 2012
    Сообщения:
    22
    Симпатии:
    0
    Не разбирался с этим, если честно. Хотя смотрел в других файлах функцию c_array() и не нашел ее тела, как будто она дефолтная какая-то. Особо меня это не интересует, т.к. я этим занимаюсь для небольшой подработки. Эти функции взял как шаблон из других решений этой CMS, которые работают.
     
  9. igordata

    igordata Суперстар
    Команда форума Модератор

    С нами с:
    18 мар 2010
    Сообщения:
    32.333
    Симпатии:
    1.753
    короче не забудь заэскейпить переменную в запросе
     
  10. Rocker_dead

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

    С нами с:
    1 фев 2012
    Сообщения:
    22
    Симпатии:
    0
    что значит "заэскейпить"?
     
  11. igordata

    igordata Суперстар
    Команда форума Модератор

    С нами с:
    18 мар 2010
    Сообщения:
    32.333
    Симпатии:
    1.753
    пропустить через функцию mysql_real_escape()