Прием с $_get

Discussion in 'PHP' started by dimash, 21 Aug 2008.

  1. dimash

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

    Joined:
    14 Apr 2008
    Messages:
    78
    Likes Received:
    2
    Reputations:
    0
    Code:
    <?php
    $id_mail = (isset($_GET['id_mail'])) ? string($_GET['id_mail']) : null;
    echo($id_mail);
    ?>
    
    Code:
    <Fatal error: Call to undefined function string() in Z:\home\priceie\www\getie.php on line 2
    
    wtf?
     
  2. Vid0k

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

    Joined:
    24 Dec 2007
    Messages:
    393
    Likes Received:
    125
    Reputations:
    13
    он не вдупляет что за ф-ия string
     
  3. .Slip

    .Slip Elder - Старейшина

    Joined:
    16 Jan 2006
    Messages:
    1,571
    Likes Received:
    977
    Reputations:
    783
    Что ты хочешь сделать с этой строкой?
     
  4. eLWAux

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

    Joined:
    15 Jun 2008
    Messages:
    860
    Likes Received:
    616
    Reputations:
    211
    пробуй так:
    PHP:
    <?php
    $id_mail 
    = (isset($_GET['id_mail'])) ? ($_GET['id_mail']) : null;
    echo(
    $id_mail);
    ?>
    у меня все ОК! =)

    тоесть:
    если есть GET передача параметра id_mail, то значение присваеваетса)) $id_mail, а если нет такого параметра, то $id_mail присв. нул)) а дальше виводитса $id_mail. вот и все.
    при запросе ?id_mail=123 ви ведетса текст 123
     
    #4 eLWAux, 21 Aug 2008
    Last edited by a moderator: 21 Aug 2008
  5. eLWAux

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

    Joined:
    15 Jun 2008
    Messages:
    860
    Likes Received:
    616
    Reputations:
    211
    "Call to undefined function string()"
    визов неизвестной функции string()
    тоесть в php функции string() нету))))
     
  6. GreenBear

    GreenBear наркоман с медалью

    Joined:
    7 May 2005
    Messages:
    2,547
    Likes Received:
    1,398
    Reputations:
    612
    (string) $_GET['id_mail']
     
  7. eLWAux

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

    Joined:
    15 Jun 2008
    Messages:
    860
    Likes Received:
    616
    Reputations:
    211
    dimash, ето ведь пример..
    или тебе надо чтоб здесь написали код, в котором идет проверка на ковички и т.д..

    ладно, special for you(супер мега проверка):

    PHP:
     function n($msg)
     {
       
    $msg substr($msg,0,1024);//обрезаем 1024сиволов))
       
    $msg htmlspecialchars($msg);//quot
       
    return $msg;//возв знак
     
    }
    возвращает провереную строчку)))
     
    #7 eLWAux, 21 Aug 2008
    Last edited: 21 Aug 2008
  8. NOmeR1

    NOmeR1 Everybody lies

    Joined:
    2 Jun 2006
    Messages:
    1,068
    Likes Received:
    783
    Reputations:
    213
    Тема - бред. Get параметры всегда в формате string, а если его нет, то NULL.
    eLWAux, мда )))
    Code:
    <?php echo htmlspecialchars($_GET['id_mail']); ?>
     
    1 person likes this.
  9. eLWAux

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

    Joined:
    15 Jun 2008
    Messages:
    860
    Likes Received:
    616
    Reputations:
    211
    PHP:
    function n($msg)
    { $msg = substr($msg,0,1024);
    $msg = htmlspecialchars($msg);
    return $msg;
    }

    <?php echo n($_GET['id_mail']); ?>
    и никакой хакер не достучитса))
     
  10. scrat

    scrat кодер

    Joined:
    8 Apr 2007
    Messages:
    625
    Likes Received:
    541
    Reputations:
    3
    если у тебя id_main - число то не проще ли inval()-ом пользоваться?
     
  11. GreenBear

    GreenBear наркоман с медалью

    Joined:
    7 May 2005
    Messages:
    2,547
    Likes Received:
    1,398
    Reputations:
    612
    ?id_mail[]=lol
     
    2 people like this.
  12. .:EnoT:.

    .:EnoT:. Сексуальное чудовище

    Joined:
    29 May 2007
    Messages:
    803
    Likes Received:
    559
    Reputations:
    50
    PHP:
    $id = !empty($_GET['id_mail']) && is_numeric($_GET['id_mail']) ? intval($_GET['id_mail']) : '';
    echo 
    htmlspecialchars($id);
    ))
     
  13. GreenBear

    GreenBear наркоман с медалью

    Joined:
    7 May 2005
    Messages:
    2,547
    Likes Received:
    1,398
    Reputations:
    612
    .:EnoT:., кажется на баше была цитата
    это не с тебя брали?
     
  14. banned

    banned Banned

    Joined:
    20 Nov 2006
    Messages:
    3,324
    Likes Received:
    1,193
    Reputations:
    252
    eLWAux, мда)
    .:EnoT:., прочитай статью "Роковые ошибки PHP" не помню какую часть.. про is_numeric
     
  15. BlackSun

    BlackSun Banned

    Joined:
    1 Apr 2007
    Messages:
    989
    Likes Received:
    1,168
    Reputations:
    446
    C is_numeric как раз все впорядке)

     
    1 person likes this.
  16. nerezus

    nerezus Banned

    Joined:
    12 Aug 2004
    Messages:
    3,191
    Likes Received:
    729
    Reputations:
    266
    Все у него правильно ;) хотя можно было без условий только intval применить. Точнее нужно ;)
     
    1 person likes this.
  17. .:EnoT:.

    .:EnoT:. Сексуальное чудовище

    Joined:
    29 May 2007
    Messages:
    803
    Likes Received:
    559
    Reputations:
    50
    GreenBear, оч смешно...обоснуй лучше к чему ты это написал?

    Isis, в чём же эта "роковая ошибка PHP?" :)
    http://www.xakep.ru/magazine/xa/110/068/1.asp вот статья. Вот цитата оттуда:
    В моём примере ничего уязвимого не вижу...id_mail проверяется, является ли он числом, если да, то берётся его целое числовое значение....или ты собрался sql-иньекцию проводить через это?)) И запрос вида ?id_mail[]=123 ошибку не выдаст, он просто не будет обработан.
    Правда не знаю чё я туда htmlsprcialchars() запихнул, если там числовой параметр...ну пофиг
     
  18. GreenBear

    GreenBear наркоман с медалью

    Joined:
    7 May 2005
    Messages:
    2,547
    Likes Received:
    1,398
    Reputations:
    612
    да так...
     
  19. Demonyx

    Demonyx New Member

    Joined:
    31 Aug 2005
    Messages:
    2
    Likes Received:
    0
    Reputations:
    0
    А так если писать?

    PHP:
    <?php

    if( (strval(intval($_GET['id_mail'])) == $_GET['mail']){
     
    //ОК!
    }else{
     
    //Лог & Бан)
    }
    ?>
     
    #19 Demonyx, 22 Aug 2008
    Last edited: 22 Aug 2008
  20. banned

    banned Banned

    Joined:
    20 Nov 2006
    Messages:
    3,324
    Likes Received:
    1,193
    Reputations:
    252
    Я Славик (с)
     
Loading...
Similar Threads - Прием $_get
  1. GAiN
    Replies:
    3
    Views:
    7,817