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

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

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

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

    Joined:
    8 Jan 2006
    Messages:
    687
    Likes Received:
    138
    Reputations:
    32
    на скок я понимаю он когда просто " встречает не воспринимает ее уже как строку, а как спец символ php
    допустим ты написал echo ("<form name="name""); а интерпретатор решит что при первых ", ты эхо закрываешь. Это если одинарных вначале не использовать
    вродь так)
     
    #3421 bxN5, 6 Jun 2008
    Last edited: 6 Jun 2008
  2. sky7

    sky7 New Member

    Joined:
    13 Apr 2008
    Messages:
    14
    Likes Received:
    0
    Reputations:
    0
    хорошо, а если так echo "<form name=\"name\" method=\"POST\" action=\"action.php\">";
    вообще в чём фишка этих слэшей? дайте хоть ссылку где подробна написано про это
     
  3. Dronga

    Dronga ВАША реклама ТУТ!!

    Joined:
    1 Jul 2005
    Messages:
    575
    Likes Received:
    239
    Reputations:
    249
    Запрос к поисковику экранирование.

    Ты обозначаешь строку в двойных кавычках. Как интерпретатор должен определить конец строки, если ты внутри неё используешь такие же двойные кавычки? Поэтому эти символы экранируются.
     
    #3423 Dronga, 6 Jun 2008
    Last edited: 6 Jun 2008
  4. oRb

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

    Joined:
    9 May 2008
    Messages:
    294
    Likes Received:
    582
    Reputations:
    256
    фишка в том, что если ты строку определяешь в кавычках, то чтобы в этой строке поместить кавычку, надо ее экранировать (поставить перед ней слеш)

    Статей про это фуфло не пишут. Это надо понимать.
    посмотри как бы выглядел скрипт без них. и подумай почему же они все таки нужны.
     
  5. lomerok

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

    Joined:
    23 Apr 2008
    Messages:
    141
    Likes Received:
    8
    Reputations:
    0
    почему некоректно выводятся хеши ?
    PHP:
    $hash=$_GET['hash'];
     
    $f="test.txt";
    $file=file_get_contents($f);
    $psk=strpos($file,$hash);
    $end=strpos($file,":",$psk);
    $oke=substr($file,$psk,$end);
    print 
    $oke;
    содержимое файла test.txt :
    Code:
    111:aaa
    222:mmmmmm
    333:ggg
    444:llll
    
     
  6. lomerok

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

    Joined:
    23 Apr 2008
    Messages:
    141
    Likes Received:
    8
    Reputations:
    0
    чтоб при вводе 111 отображалось 111:aaa , при вводе 222 - 222:mmmmmm и так далее
     
  7. lomerok

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

    Joined:
    23 Apr 2008
    Messages:
    141
    Likes Received:
    8
    Reputations:
    0
    согласен , но на данный момент я хочу написать файловый скрипт ...
     
  8. gordonfreeman

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

    Joined:
    29 Jan 2006
    Messages:
    29
    Likes Received:
    6
    Reputations:
    -1
    Как вариант, читать в массив каждую строку файла функцией file()
    Далее пробегаешь по массиву и ищешь встречающуюся подстроку перед ":"
    Ну таким образом получаем элемент с нужной парой "login:hash", и соответственно print-им нужный элемент
     
  9. gordonfreeman

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

    Joined:
    29 Jan 2006
    Messages:
    29
    Likes Received:
    6
    Reputations:
    -1
    Что-то вроде этого
    PHP:
    $hash    $_GET['hash'];
    $file    file([FILE path/name]);
    $found    'No match!';

    for(
    $i 0$i count($file); $i++)
    {
        
    /*тут лучше регулярку*/ $found $file[$i] : false;
    }

    echo 
    $found;
    не проверял, написал на коленке
     
    #3429 gordonfreeman, 6 Jun 2008
    Last edited: 6 Jun 2008
  10. d_x

    d_x Banned

    Joined:
    25 Mar 2008
    Messages:
    558
    Likes Received:
    650
    Reputations:
    210
    lomerok, вот рабочий скрипт:

    PHP:
    <?php  
    $hash
    =isset($_GET['hash']) ? str_replace('/','\/',preg_quote($_GET['hash'])) : '';   

    if(!isset(
    $hash{0})) die('no hash');  

    $f="test.txt";   

    $file=file_get_contents($f);  

    preg_match("/(^|\n)$hash:(\S+)/s",$file,$m);  

    if(isset(
    $m[0]))  
      print 
    $m[0];  
    else  
      print 
    'not found';  

    ?> 
     
    #3430 d_x, 6 Jun 2008
    Last edited: 6 Jun 2008
  11. lomerok

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

    Joined:
    23 Apr 2008
    Messages:
    141
    Likes Received:
    8
    Reputations:
    0
    ндя .. тыбы алгоритм зделал . ато так и я могу (буз регулярки)
     
  12. Piflit

    Piflit Banned

    Joined:
    11 Aug 2006
    Messages:
    1,249
    Likes Received:
    585
    Reputations:
    31
    {$hash}
    зачем здесь скобки?
     
  13. d_x

    d_x Banned

    Joined:
    25 Mar 2008
    Messages:
    558
    Likes Received:
    650
    Reputations:
    210
    Чтобы читабельнее скрипт был:)
     
  14. lomerok

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

    Joined:
    23 Apr 2008
    Messages:
    141
    Likes Received:
    8
    Reputations:
    0
    PHP:
    preg_match("/(^|\n){$hash}:(\S+)/s",$file,$m); 
    что это делает(опишите синтаксис)?
     
  15. d_x

    d_x Banned

    Joined:
    25 Mar 2008
    Messages:
    558
    Likes Received:
    650
    Reputations:
    210
    http://ru2.php.net/manual/ru/reference.pcre.pattern.modifiers.php
    http://ru2.php.net/manual/ru/regexp.reference.php

    P.S. скрипт свой немного улучшил)
     
    #3435 d_x, 6 Jun 2008
    Last edited: 6 Jun 2008
    1 person likes this.
  16. lomerok

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

    Joined:
    23 Apr 2008
    Messages:
    141
    Likes Received:
    8
    Reputations:
    0
    чета посмотрел и ниче непонел , как работают слэши я знаю а остальные параметры для чего ?
     
  17. lomerok

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

    Joined:
    23 Apr 2008
    Messages:
    141
    Likes Received:
    8
    Reputations:
    0
    все разобрался всем спасибо
     
  18. Andrys

    Andrys New Member

    Joined:
    5 Jun 2008
    Messages:
    1
    Likes Received:
    0
    Reputations:
    0
    Помощь

    Помогите сделать уникальную картинку (пример myorb.site88.net)
     
  19. oRb

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

    Joined:
    9 May 2008
    Messages:
    294
    Likes Received:
    582
    Reputations:
    256
    ты откуда мой сайт нарыл? =)
     
  20. VDShark

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

    Joined:
    1 Feb 2007
    Messages:
    260
    Likes Received:
    158
    Reputations:
    62
    Обычное использование граф. библиотеки.
    http://ru2.php.net/gd - почитай, думаю самому интереснее будет разобраться, чем получить готовый пример ;)
     
    1 person likes this.
Thread Status:
Not open for further replies.