[php] Новичкам: задаем вопросы

Discussion in 'PHP' started by _Great_, 26 May 2007.

Thread Status:
Not open for further replies.
  1. max_rebel

    max_rebel Elder - Старейшина

    Joined:
    18 Oct 2007
    Messages:
    460
    Likes Received:
    31
    Reputations:
    0
    теперь мой вопрос=)

    вроде всё как в учебнике написано, ввожу фамилию на 'а' - пишет я в первой группе, ввожу на 'я' тоже пишет в первой группе....что не так ?:

    PHP:
    <!--ПРОВЕРКА ФАМИЛИИ -->    <form action='' method='post'>  <label>Введите фамилию:</label><input name='name_check' type='text' size='20' maxlength='20'>  <input name='name_check' type='submit' value='name_check'>  </form>    <!-- ОБРАБОТКА ПРОВЕРКИ ФАМИЛИИ -->  <?php    if(isset($_POST['name_check'])){$name_check=$_POST['name_check'];}   echo "не работает=(";  if ($name_check <= "м")  {  echo "<br>Вы в первой группе из-за первой буквы фамилии";  }  else  {  echo "<br>Вы во второй группе из-за первой буквы фамилии";  }    ?>
     
  2. wildshaman

    wildshaman Elder - Старейшина

    Joined:
    16 Apr 2008
    Messages:
    477
    Likes Received:
    483
    Reputations:
    99
    боже мой, КАК можно сравнивать строку и букву и делать вывод, что буква больше строки?о_О
    Заведи массив с русскими буквами, затем субстрингай первую букву имени, проверяй, какое место ее в массиве, и если индекс больше индекса нужно буквы, то...
     
  3. d_x

    d_x Banned

    Joined:
    25 Mar 2008
    Messages:
    558
    Likes Received:
    650
    Reputations:
    210
    Вообще-то сравнение строк - нормально. Ошибка была в повторном имени у кнопки submit, как и у поля ввода.

    Вот рабочее:
    PHP:
    <!--ПРОВЕРКА ФАМИЛИИ -->
    <form action='?' method='post'>
    <label>Введите фамилию:</label>
    <input name='name_check' type='text' size='20' maxlength='20'>
    <input type='submit' value='name_check'>
    </form>

    <!-- ОБРАБОТКА ПРОВЕРКИ ФАМИЛИИ -->

    <?php
    if(isset($_POST['name_check']) && !is_array($_POST['name_check']))
    {
      
    $name_check=$_POST['name_check'];

      if(
    $name_check <= "м")
        echo 
    "<br>Вы в первой группе из-за первой буквы фамилии";
      else
        echo 
    "<br>Вы во второй группе из-за первой буквы фамилии";
    }
    ?>  
    PS. Учебник дрянной.
     
  4. zifanchuck

    zifanchuck Elder - Старейшина

    Joined:
    27 Oct 2008
    Messages:
    396
    Likes Received:
    154
    Reputations:
    3
    Нубский вопрос но всеже))) в пхп есть многопоточность? мне кажется что нет но думаю что спросить стоит...
     
  5. L I G A

    L I G A Banned

    Joined:
    27 Jul 2008
    Messages:
    482
    Likes Received:
    380
    Reputations:
    49
    есть пародия на многопоточность
     
  6. max_rebel

    max_rebel Elder - Старейшина

    Joined:
    18 Oct 2007
    Messages:
    460
    Likes Received:
    31
    Reputations:
    0
    спасибо.

    А учебник называется 'PHP 10 минут на урок (SAMS)', взял в библиотеке ибо показался маленьким и удобным типа ничего лишнего
     
    1 person likes this.
  7. max_rebel

    max_rebel Elder - Старейшина

    Joined:
    18 Oct 2007
    Messages:
    460
    Likes Received:
    31
    Reputations:
    0
    зачем ты в этом выражении пишешь
    эту часть? Это проверка глобального массива?
     
  8. Kaimi

    Kaimi Well-Known Member

    Joined:
    23 Aug 2007
    Messages:
    1,732
    Likes Received:
    811
    Reputations:
    231
    Проверяется что параметр не является массивом
     
    _________________________
  9. Linuxoid

    Linuxoid Elder - Старейшина

    Joined:
    13 Feb 2007
    Messages:
    200
    Likes Received:
    28
    Reputations:
    0
    Возникла проблема...
    Есть простейшая функция, сам придумал. :)
    PHP:
    function getweb($url$ua$cookie$referer){
    $ch curl_init($url);
    curl_setopt($chCURLOPT_USERAGENT$ua);
    curl_setopt($chCURLOPT_COOKIEJAR$cookie); 
    curl_setopt($chCURLOPT_COOKIEFILE$cookie);
    curl_setopt($chCURLOPT_REFERER$referer);
    curl_setopt($chCURLOPT_RETURNTRANSFER1);
    return 
    curl_exec($ch);
    curl_close($ch);
    }
    Далее эта функция применяется в цикле. Ее задача - просто загружать определенную страницу каждую минуту. Абсолютно ничего с ней не делать.

    PHP:
    for($i 0$i <= 60$i++){

    getweb('http://yandex.ru/''Mozilla/5.0 (X11; U; Linux x86_64; ru; rv:1.9.0.13) Gecko/2009080315 Ubuntu/9.04 (jaunty) Firefox/3.0.13''cook.txt''http://ya.ru/');
    sleep(60);
    getweb('http://google.ru/''Mozilla/5.0 (X11; U; Linux x86_64; ru; rv:1.9.0.13) Gecko/2009080315 Ubuntu/9.04 (jaunty) Firefox/3.0.13''cook.txt''http://google.com/');
    }
    функция вызывается только 1 раз. 2 раз она возвращает то же, что при первом вызове, хотя параметры другие. Что я делаю не так? Надеюсь поможете разобраться...
    З.Ы. В обоих местах куки в одном файле - это так и задумано. :)
     
    #11389 Linuxoid, 27 Aug 2009
    Last edited: 27 Aug 2009
  10. Gifts

    Gifts Green member

    Joined:
    25 Apr 2008
    Messages:
    2,494
    Likes Received:
    807
    Reputations:
    614
    Linuxoid У меня результат, как и ожидается - разный. А так проблема видимо тут:

    PHP:
    return curl_exec($ch);
    curl_close($ch); 
    Функция, конеш функция, но не стоит рассчитывать на интерпретатор, что он сам все правильно закроет. Следует делать так:
    PHP:
    $tmp curl_exec($ch);
    curl_close($ch); 
    return 
    $tmp;
     
    _________________________
  11. zifanchuck

    zifanchuck Elder - Старейшина

    Joined:
    27 Oct 2008
    Messages:
    396
    Likes Received:
    154
    Reputations:
    3
    У меня такой вопрос назрел) странный немного. Несколько месяцев назад нашел скриптик который отправляет смс на определенный номер с указаным сообщениям. тоисть я его запускаю ус себя на денвере, а он дальше сам запускает скайп, сворачивает, и потом сам отправляет смс.
    а теперь вопросы. Таким способом можно запустить обычную прогу?? и где по ето можно почитать? У меня в книге про ето ничего нет))) а к гуглу незнаю как обратится так как непонимаю как етот мпомоб называется и что у него спрашивать) скрипт вылаживать небуду так как я не автор)
     
  12. Chaak

    Chaak Elder - Старейшина

    Joined:
    1 Jun 2008
    Messages:
    1,059
    Likes Received:
    1,067
    Reputations:
    80
    Функции exec и system
     
    1 person likes this.
  13. zifanchuck

    zifanchuck Elder - Старейшина

    Joined:
    27 Oct 2008
    Messages:
    396
    Likes Received:
    154
    Reputations:
    3
    погуглим) спс

    щас глянул еще раз на тот скрипт. там действуйет по такому алгоритму
    // Создаём Skype4COM объект:
    // Создаём sink объект:
    // Соединяемся с sink:
    // Создаём conversion объект:
    // Если статус юзера не "online", то изменяем его на "online":
    // Отсылаем СМС

    почитю про то что ты написал и про всякие комобьекты)))
     
    #11393 zifanchuck, 27 Aug 2009
    Last edited: 27 Aug 2009
  14. Tymblep

    Tymblep Elder - Старейшина

    Joined:
    7 Feb 2008
    Messages:
    0
    Likes Received:
    1
    Reputations:
    0
    Господа нужна помощь.
    Мне писали скрипт, который фреймит указанные файлы либо список файлов, запускается либо заходом на него либо через крон.
    Прямого доступа нету к крону, но есть правка одного задания и крона, у кого какие есть идеи по запуска моего скрипта через правку задания готового?
     
  15. preda1or

    preda1or Member

    Joined:
    27 Oct 2008
    Messages:
    167
    Likes Received:
    96
    Reputations:
    6
    PHP:
    if(eregi("^([а-яА-Яa-zA-Z0-9\s]{3,32})$",$name)){

    }
    Пропускает значения состоящие либо ТОЛЬКО из цифр, либо ТОЛЬКО из букв. Нужно чтобы $name могло содержать только: а-я,А-Я,a-z,A-Z,0-9 и пробел. Что не так? :confused: Час сижу уже как идиот.

    НЕАКТУАЛЬНО
    действительно идиот. ^([а-яА-Яa-zA-Z0-9 ]{3,32})$
     
    #11395 preda1or, 27 Aug 2009
    Last edited: 27 Aug 2009
  16. Gifts

    Gifts Green member

    Joined:
    25 Apr 2008
    Messages:
    2,494
    Likes Received:
    807
    Reputations:
    614
    preda1or Боюсь расстроить, но лучше не пользоваться ereg, 1 - не безопасно, 2 - начиная с ПХП 5.3.0 - вызывает ошибку, а с 6.0.0 - удалена функция в принципе
    Tymblep Через точку с запятой дописать в конец исходной команды - свою
     
    _________________________
    1 person likes this.
  17. geforse

    geforse Elder - Старейшина

    Joined:
    2 Mar 2008
    Messages:
    617
    Likes Received:
    290
    Reputations:
    1
    Можно ли как-то имя GET запроса к скрипту сделать пустым ?

    То есть мне нужно: site.ru/344224
    Сейчас у меня так: site.ru/?d=344224

    Возможно ли убрать ?d= из URL ?
     
  18. Gifts

    Gifts Green member

    Joined:
    25 Apr 2008
    Messages:
    2,494
    Likes Received:
    807
    Reputations:
    614
    geforse В файл .htaccess прописать:
    Code:
    RewriteEngine On
    RewriteRule ^(\d+)$   /?d=$1 
     
    _________________________
    2 people like this.
  19. Fuckel

    Fuckel Banned

    Joined:
    16 Jan 2008
    Messages:
    274
    Likes Received:
    59
    Reputations:
    6
    mod_rewrite
    http://httpd.apache.org/docs/1.3/mod/mod_rewrite.html
    http://forum.antichat.ru/threadnav92492-1-10.html

    еще удобно и функциоанально
    http://ru.php.net/proc_open
     
    #11399 Fuckel, 27 Aug 2009
    Last edited: 27 Aug 2009
  20. Кубик Рубик

    Joined:
    10 Apr 2008
    Messages:
    48
    Likes Received:
    0
    Reputations:
    0
    Всем привет! На повестке дня стал вопрос о том, что такое плейсхолдеры?
     
Thread Status:
Not open for further replies.