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

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

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

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

    Joined:
    6 Feb 2010
    Messages:
    189
    Likes Received:
    42
    Reputations:
    19
    curl нормально отправляет куки! только отображение нужной валюты на странице зависит от JavaScript'а. В общем есть один способ: отключить выполнение скриптов на странице и посмотреть, возможно ли получить без JS нужные данные на странице, которые будут не генерироваться скриптом, а выдаваться сервером.
    А так можно же переписать функцию JS и пыхом пересчитывать эти валюты.
    Об эмуляции браузера/JS лучше даже не думать, однако такой способ есть, но он не для веба
     
  2. mastaadon

    mastaadon New Member

    Joined:
    26 Mar 2009
    Messages:
    32
    Likes Received:
    0
    Reputations:
    0
    Я остановился на том, что просто взял с их страницы обменный курс и пересчитал цены в нужной мне валюте. То есть в евро. Ваша подсказка с коментариями в скрипте здорово помогла, за что огромное спасибо!
     
  3. GAiN

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

    Joined:
    2 Apr 2011
    Messages:
    2,550
    Likes Received:
    172
    Reputations:
    99
    обнаружение новых файлов на хостинге

    как изменить дату создания файла на хостинге?, например туда через php shell залиты файлы и им нужно сменить даты, доступа по ftp нет


    Как можно проверить появление новых файлов на хостинге ?
    я делал проверку на изменение файлов по md5
    создаётся список файлов на момент нажатия кнопки обновления, хотелось бы добавить функцию которая будет проверять по этому списку и сравнивать, если нет в списке таких файлов, это значит что файлы появились на хостинге

    список файлов строится таким образом, каждый столбец - файл:
    fc94fb0c3ed8a8f909dbc7630a0987ff /home/public_html/images/blank.gif
     
    #22363 GAiN, 7 Feb 2015
    Last edited: 1 Mar 2015
  4. GAiN

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

    Joined:
    2 Apr 2011
    Messages:
    2,550
    Likes Received:
    172
    Reputations:
    99
    есть файл с функциями (function_rcc.php) - который инклудится в другой файл

    если открыть в браузере function_rcc.php файл с функциями - то будет пустая страница.

    но хотелось бы что бы при открытии его в браузере шёл редирект на главную страницу сайта или ошибку 403/404 выдавал
    как это сделать, проверить на открытие конкретного файла ?
     
  5. MaxFast

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

    Joined:
    12 Oct 2011
    Messages:
    575
    Likes Received:
    149
    Reputations:
    94
    PHP:
    header("Location: index.php");
    Это или нет?
     
  6. Compton

    Compton Member

    Joined:
    31 Jan 2010
    Messages:
    290
    Likes Received:
    25
    Reputations:
    0
    так он будет редиректить и при инклуде
    попробуй добавить функцию, которая бы редиректила в зависимости от названия открытого файла
     
    #22366 Compton, 7 Feb 2015
    Last edited: 7 Feb 2015
  7. GAiN

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

    Joined:
    2 Apr 2011
    Messages:
    2,550
    Likes Received:
    172
    Reputations:
    99
    Тоже склоняюсь к этому варианту - сделал проверку по имени, при инклуде имя не равно заданному в переменной - значит не идёт редирект
     
  8. Strilo4ka

    Strilo4ka

    Joined:
    5 Apr 2009
    Messages:
    709
    Likes Received:
    729
    Reputations:
    948
    1) http://ru.php.net/manual/ru/function.touch.php
    2) Если через php shell, то там есть же touch.
     
    1 person likes this.
  9. Strilo4ka

    Strilo4ka

    Joined:
    5 Apr 2009
    Messages:
    709
    Likes Received:
    729
    Reputations:
    948
    Этот код уязвим, если отменить переадресацию, то все что посе header() выполниться. Нужно писать die()/exit() обязательно.
     
    3 people like this.
  10. nejtr0n

    nejtr0n New Member

    Joined:
    23 Dec 2013
    Messages:
    17
    Likes Received:
    3
    Reputations:
    1
    Интересная фишка.
     
    #22370 nejtr0n, 9 Feb 2015
    Last edited: 9 Feb 2015
  11. serjio_5

    serjio_5 New Member

    Joined:
    4 Feb 2014
    Messages:
    2
    Likes Received:
    0
    Reputations:
    0
    Всем добрый день , есть ли скрипт ПЧП который перехватывал url транслируемых в сети потоков радистанций ну или что то подобное,своего рода приемник .По скольку в нете не чего подобного не нашел обращаюсь сюда.
     
    #22371 serjio_5, 14 Feb 2015
    Last edited: 15 Feb 2015
  12. mastaadon

    mastaadon New Member

    Joined:
    26 Mar 2009
    Messages:
    32
    Likes Received:
    0
    Reputations:
    0
    Нужна помочь в xml to html

    Есть страница с xml типа

    <CallOverview>
    <Calls Count="7">
    <Call CallType="PSTNOutSip" Customer="24" StartTime="2015-02-14 17:19:39 (UTC)" Destination="+49*****" Duration="00:03:51" Charge="0.2695" CallId="1"/>
    <Call CallType="PSTNOutSip" Customer="24" StartTime="2015-02-14 17:19:04 (UTC)" Destination="+49*****" Duration="00:00:06" Charge="0.007" CallId="2"/>
    <Call CallType="PSTNOutSip" Customer="24" StartTime="2015-02-14 17:16:50 (UTC)" Destination="+49*****" Duration="00:00:14" Charge="0.01634" CallId="3"/>
    <Call CallType="PSTNOutSip" Customer="24" StartTime="2015-02-14 17:15:50 (UTC)" Destination="+49*****" Duration="00:00:11" Charge="0.01284" CallId="4"/>
    <Call CallType="PSTNOutSip" Customer="24" StartTime="2015-02-14 17:15:18 (UTC)" Destination="+49*****" Duration="00:00:05" Charge="0.00584" CallId="5"/>
    <Call CallType="PSTNOutSip" Customer="24" StartTime="2015-02-14 17:05:48 (UTC)" Destination="+49*****" Duration="00:01:53" Charge="0.13184" CallId="6"/>
    <Call CallType="PSTNOutSip" Customer="4" StartTime="2015-02-14 15:46:18 (UTC)" Destination="+49*****" Duration="00:00:52" Charge="0.00867" CallId="7"/>
    </Calls>
    <MoreData>True</MoreData>
    </CallOverview>

    Вывести из него данные в таблицу типа

    <table >
    <tr><td>Destination</td> <td>Time</td> <td>Duration</td> <td>Charge</td></tr>
    <tr><td>+49*****</td> <td>2015-02-14 17:19:39</td> <td>00:03:51</td> <td>0.2695</td></tr>
    <tr><td>+49*****</td> <td>2015-02-14 17:19:04</td> <td>00:00:06</td> <td>0.007</td></tr>
    </table>
     
  13. Compton

    Compton Member

    Joined:
    31 Jan 2010
    Messages:
    290
    Likes Received:
    25
    Reputations:
    0
    mastaadon http://php.net/manual/ru/function.xml-parse-into-struct.php
     
  14. xleroy

    xleroy New Member

    Joined:
    13 Dec 2011
    Messages:
    3
    Likes Received:
    0
    Reputations:
    0
    подскажите как на хостах проверять работоспособность функции php mail. Тоесть проверять возможность отправки писем как?
     
  15. Compton

    Compton Member

    Joined:
    31 Jan 2010
    Messages:
    290
    Likes Received:
    25
    Reputations:
    0
    Сделать тестовую отправку:
    PHP:
    if(mail(...)) or die ('Отправка невозможна');
     
  16. xleroy

    xleroy New Member

    Joined:
    13 Dec 2011
    Messages:
    3
    Likes Received:
    0
    Reputations:
    0

    так а может быть такое что якобы отправка произошла но письмо реально не отправлено? как в таких ситуациях проверять? в чем причина может быть?
     
  17. Compton

    Compton Member

    Joined:
    31 Jan 2010
    Messages:
    290
    Likes Received:
    25
    Reputations:
    0
    попробуйте еще через
    PHP:
    if ( function_exists'mail' ) )
    {
        echo 
    'mail() is available';
    }
    else
    {
        echo 
    'mail() has been disabled';
    }  
     
  18. Грабитель

    Joined:
    5 Mar 2013
    Messages:
    196
    Likes Received:
    12
    Reputations:
    -7
    Помогите решить задачку на php

    Есть файл .php который содержит в себе много различных функций.
    Нужно прочитать этот файл, найти необходимую функцию, и выявить её конец по заверщающему символу }

    Пусть будет для примера код:
    Code:
    <?php
    
    function test() {
    if (1=2) { 111 }
    if (1=2) { 111 }
    if (1=2) { 111 }
    }
    
    function test() {
    if (1=2) { 111 }
    if (1=2) { 111 }
    if (1=2) { 111 }
    }
    
    function main() {
    if (1=2) { 111 }
    if (1=2) { 111 } if (1=2) { 111 }
    if (1=2) { 111 }
    if (1=2) { 111 }
    }
    
    function test() {
    if (1=2) { 111 }
    if (1=2) { 111 }
    if (1=2) { 111 }
    }
    
    
    В нем нужно найти начало, и окончание функции main()
    На начальном этапе через strpos можно найти начало по сигнатуре "function main() {"
    А вот как вычислить позицию последнего завершающего конкретно эту функцию символа } не знаю, буду рад, если поможете подсказать как это сделать.
    Или например как вариант регулярку в которую можно целиком впихнуть эту функцию типа "#(function main() { .+ })#" только ведь проблема, что в теле функции этих вложенных символов {} - может быть сколь угодно, поэтому тут я тоже не вытягиваю.
    Буду рад помощи.
     
  19. Tamplier

    Tamplier New Member

    Joined:
    1 Jan 2011
    Messages:
    6
    Likes Received:
    0
    Reputations:
    0
    Можно регуляркой.
    Можно и так:
    PHP:
    echo explode("}",explode($b."() {"$a)[1])[0];
    В $a твой код.
    $b - имя твоей функции.

    Пример:
    $b = "main";
     
    #22379 Tamplier, 16 Feb 2015
    Last edited: 16 Feb 2015
  20. Грабитель

    Joined:
    5 Mar 2013
    Messages:
    196
    Likes Received:
    12
    Reputations:
    -7
    Эмм, не совсем понял, вот то что ты предложил:
    Code:
    <?php 
    $afdgdfg = '
    function test() {
    if (1=2) { 111 }
    if (1=2) { 111 }
    if (1=2) { 111 }
    }
    
    function test() {
    if (1=2) { 111 }
    if (1=2) { 111 }
    if (1=2) { 111 }
    }
    
    function main() {
    if (1=2) { 111 }
    if (1=2) { 111 } if (1=2) { 111 }
    if (1=2) { 111 }
    if (1=2) { 111 }
    }
    
    function test() {
    if (1=2) { 111 }
    if (1=2) { 111 }
    if (1=2) { 111 }
    }
    
    '; 
    
    $bdfsfsdf = "main";
    echo  explode("}",explode($bdfsfsdf."() {", $afdgdfg)[1])[0] ;  
    ?>
    выводит непонятно что.
    Мне нужно конец конкретной функции определить, а у тебя в коде насколько я понял ловится первый попавшийся символ } который и считается якобы концом, но в теле функции инструкций может быть сколь угодно, включая и эти скобки в любом количестве.
     
Thread Status:
Not open for further replies.