За последние 24 часа нас посетили 20184 программиста и 1710 роботов. Сейчас ищут 1375 программистов ...

сменить id

Тема в разделе "PHP для новичков", создана пользователем egyar, 31 май 2011.

  1. egyar

    egyar Активный пользователь

    С нами с:
    19 май 2011
    Сообщения:
    9
    Симпатии:
    0
    есть файл с новостями к примеру такими:
    [sql]INSERT INTO `news` VALUES (95, 17, 113, '2011-05-25 01:44:21', 'Skype принадлежит Microsoft?', 'Skype-prinadlezhit-Microsoft', 'Microsoft покупает сервис IP-телефонии и видеосвязи Skype за 8,5 миллиардов долларов.', '<img align="left" src="{DOWNLOAD_IMAGES_DIR_HTTP}1305026159_888892628.jpg" alt=''Skype принадлежит Microsoft?'' title=''Skype принадлежит Microsoft?'' />Участие в переговорах принимал лично генеральный директор компании Стив Балмер. При этом сделка по покупке Skype станет крупнейшей в истории компании. Ранее крупнейшей сделкой для Microsoft была покупка в 2007 году рекламной фирмы aQuantative за 6 миллиардов долларов.<br /><br />Сделка уже заключена и будет обнародована сегодня 10 мая. Сумма сделки составит около 8,5 миллиарда долларов с учетом долга Skype. Непосредственные акционеры Skype получат от 7 до 8 миллиардов долларов.<br /><br />Skype будет добавлен в семейство интернет-сервисов Windows Live, так сообщают в Microsoft. Skype на сегодняшний день работает в виде отдельного приложения для компьютеров и мобильных устройств.<br /><br />В августе 2010 года было объявлено, что компания Cisco была готова купить Skype за 5 миллиардов долларов. Но сделка не состоялась.<br />', 'checked', 'http://www.sait.ru/7985-skype-prinadlezhit-microsoft.html', '', 'http://sait.ru/7985-skype-prinadlezhit-microsoft.html', '1305026159_888892628.jpg', 'Skype принадлежит Microsoft?', '', '', '1113');
    INSERT INTO `news` VALUES (95, 17, 113, '2011-05-25 01:44:21', 'Skype принадлежит Microsoft?', 'Skype-prinadlezhit-Microsoft', 'Microsoft покупает сервис IP-телефонии и видеосвязи Skype за 8,5 миллиардов долларов.', '<img align="left" src="{DOWNLOAD_IMAGES_DIR_HTTP}1305026159_888892628.jpg" alt=''Skype принадлежит Microsoft?'' title=''Skype принадлежит Microsoft?'' />Участие в переговорах принимал лично генеральный директор компании Стив Балмер. При этом сделка по покупке Skype станет крупнейшей в истории компании. Ранее крупнейшей сделкой для Microsoft была покупка в 2007 году рекламной фирмы aQuantative за 6 миллиардов долларов.<br /><br />Сделка уже заключена и будет обнародована сегодня 10 мая. Сумма сделки составит около 8,5 миллиарда долларов с учетом долга Skype. Непосредственные акционеры Skype получат от 7 до 8 миллиардов долларов.<br /><br />Skype будет добавлен в семейство интернет-сервисов Windows Live, так сообщают в Microsoft. Skype на сегодняшний день работает в виде отдельного приложения для компьютеров и мобильных устройств.<br /><br />В августе 2010 года было объявлено, что компания Cisco была готова купить Skype за 5 миллиардов долларов. Но сделка не состоялась.<br />', 'checked', 'http://www.sait.ru/7985-skype-prinadlezhit-microsoft.html', '', 'http://sait.ru/7985-skype-prinadlezhit-microsoft.html', '1305026159_888892628.jpg', 'Skype принадлежит Microsoft?', '', '', '1113');
    INSERT INTO `news` VALUES (96, 17, 113, '2011-05-25 01:44:21', 'Skype принадлежит Microsoft?', 'Skype-prinadlezhit-Microsoft', 'Microsoft покупает сервис IP-телефонии и видеосвязи Skype за 8,5 миллиардов долларов.', '<img align="left" src="{DOWNLOAD_IMAGES_DIR_HTTP}1305026159_888892628.jpg" alt=''Skype принадлежит Microsoft?'' title=''Skype принадлежит Microsoft?'' />Участие в переговорах принимал лично генеральный директор компании Стив Балмер. При этом сделка по покупке Skype станет крупнейшей в истории компании. Ранее крупнейшей сделкой для Microsoft была покупка в 2007 году рекламной фирмы aQuantative за 6 миллиардов долларов.<br /><br />Сделка уже заключена и будет обнародована сегодня 10 мая. Сумма сделки составит около 8,5 миллиарда долларов с учетом долга Skype. Непосредственные акционеры Skype получат от 7 до 8 миллиардов долларов.<br /><br />Skype будет добавлен в семейство интернет-сервисов Windows Live, так сообщают в Microsoft. Skype на сегодняшний день работает в виде отдельного приложения для компьютеров и мобильных устройств.<br /><br />В августе 2010 года было объявлено, что компания Cisco была готова купить Skype за 5 миллиардов долларов. Но сделка не состоялась.<br />', 'checked', 'http://www.sait.ru/7985-skype-prinadlezhit-microsoft.html', '', 'http://sait.ru/7985-skype-prinadlezhit-microsoft.html', '1305026159_888892628.jpg', 'Skype принадлежит Microsoft?', '', '', '1113');[/sql]
    как сменить номер стоящий в первой колонке(95,96),и начать нумеровать с 1.
    что бы получилось там.
    [sql]INSERT INTO `news` VALUES (1, 17, 113, '2011-05-25 01:44:21', 'Skype принадлежит Microsoft?', 'Skype-prinadlezhit-Microsoft', 'Microsoft покупает сервис IP-телефонии и видеосвязи Skype за 8,5 миллиардов долларов.', '<img align="left" src="{DOWNLOAD_IMAGES_DIR_HTTP}1305026159_888892628.jpg" alt=''Skype принадлежит Microsoft?'' title=''Skype принадлежит Microsoft?'' />Участие в переговорах принимал лично генеральный директор компании Стив Балмер. При этом сделка по покупке Skype станет крупнейшей в истории компании. Ранее крупнейшей сделкой для Microsoft была покупка в 2007 году рекламной фирмы aQuantative за 6 миллиардов долларов.<br /><br />Сделка уже заключена и будет обнародована сегодня 10 мая. Сумма сделки составит около 8,5 миллиарда долларов с учетом долга Skype. Непосредственные акционеры Skype получат от 7 до 8 миллиардов долларов.<br /><br />Skype будет добавлен в семейство интернет-сервисов Windows Live, так сообщают в Microsoft. Skype на сегодняшний день работает в виде отдельного приложения для компьютеров и мобильных устройств.<br /><br />В августе 2010 года было объявлено, что компания Cisco была готова купить Skype за 5 миллиардов долларов. Но сделка не состоялась.<br />', 'checked', 'http://www.sait.ru/7985-skype-prinadlezhit-microsoft.html', '', 'http://sait.ru/7985-skype-prinadlezhit-microsoft.html', '1305026159_888892628.jpg', 'Skype принадлежит Microsoft?', '', '', '1113');
    INSERT INTO `news` VALUES (2, 17, 113, '2011-05-25 01:44:21', 'Skype принадлежит Microsoft?', 'Skype-prinadlezhit-Microsoft', 'Microsoft покупает сервис IP-телефонии и видеосвязи Skype за 8,5 миллиардов долларов.', '<img align="left" src="{DOWNLOAD_IMAGES_DIR_HTTP}1305026159_888892628.jpg" alt=''Skype принадлежит Microsoft?'' title=''Skype принадлежит Microsoft?'' />Участие в переговорах принимал лично генеральный директор компании Стив Балмер. При этом сделка по покупке Skype станет крупнейшей в истории компании. Ранее крупнейшей сделкой для Microsoft была покупка в 2007 году рекламной фирмы aQuantative за 6 миллиардов долларов.<br /><br />Сделка уже заключена и будет обнародована сегодня 10 мая. Сумма сделки составит около 8,5 миллиарда долларов с учетом долга Skype. Непосредственные акционеры Skype получат от 7 до 8 миллиардов долларов.<br /><br />Skype будет добавлен в семейство интернет-сервисов Windows Live, так сообщают в Microsoft. Skype на сегодняшний день работает в виде отдельного приложения для компьютеров и мобильных устройств.<br /><br />В августе 2010 года было объявлено, что компания Cisco была готова купить Skype за 5 миллиардов долларов. Но сделка не состоялась.<br />', 'checked', 'http://www.sait.ru/7985-skype-prinadlezhit-microsoft.html', '', 'http://sait.ru/7985-skype-prinadlezhit-microsoft.html', '1305026159_888892628.jpg', 'Skype принадлежит Microsoft?', '', '', '1113');
    INSERT INTO `news` VALUES (3, 17, 113, '2011-05-25 01:44:21', 'Skype принадлежит Microsoft?', 'Skype-prinadlezhit-Microsoft', 'Microsoft покупает сервис IP-телефонии и видеосвязи Skype за 8,5 миллиардов долларов.', '<img align="left" src="{DOWNLOAD_IMAGES_DIR_HTTP}1305026159_888892628.jpg" alt=''Skype принадлежит Microsoft?'' title=''Skype принадлежит Microsoft?'' />Участие в переговорах принимал лично генеральный директор компании Стив Балмер. При этом сделка по покупке Skype станет крупнейшей в истории компании. Ранее крупнейшей сделкой для Microsoft была покупка в 2007 году рекламной фирмы aQuantative за 6 миллиардов долларов.<br /><br />Сделка уже заключена и будет обнародована сегодня 10 мая. Сумма сделки составит около 8,5 миллиарда долларов с учетом долга Skype. Непосредственные акционеры Skype получат от 7 до 8 миллиардов долларов.<br /><br />Skype будет добавлен в семейство интернет-сервисов Windows Live, так сообщают в Microsoft. Skype на сегодняшний день работает в виде отдельного приложения для компьютеров и мобильных устройств.<br /><br />В августе 2010 года было объявлено, что компания Cisco была готова купить Skype за 5 миллиардов долларов. Но сделка не состоялась.<br />', 'checked', 'http://www.sait.ru/7985-skype-prinadlezhit-microsoft.html', '', 'http://sait.ru/7985-skype-prinadlezhit-microsoft.html', '1305026159_888892628.jpg', 'Skype принадлежит Microsoft?', '', '', '1113');[/sql]
     
  2. Alex_pac

    Alex_pac Активный пользователь

    С нами с:
    11 апр 2011
    Сообщения:
    285
    Симпатии:
    1
    Адрес:
    Россия, Тольятти
    mysql auto_increment
     
  3. egyar

    egyar Активный пользователь

    С нами с:
    19 май 2011
    Сообщения:
    9
    Симпатии:
    0
    я беру строки из файла,а не из базы.
     
  4. karakh

    karakh Активный пользователь

    С нами с:
    11 дек 2007
    Сообщения:
    1.344
    Симпатии:
    0
    ну, отлавливай регуляркой нужное значение (первое число после открывающей скобки, как я понимаю), отнимай от него 94 и записывай обратно.
     
  5. [vs]

    [vs] Суперстар
    Команда форума Модератор

    С нами с:
    27 сен 2007
    Сообщения:
    10.559
    Симпатии:
    632
    надо просто убрать оттуда число вообще, а перед VALUES перечислить список полей, которые записываешь.
     
  6. Gromo

    Gromo Активный пользователь

    С нами с:
    24 май 2010
    Сообщения:
    2.786
    Симпатии:
    2
    Адрес:
    Ташкент
    egyar
    если поле айди - автоинкрементное, то туда можно подавать НУЛЛ, т.е. задача сводится к нахождению и замене подстроки с помощью регулярки
     
  7. egyar

    egyar Активный пользователь

    С нами с:
    19 май 2011
    Сообщения:
    9
    Симпатии:
    0
    вот это меня и интересует, как правильно составить регулярку что бы заменять это число.
     
  8. Gromo

    Gromo Активный пользователь

    С нами с:
    24 май 2010
    Сообщения:
    2.786
    Симпатии:
    2
    Адрес:
    Ташкент
    egyar

    элементарно

    PHP:
    1. <?php
    2.  
    3. $text = <<<TEXT
    4.  INSERT INTO `news` VALUES (95, 17, 113, '2011-05-25 01:44:21', 'Skype принадлежит Microsoft?', '1113');
    5.  INSERT INTO `news` VALUES (95, 17, 113, '2011-05-25 01:44:21', 'Skype принадлежит Microsoft?', '1113');
    6.  INSERT INTO `news` VALUES (96, 17, 113, '2011-05-25 01:44:21', 'Skype принадлежит Microsoft?', '1113');
    7. TEXT;
    8. $text = preg_replace('#\s+VALUES\s+\(\d+,#sUi', ' VALUES (NULL,', $text);
    9. echo '<pre>'.htmlspecialchars($text).'</pre>';
    10.  
    11. ?>