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

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

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

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

    Joined:
    2 Nov 2008
    Messages:
    405
    Likes Received:
    163
    Reputations:
    12
    Есть 2 файла на сервере :
    gate.php
    log.txt -chmod77

    Собственно нужно сделать панель доступа к файлу log.txt через сайт (ввести логин и пароль что-бы можно было просмотреть файл log.txt)

    Грубо говоря нужно что-бы с браузера можно было просматривать log.txt .

    p/s скачивал разные фейки с админ панелями но переделать под свои нужны не смог.
     
  2. .::f-duck::.

    .::f-duck::. Member

    Joined:
    30 May 2009
    Messages:
    343
    Likes Received:
    32
    Reputations:
    7
    http://php.net/manual/en/function.fread.php
    http://php.net/manual/en/function.file.php
    http://php.net/manual/en/function.file-get-contents.php

    Создаешь файл gate.php:
    PHP:
    <?php
        
    if (!isset($_POST['login_btn'])) { 
    ?>
            <form action="gate.php" method="post">
                <input type="text" name="login" />
                <input type="password" name="password" />
                <input type="submit" name="login_btn" />
            </form>
    <?php
            
    exit;
        }

        if (
    $_POST['login'] == 'admin' && $_POST['password'] == 'root') {
            
    // Название файла, который читать будем.
            
    $file_name 'log.txt'
            
    // Читаем файл в переменную.
            
    $file_content file_get_contents($file_name);
            
    // Выводим содержимое на экран.
            
    echo '<pre>'.$file_content.'</pre>';
        }
    ?>
     
    #17702 .::f-duck::., 20 Feb 2011
    Last edited: 20 Feb 2011
    2 people like this.
  3. waik

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

    Joined:
    2 Nov 2008
    Messages:
    405
    Likes Received:
    163
    Reputations:
    12
    Большое спасибо,а как сделать что-бы файл log.txt нельзя было изменить и нельзя было перейти к нему напрямую ссылкой сайт.ру/log.txt ?
     
    #17703 waik, 20 Feb 2011
    Last edited: 20 Feb 2011
  4. .::f-duck::.

    .::f-duck::. Member

    Joined:
    30 May 2009
    Messages:
    343
    Likes Received:
    32
    Reputations:
    7
    Ну, создай .htaccess
    И напиши туда:
    <Files log.txt>
    order allow,deny
    deny from all
    </Files>
     
  5. waik

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

    Joined:
    2 Nov 2008
    Messages:
    405
    Likes Received:
    163
    Reputations:
    12
    Большое спасибо.
     
  6. Tw!m4

    Tw!m4 Elder - Старейшина

    Joined:
    15 Jun 2007
    Messages:
    187
    Likes Received:
    19
    Reputations:
    0
    Скажите, что означает @ :
    PHP:
    @fopen($file);
     
  7. h00lyshit!

    h00lyshit! [From Nobody To Root]

    Joined:
    10 Sep 2009
    Messages:
    289
    Likes Received:
    290
    Reputations:
    195
    Подавление вывода ошибок
    http://www.php.ru/manual/language.operators.errorcontrol.html
     
    #17707 h00lyshit!, 21 Feb 2011
    Last edited: 21 Feb 2011
    1 person likes this.
  8. krypt3r

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

    Joined:
    27 Apr 2007
    Messages:
    1,507
    Likes Received:
    389
    Reputations:
    101
    PHP:
    @fopen($file);
    Использование @ замедляет работу скрипта
     
  9. -=lebed=-

    -=lebed=- хэшкрякер

    Joined:
    21 Jun 2006
    Messages:
    3,804
    Likes Received:
    1,960
    Reputations:
    594
    http://ru.php.net/parse_url
    http://php.su/functions/?f=parse_url&choice=info
    P.S. Соответственнно надо исключить [query]

    PHP:
    <?php
    $url
    =parse_url('http://site.ru/123.html?qw=11&ww=2');
    $ur=$url[scheme].'://'.$url[host].$url[path];
    echo 
    $ur;
    ?>
     
    #17709 -=lebed=-, 21 Feb 2011
    Last edited: 21 Feb 2011
    1 person likes this.
  10. Hack_ERR++

    Hack_ERR++ Member

    Joined:
    13 Aug 2009
    Messages:
    41
    Likes Received:
    9
    Reputations:
    0
    PHP:
    <?php
    $url 
    'http://site.ru/123.html?qw=11&ww=2';
    $pattern "/http:\/\/[a-z0-9\/^(.html)]{1,}.html/";
    preg_match($pattern,$url,$result);
    print_r($result[0]);
    ?>
     
    1 person likes this.
  11. b3

    b3 Banned

    Joined:
    5 Dec 2004
    Messages:
    2,170
    Likes Received:
    1,155
    Reputations:
    202
    Не будет работать в многих случаях, да и зачем регулярки если есть готовые решения.
     
  12. Compton

    Compton Member

    Joined:
    31 Jan 2010
    Messages:
    290
    Likes Received:
    25
    Reputations:
    0
    не получается что-то с капчей :(
    PHP:
    <?php
    $cookie
    ='Z:\home\localhost\www\cook.txt';
    $url='http://www.host1free.com/sign-up/?ac=h1f_create';
    $ref='http://www.host1free.com/sign-up/';
    $agent='Mozilla/5.0 (Windows; U; Windows NT 6.0; ru; rv:1.9.0.3) Gecko/2008092417 Firefox/3.0.3';
    set_time_limit(0);
    $ch curl_init();
    curl_setopt($chCURLOPT_URL$url); 
    curl_setopt($chCURLOPT_REFERER,$ref);
    curl_setopt($chCURLOPT_USERAGENT$agent); 
    curl_setopt($chCURLOPT_RETURNTRANSFER1); 
    curl_setopt($ch,CURLOPT_COOKIEJAR,$cookie);
    $exec curl_exec($ch);
    curl_setopt($chCURLOPT_URL$url); 
    curl_setopt($chCURLOPT_REFERER,$ref);
    curl_setopt($chCURLOPT_USERAGENT$agent); 
    curl_setopt($chCURLOPT_RETURNTRANSFER1);
    curl_setopt($ch,CURLOPT_COOKIEFILE,$cookie);
    curl_setopt($ch,CURLOPT_COOKIEJAR,$cookie); 
    $exec curl_exec($ch);
    preg_match('#<img src="(.*)" alt="captcha"/>#',$exec,$captcha);
    preg_match('#<input type="hidden" name="capokey" value="(.*)"/>#',$exec,$h);
    echo 
    '<form name="form1"><img src="'.$captcha[1].'"><br><input type="text" name="text" /><br><input type="submit" value="submit" /></form>';
    $post=$_GET['text'];
    if(!empty(
    $post)){
    curl_setopt($chCURLOPT_URL$url); 
    curl_setopt($chCURLOPT_COOKIEFILE,$cookie);
    curl_setopt($chCURLOPT_REFERER,$ref);
    curl_setopt($chCURLOPT_USERAGENT$agent); 
    curl_setopt($chCURLOPT_RETURNTRANSFER1); 
    curl_setopt($chCURLOPT_POST1); 
    curl_setopt($chCURLOPT_POSTFIELDS'h1f_subdomain=trolltt6&h1f_freedomain=25&h1f_login=ghghh%40gmail.com&h1f_pass=ffffff&h1f_pass_rep=ffffff&h1f_captcha='.$post.'&capokey='.$h[1].'&h1f_agree=on'); 
    $exec curl_exec($ch);   
    echo 
    $exec;   
    }
    ?>
     
  13. Gifts

    Gifts Green member

    Joined:
    25 Apr 2008
    Messages:
    2,494
    Likes Received:
    807
    Reputations:
    614
    Compton а что вы хотите собственно получить выводя капчу напрямую с целевого сайта в браузер, а печеньки используя курловские?

    Точнее даже вообще не используя печенек при регистрации
     
    _________________________
  14. Nelz.

    Nelz. Member

    Joined:
    2 Aug 2010
    Messages:
    151
    Likes Received:
    7
    Reputations:
    0
    PHP:
    <?php 
    function makecup($type1 "Chaia",$type2 "express"
    {
    return 
    "Sdelaite chase4ku $type1.\n";
          
    "Sdelaite mne $type2.\n";
    }
    echo 
    makecup("limona");
    ?>

    писал так

    обязательно с 2 аргументами!

    типа такие function makecup($type1, $typ2 = "чая") не катит

    точно также makecup($type1 = "Chaia",$type2 = "express")

    с первым аргументом все ясно,как возвращать type2 из вне функции?
     
  15. SHiNiGaMi

    SHiNiGaMi Banned

    Joined:
    3 Jan 2010
    Messages:
    382
    Likes Received:
    55
    Reputations:
    15
    Nelz.
    Если правильно понял, то:
    PHP:
    <?php
    function makecup($type1 "Chaia",$type2 "express")  

    return 
    "Sdelaite chase4ku $type1.\n"
          
    "Sdelaite mne $type2.\n"

    echo 
    makecup("limona");
    ?>
     
  16. Nelz.

    Nelz. Member

    Joined:
    2 Aug 2010
    Messages:
    151
    Likes Received:
    7
    Reputations:
    0
    понято

    если не трудно,как вывести каждый аргумент по отдельности?

    ну типа

    echo makecup("limona"); // type1
    echo makecup("apple"); // type2
     
    #17716 Nelz., 22 Feb 2011
    Last edited: 22 Feb 2011
  17. LStr1ke

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

    Joined:
    29 Jul 2009
    Messages:
    801
    Likes Received:
    145
    Reputations:
    73
    Эээээ
    PHP:
    function makecup($type1 "Chaia",$type2 "express")   
    {  
        
    $str "";
        if(
    $type1$str .= "Sdelaite mne ".$type1."\n";
        if(
    $type2$str .= "Sdelaite mne ".$type2."\n";
        return 
    $str;
    }  
    echo 
    makecup("kofe",0); //type1
    echo makecup(0,"minet"); //type2
    echo makecup("kofe","minet"); // Ну ты понял
    ?>
     
  18. Ifrit

    Ifrit New Member

    Joined:
    10 Feb 2011
    Messages:
    33
    Likes Received:
    3
    Reputations:
    5
    доброго времени суток
    вопрос к профи:
    посоветуйте пожалуйста, как лучше развиваться в плане освоения PHP после того, как уже есть базовые знания, но нет глубокого понимания языка
    т.е. я хочу сказать: прочитал книгу Джанет Валейд "PHP для чайников" (не надо ржать =) самая нормальная книга из всех что я читал)
    иногда перечитываю отдельные моменты из книги
    есть понимание массивов, условий, циклов, функций и т.д. Написал пару простых страниц для использования на работе с целью работы с базами mSQL.
    Проблема в том, что когда просматриваю относительно серьезные проекты, вроде форумов, то понимаю код частями, и то не весь, но не вижу глобально функциональности.
    Посоветуйте пожалуйста в каком направлении нужно двигаться дальше, что прочитать, в каком проекте лучше попробовать свои силы?
    p.s. знание sql тоже на среднем уровне
     
  19. LStr1ke

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

    Joined:
    29 Jul 2009
    Messages:
    801
    Likes Received:
    145
    Reputations:
    73
    Двигайся в сторону ООП
     
  20. Ifrit

    Ifrit New Member

    Joined:
    10 Feb 2011
    Messages:
    33
    Likes Received:
    3
    Reputations:
    5
    краткость - сестра таланта? =)
    я же нуб мне надо хоть чуток разжевать =)))
     
Thread Status:
Not open for further replies.