Цикл в цикле

Тема в разделе "Как сделать...", создана пользователем zilon, 8 окт 2013.

  1. zilon

    zilon

    Регистр.:
    30 июл 2011
    Сообщения:
    370
    Симпатии:
    147
    Делаю скрипт для массового добавления урлов и кеев в базу тдски, застрял на циклах... нужно чтобы переменная $poziciya увеличивалась на 1 с каждой новой этой самой. То есть цикл внутри цикла надо сделать, а как это, подскажите пожалуйста. :thenks:

    Она в 19 строчки - 'СЧЁТЧИК - '

    PHP:
    <meta http-equiv="Content-Type" content="text/html; charset=utf-8">
    <center>

    <?php

    if(isset($_POST['obnovlenie']))
    {
       
    $keys $_POST['keys'];
       
    $urls $_POST['urls'];
       
    $poziciya $_POST['poziciya'];
       
    $idgroup $_POST['idgroup'];

       
    $keys explode("\n"$_POST['keys']);
       
    $urls explode("\n"$_POST['urls']);
       
    $elements count($keys);

       for(
    $i=0;$i<$elements;$i++)
       {
       echo 
    $keys[$i] . ' - ' $urls[$i] . ' - ' 'СЧЁТЧИК - ' $poziciya '<br>';
       }

    }
    else
    {

    ?>

    <table><tr><td>
    <form method='post' action=''>
    <textarea name='keys' rows='15' cols='30' placeholder='Ключевики'>первый
    второй
    третий</textarea>
    <textarea name='urls' rows='15' cols='30' placeholder='Урлы'>sait1.ru
    sait2.ru
    sait3.ru</textarea><br><br>
    Позиция и поток на 1 больше чем сейцас в БД! - <input name='poziciya' type='text'><br><br>
    Идентификатор группы - <input name='idgroup' type='text'>
    <br><br><input name='obnovlenie' type='submit' value='отправить' size='70'>
    </form>     
    </tr></td><table>

    <?php
    }
    ?>
    </center>
     
  2. kos1986

    kos1986 Постоялец

    Регистр.:
    29 окт 2007
    Сообщения:
    118
    Симпатии:
    61
    $poziciya в каждой итерации должна увечиваться на единицу? А зачем цикл еще какой-то нужен, если уже инкремент $i есть?
    Код:
    $poziciya += $i;
     
    zilon нравится это.
  3. zilon

    zilon

    Регистр.:
    30 июл 2011
    Сообщения:
    370
    Симпатии:
    147
    всё так но внутри формы, почему то не на 1 увеличивается, а в какой то прогрессии 1,2,5,8,12,17 итд

    PHP:
    <meta http-equiv="Content-Type" content="text/html; charset=utf-8">
    <center>

    <?php

    if(isset($_POST['obnovlenie']))
    {
       
    $keys $_POST['keys'];
       
    $urls $_POST['urls'];
       
    $poziciya $_POST['poziciya'];
       
    $idgroup $_POST['idgroup'];

       
    $keys explode("\n"$_POST['keys']);
       
    $urls explode("\n"$_POST['urls']);
       
    $elements count($keys);

       echo 
    '<form><textarea rows=100% cols=100%>';
       for(
    $i=0;$i<$elements;$i++)
       {
    //  echo $keys[$i] . ' - ' . $urls[$i] . ' - ' . 'СЧЁТЧИК - ' . $poziciya += $i . '<br><br><br>';
    $number $poziciya += $i;
    $key str_replace("\r"""$keys[$i]);
    $url str_replace("\r"""$urls[$i]);
    echo
    '
    <?php
    $db = mysql_connect("localhost","*******","******");
    mysql_select_db("*****" ,$db);
    @mysql_query("SET NAMES utf8");

    $result = mysql_query ('
    ; echo'"INSERT INTO keitaro_streams (id, group_id, position, chance, redirect_type, url, comments, status, countries_filter, countries_filter_value, cities_filter, cities_filter_value, ip_filter, ip_filter_value, browser_filter, browser_filter_value, os_filter, os_filter_value, keywords_filter_value, langs_filter, langs_filter_value, referer_filter, referer_filter_value, uniq_filter, schedule, start_date, end_date, manual_referer, checker_active, checker_url, checker_regx, checker_interval, checker_source, checker_next_run, checker_action_done, manual_filters, ua_filter, ua_filter_value, mobile_filter) VALUES'; echo"('mysql_insert_id();', '$idgroup', '$number', '0', 'location', '$url', '', '1', '', '', '', '', '', '', '', '', '', '', '*$key*', '', '', '', '', '', '', '0', '0', '', '0', '', '', '24', '', '0', '0', '', '', '', 'block')"; echo'");    if ($result == true)
         {'
    ;
         echo 
    "echo 'Добавлено';
         }
         else
         {
         echo'ОШИБКА - ';
    echo mysql_errno(
    $db) . "; echo '": " . mysql_error($db) . "\n";
         }
       mysql_close($db);
    ?>'
    ;

      }
       echo 
    '</textarea></form>';
    }
    else
    {

    ?>

    <table><tr><td>
    <form method='post' action=''>
    <textarea name='keys' rows='15' cols='30' placeholder='Ключевики'>первый
    второй
    третий</textarea>
    <textarea name='urls' rows='15' cols='30' placeholder='Урлы'>sait1.ru
    sait2.ru
    sait3.ru</textarea><br><br>
    Позиция и поток на 1 больше чем сейцас в БД! - <input name='poziciya' type='text'><br><br>
    Идентификатор группы - <input name='idgroup' type='text'>
    <br><br><input name='obnovlenie' type='submit' value='отправить' size='70'>
    </form>  
    </tr></td><table>

    <?php
    }
    ?>
    </center>
    всё сделал. Вот так вот на 1 увеличивать получилось

    PHP:
    $number $poziciya++;
     
    Последнее редактирование: 8 окт 2013
  4. BDSG

    BDSG

    Регистр.:
    28 фев 2009
    Сообщения:
    203
    Симпатии:
    109
    в вашем примере $number будет всегда на единицу меньше $poziciya..
    так совпадёт: $number = ++$poziciya;