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

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

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

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

    Joined:
    23 May 2005
    Messages:
    1,646
    Likes Received:
    148
    Reputations:
    18
    Так как я не сильный умелец обьяснять что нужно сделать, или как это сделать, буду минимально просто.
    Этот код открывает текстовый файл, и разбивает его на части, по 100 строк.
    Этот код - исполняет рабивку только один раз после запуска скрипта.
    Как сделать так что бы цикл повторялся ?
    К примеру что бы он исполнился 5 раз ? т.е 5 раз рабился файл ? пусть один и тот же.

    Code:
    $file_in = 'cogp.txt'; #входной файл
    $file_out_n = 'cogp'; #выходной файл имя
    $file_out_ras = 'txt'; #выходной файл расширение
    $strok = 100; #колличество строк в одном выходном файле
    $count_out = 1; #счетчик выходных файлов начинать с этого числа
     
    
    if(file_exists($file_in)) $content = file($file_in); else exit('Не найден входной файл '.$file_in);
    $k=0;
    $add = '';
     for($i=0, $count=count($content); $i < $count; $i++){
      if($i == $strok * ($k + 1) || $i==$count-1){
       if($i==$count-1) $add=$add.$content[$i];
       $fp = fopen($file_out_n.$k.'.'.$file_out_ras, 'w');
       fputs($fp, $add);
       fclose($fp);
        $add='';
            $k++;
      }
         $add=$add.$content[$i];
     }     
    echo 'Работа завершена. Создано '.$k.' файлов';
    
    Т.е если я этот код заключю еще в один цикл FOR то 1 цикл будет исполняться к примеру 6 раз - а ЦИКЛ с разбивкой только 1 раз.... вот и задача или совместить циклы или как то сделать ... я просто не могу понять логики как так..
     
    #20581 Adio, 13 May 2012
    Last edited: 13 May 2012
  2. Gifts

    Gifts Green member

    Joined:
    25 Apr 2008
    Messages:
    2,494
    Likes Received:
    807
    Reputations:
    614
    Adio
    PHP:
    $file_in 'cogp.txt'#входной файл
    $file_out_n 'cogp'#выходной файл имя
    $file_out_ras 'txt'#выходной файл расширение
    $strok 100#колличество строк в одном выходном файле
    $count_out 1#счетчик выходных файлов начинать с этого числа
     
    for($zzz=0$zzz<5$zzz++)
    {
    if(
    file_exists($file_in)) $content file($file_in); else exit('Не найден входной файл '.$file_in);
    $k=0;
    $add '';
     for(
    $i=0$count=count($content); $i $count$i++){
      if(
    $i == $strok * ($k 1) || $i==$count-1){
       if(
    $i==$count-1$add=$add.$content[$i];
       
    $fp fopen($file_out_n.$k.'.'.$file_out_ras'w');
       
    fputs($fp$add);
       
    fclose($fp);
        
    $add='';
            
    $k++;
      }
         
    $add=$add.$content[$i];
     }     
    }
    echo 
    'Работа завершена. Создано '.$k.' файлов';
     
    _________________________
    1 person likes this.
  3. mironich

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

    Joined:
    27 Feb 2011
    Messages:
    733
    Likes Received:
    73
    Reputations:
    19
    Ниже json обьект.
    PHP:
    {"name":"TestAdd","phone":"4574585484","adress":"Moscov 58","ldate":"01-2-2006"}
    Из php привожу в ассоциативный массив через json_decode второй параметр true, функц. возвращает Null почему это происходит?
    Upd: Разобрался магические кавычки были вкл.
     
    #20583 mironich, 16 May 2012
    Last edited: 16 May 2012
  4. AnGeI

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

    Joined:
    8 Dec 2008
    Messages:
    395
    Likes Received:
    79
    Reputations:
    16
    Как завершить php скрипт, который выполняется на обычном хостинге под ignore_user_abort(true)? Дело в том, что сокет работает бесконечно и отправляет данные без обновления, нужно как-то завершить скрипт и обновить данные.
     
  5. DeepBlue7

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

    Joined:
    2 Jan 2009
    Messages:
    359
    Likes Received:
    50
    Reputations:
    12
    Как насчёт, например, считывания из файла с содержимым 1 или 0... Если 0 - оборвать цыкл.. 1 - продолжить ? Т.е. цикл прерывается если значение в файле - 0.
     
    1 person likes this.
  6. seofilms

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

    Joined:
    27 May 2009
    Messages:
    66
    Likes Received:
    46
    Reputations:
    14
    <input type=checkbox name=zakaz[]>
    <input type=checkbox name=zakaz[]>
    <input type=checkbox name=zakaz[]>
    Получается 0,1,2
    Допустим я нажал на checkbox 1, как вывести именно циферку 1 ?
     
  7. DeepBlue7

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

    Joined:
    2 Jan 2009
    Messages:
    359
    Likes Received:
    50
    Reputations:
    12
    Вы наверняка хотели сделать нечто подобное:

    Code:
    <?php
    echo "
    <form method='post'>
    <input type='checkbox' name='zakaz' value='0'>
     <input type='checkbox' name='zakaz' value='1'>
     <input type='checkbox' name='zakaz' value='2'>
     <input type='submit' name='submit' value='submit'>
     </form>
     "; 
     
    	echo $_POST['zakaz'];
    ?>
    
    Нельзя массивы там использовать...
     
  8. ol1ver

    ol1ver Active Member

    Joined:
    22 Jul 2011
    Messages:
    237
    Likes Received:
    155
    Reputations:
    0
    юзай отладку print_r ($_POST);
     
  9. seofilms

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

    Joined:
    27 May 2009
    Messages:
    66
    Likes Received:
    46
    Reputations:
    14
    Юзал, это лишь выведет нажатые чекбоксы, мне нужно например после нажатия zakaz 1 удалить первую статью из базы данных.
    К каждой статье приделан <input type=checkbox name=zakaz[]>
    Мне нужно определить какой статье принадлежит чекбокс и удалить эту статью.
     
  10. DeepBlue7

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

    Joined:
    2 Jan 2009
    Messages:
    359
    Likes Received:
    50
    Reputations:
    12
    Тогда цикл в форму... чот тип этого:
    Code:
    <?php
    echo "
    <form method='post'>";
     for($i = 0; $i < 5; $i++)
     {
     
    	echo "<input type='checkbox' name='zakaz' value='$i'>";
     }
     echo "<input type='submit' name='submit' value='submit'></form>";
    	echo $_POST['zakaz'];
    ?>
    
    Ну.. это так, для примера.
     
  11. seofilms

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

    Joined:
    27 May 2009
    Messages:
    66
    Likes Received:
    46
    Reputations:
    14
    Тоже об этом подумывал, спасибо)
     
  12. Billerofont

    Billerofont New Member

    Joined:
    12 Apr 2012
    Messages:
    3
    Likes Received:
    0
    Reputations:
    0
    Подскажите, пожалуйста, как вообще можно составить брут под конкретные цели? Какой информацией надо обладать для этого? Скажем, я хочу взломать конкретный аккаунт, в конкретном чате...
     
  13. AnGeI

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

    Joined:
    8 Dec 2008
    Messages:
    395
    Likes Received:
    79
    Reputations:
    16
    Код скрипта редактировать нельзя.
     
  14. winstrool

    winstrool ~~*MasterBlind*~~

    Joined:
    6 Mar 2007
    Messages:
    1,413
    Likes Received:
    910
    Reputations:
    863
    как минимум надо знать логин ломаемого человека, а в дальнейшем к к логину подбирать пасс, былобы не плохо сначало прогнать по паблик словарям, не думаю чтоу ломаемых аккаунтах в чатах они сложные, ну а потом только брутом, подобных скриптов и программ в гугле полно...
     
    _________________________
  15. seofilms

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

    Joined:
    27 May 2009
    Messages:
    66
    Likes Received:
    46
    Reputations:
    14
    Есть вот такой вот код :
    PHP:
    $checkit=$_POST['zakaz'];
    if (isset(
    $checkit))
    {
    $result=mysql_query('DELETE FROM `pcrepair1`.`zakazy` where `zakazy`.`id`=' $checkit);
    echo 
    "<meta http-equiv='Refresh' content='0; URL='>";
    }
    При нажатии на чекбокс рядом с новостью она удаляется, но на странице ничего не изменяется, для этого я сделал обновление страницы :
    echo "<meta http-equiv='Refresh' content='0; URL='>";
    Можно конечно еще сделать через header, через javascript...
    Но как по мне это странно)
    Возможно ли сделать тоже самое, только без обновления страницы ? Или только через ajax?
     
  16. mironich

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

    Joined:
    27 Feb 2011
    Messages:
    733
    Likes Received:
    73
    Reputations:
    19
    Только js, используй mysql_real_escape_string();
    Ибо ты не фильтруешь POST запрос, подставят OR 1=1 и все новости удаляться.
    Зы оперировать с конвентом html стр(видом) через php извращение.
     
    1 person likes this.
  17. AnGeI

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

    Joined:
    8 Dec 2008
    Messages:
    395
    Likes Received:
    79
    Reputations:
    16
    Актуально.
     
  18. Gifts

    Gifts Green member

    Joined:
    25 Apr 2008
    Messages:
    2,494
    Likes Received:
    807
    Reputations:
    614
    AnGeI Внутри цикла опрашивать что-то внешнее, например файл, и если там текст STOP - останавливаться. Либо пристреливать процесс php, вопрос только какой.
     
    _________________________
  19. DeepBlue7

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

    Joined:
    2 Jan 2009
    Messages:
    359
    Likes Received:
    50
    Reputations:
    12
    Предлагал... код скрипта он модифицировать не может o_O.
     
  20. AnGeI

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

    Joined:
    8 Dec 2008
    Messages:
    395
    Likes Received:
    79
    Reputations:
    16
    Получается для каждого скрипта свой процесс? Если удалить сам скрипт, процесс будет продолжатся? Проверить на данный момент не могу.
     
Thread Status:
Not open for further replies.