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

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

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

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

    Joined:
    26 Dec 2006
    Messages:
    120
    Likes Received:
    7
    Reputations:
    1

    Пасиб, но немного не то, если берем строчку:

    Code:
    $str='Исследование программных продуктов, низкоуровневое программирование';
    то на выходе получим:

    Code:
    67-----Исследование программных продуктов, низкоуровневое
    а нужно что б было так:

    Code:
    36-----Исследование программных продуктов,
    т.е нужно что б строка на выходе была меньше или равна 40 символам и была обрезана по последнему пробелу (что бы не обрезалось пол слова)
     
  2. KIR@PRO

    KIR@PRO from Exception

    Joined:
    26 Dec 2007
    Messages:
    826
    Likes Received:
    291
    Reputations:
    359
    я в плане оптимизации)
     
    _________________________
  3. Gifts

    Gifts Green member

    Joined:
    25 Apr 2008
    Messages:
    2,494
    Likes Received:
    807
    Reputations:
    614
    Тогда так
    PHP:
    function cut($str,$len=40)
    {
        if (
    strlen($str)<=$len) return $str;
        else {return 
    preg_replace('~ [^ ]*$~','',substr($str,0,$len));}
    }
    $str='Исследование программных продуктов, низкоуровневое программирование';

    echo 
    strlen($str).'-----'.cut($str);
     
    _________________________
    #8883 Gifts, 8 Mar 2009
    Last edited: 8 Mar 2009
  4. initab

    initab New Member

    Joined:
    25 Jan 2009
    Messages:
    4
    Likes Received:
    1
    Reputations:
    0
    Неправильно изменил. Вот это: ".document.forms.password.password" должно быть так: ".document.forms.form1.password". В общем виде ".document.forms.ИМЯ_ФОРМЫ.ИМЯ_ПОЛЯ"
     
    #8884 initab, 8 Mar 2009
    Last edited: 8 Mar 2009
  5. mr.Babay

    mr.Babay New Member

    Joined:
    14 Jan 2009
    Messages:
    10
    Likes Received:
    0
    Reputations:
    0
    Ммм... как бы сделать так чтобы при попадении пользователя на страницу определялся его браузер и в связи с этим показывалась определённая страница?!
    з.ы. например для клик-джекинга...
     
  6. 159932

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

    Joined:
    28 Sep 2007
    Messages:
    587
    Likes Received:
    462
    Reputations:
    5
    $_SERVER[HTTP_USER_AGENT];
     
  7. valikiev

    valikiev New Member

    Joined:
    9 Mar 2008
    Messages:
    5
    Likes Received:
    0
    Reputations:
    0
    Подскажите пожалуйста.

    Здравствуйте, подскажите пожалуйста как безопасней будет сделать, так:

    if (isset($_GET['id']) && $_GET['id'] === '1' || $_GET['id'] === '5')
    {
    .......................................
    }


    или так:

    if (isset($_GET['id']) && $_GET['id'] == '1' || $_GET['id'] == '5')
    {
    .......................................
    }



    Спасибо.
     
    #8887 valikiev, 9 Mar 2009
    Last edited: 9 Mar 2009
  8. [dei]

    [dei] Active Member

    Joined:
    24 Nov 2008
    Messages:
    171
    Likes Received:
    112
    Reputations:
    5
    valikiev
    PHP:
    if(isset($_GET['id']) && ($_GET['id'] == || $_GET['id'] == 5)) {
    /* ... */
    }
     
    1 person likes this.
  9. Pashkela

    Pashkela Динозавр

    Joined:
    10 Jan 2008
    Messages:
    2,750
    Likes Received:
    1,044
    Reputations:
    339
    безопасней будет if (isset($_GET['id']) && intval($_GET['id']) ==1 ||intval($_GET['id']) == 5)
     
  10. [dei]

    [dei] Active Member

    Joined:
    24 Nov 2008
    Messages:
    171
    Likes Received:
    112
    Reputations:
    5
    нет.
    == - оператор равенства, приводит оба операнда к одному типу данных (0 равно false)
    === - оператор эквивалентности, сравнивает также типы (0 не равно false)
     
    #8890 [dei], 9 Mar 2009
    Last edited: 9 Mar 2009
    3 people like this.
  11. valikiev

    valikiev New Member

    Joined:
    9 Mar 2008
    Messages:
    5
    Likes Received:
    0
    Reputations:
    0
    Ясно, я просто просматривал это http://www.realcoding.net/article/view/1999 там есть табличка с операторами:
    == != === <>
    Равно, не равно, идентично, не равно

    Я наверное не так понял, спасибо за подсказку.
     
  12. AFoST

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

    Joined:
    28 May 2007
    Messages:
    588
    Likes Received:
    485
    Reputations:
    176
    php - язык исполняемый на стороне сервера и выдающий в качестве результата(если тебе это надо) html-страницу. Чтобы провести атаку используя баги php тебе нужен именно исходник. html-страница -- это результат работы php-скрипта(так наверное тебе понятней будет)
     
  13. zifanchuck

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

    Joined:
    27 Oct 2008
    Messages:
    396
    Likes Received:
    154
    Reputations:
    3
    поищи исходники в интернете. может чето нароеш
     
  14. AFoST

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

    Joined:
    28 May 2007
    Messages:
    588
    Likes Received:
    485
    Reputations:
    176
    ты ж сам сказал, что поставил апач+php и написал скрипт! Вот этот скрипт - есть исходник!
    А чтобы искать php баги, например, в IPB, тебе соответственно, нужны исходники IPB.

    ps Заходишь на сайт, который хочешь "проверить", смотришь на каком движке он работает, качаешь двиг и анализируешь работу скрипта.
     
  15. zifanchuck

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

    Joined:
    27 Oct 2008
    Messages:
    396
    Likes Received:
    154
    Reputations:
    3
    Чето никак непойм как реализовать:
    Мне надо что бы через скрипт менялся юзер_агент (ну вроде я с разных браузеров захожу). Чето ищу ищу и ненахожу((( как ето делаеться?
     
  16. zifanchuck

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

    Joined:
    27 Oct 2008
    Messages:
    396
    Likes Received:
    154
    Reputations:
    3
    о спс)))
     
    1 person likes this.
  17. AFoST

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

    Joined:
    28 May 2007
    Messages:
    588
    Likes Received:
    485
    Reputations:
    176
    любой HTTP запрос имеет строгую структуру, в которой указывается тип броузера клиента(параметр User-Agent)
    Просто берём и формирует http-request с разным значением параметра user-agent.
    на php примерно так выглядит:
    PHP:
            $request =
                
    "GET http://".$host.$pathname." HTTP/1.0\r\n".
                
    "host: ".$host."\r\n".
                
    "user-agent: ".$you_useragent."\r\n".
                
    "Connection: close\r\n".
                
    "\r\n";
            if(!
    $socket socket_create(AF_INETSOCK_STREAMSOL_TCP)){
                echo 
    "Error creating socket!\r\n";
                
    $error false;
                }
            if(!
    $result socket_connect($socket$host'80')){
                echo 
    "Error socket connecting!\r\n";
                
    $error false;
                }
            if(!
    socket_write($socket$requeststrlen($request))){
                echo 
    "Error writing to socket!\r\n";
                
    $error false;
                }
            while (
    $recv socket_read($socket,512)){
                
    $tmp .= $recv;
                }
            
    socket_close($socket);
    в итоге в переменной $tmp будет ответ сервера.
     
    #8897 AFoST, 9 Mar 2009
    Last edited: 9 Mar 2009
    2 people like this.
  18. zifanchuck

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

    Joined:
    27 Oct 2008
    Messages:
    396
    Likes Received:
    154
    Reputations:
    3
    Простите бедного школьника(((но чето гуглю и книгу читаю но непойму как зделать
    короче есть сайт который роздает аси. там ограничения 300 секунд. что бы выиграть надо ввести капчу а там как повезет :)
    ограничения обходиться 2ма способами.
    1)Другой браузер
    2)Перезагрузкой браузера
    Незнаю как скриптом оформить или первый или второй вариант(((
    думал через подмену юзер агента и вставлять рандомный из списка, но чето никак не роздууплюсь как((
    Поставил себе на деневер форму
    PHP:
    <html>
    <head>
      <title></title>
    </head>
    <body>
     <form action="http://www.free-uin.org/r/mnlxswrt.php" method="post">
    Для участия в розыгрыше номеров ICQ введите защитный код, и нажмите кнопку "Мне повезёт":<br />
    <img src="http://www.free-uin.org/r/img.php?regen=y&<?php echo time(); ?>" />
    <input type="text" name="code" /><br /><br />
    <input name=btnI type=submit value="Мне повезёт!">
    </form>
    </body>
    </html>
    капча выскакивает ввожу перекидывает на страницу сайта и говорит выиграл или нет. как мне организовать обход етой баги незнаю. Может кто поможе вписать в ету форму скрипт или хоть линк на норм статью даст, а то гугл толком ничего нормального не посоветывал(((
     
    #8898 zifanchuck, 9 Mar 2009
    Last edited: 9 Mar 2009
  19. zifanchuck

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

    Joined:
    27 Oct 2008
    Messages:
    396
    Likes Received:
    154
    Reputations:
    3
    спс. Осталось токо выучить курл))) вот забабахаю норм скрипт и выложу на ачате)))
     
  20. zifanchuck

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

    Joined:
    27 Oct 2008
    Messages:
    396
    Likes Received:
    154
    Reputations:
    3
    m0Hze, а можеш подкинуть норм мануал по курлу? А то у меня в книге про него нету а гугл давал токо какуюто хню(
     
    1 person likes this.
Thread Status:
Not open for further replies.