![]() |
|
Модераторы: skyboy |
![]()
|
|
| jano11 |
|
|||
|
Новичок Профиль Группа: Участник Сообщений: 2 Регистрация: 29.10.2014 Репутация: нет Всего: нет |
Доброго времени суток.
basetube(база) --> w_content(таблица) ---> descs(поле) --> идут ID от 1 до 1500000 Каждый ид содержит в себе информацию по видео, минуты, описание, теги.. и т д Имя поля с описанием title. Как сделать так что бы массово в базе данных добавить в случайном порядке кейворды из файла keywords.txt К примеру в title написано "Super puper sambo clip." в файлике keywords.txt new clip clip 2014 .. . my favorie video Соответственно после запуска скрипта title уже будет такого рода: "Super puper sambo clip. my favorie video" Таким образом нужно 1,5 миллиона описаний подправить, точнее дописать. |
|||
|
||||
| Akina |
|
|||
|
Советчик ![]() ![]() ![]() ![]() Профиль Группа: Модератор Сообщений: 20581 Регистрация: 8.4.2004 Где: Зеленоград Репутация: 106 Всего: 454 |
Загрузить данные из файла в таблицу. Ключ - автоинкремент.
Написать процедуру, которая проходит в цикле по всем ID, для каждого генерит случайное число в диапазоне значений ключей таблицы кейвордов и выполняет апдейт соотв. записи таблицы видеороликов соотв. записью кейворда. Запустить однократно. -------------------- О(б)суждение моих действий - в соответствующей теме, пожалуйста. Или в РМ. И высшая инстанция - Администрация форума. |
|||
|
||||
| jano11 |
|
|||
|
Новичок Профиль Группа: Участник Сообщений: 2 Регистрация: 29.10.2014 Репутация: нет Всего: нет |
Спасибо.
Нашёл скрипт, который меняет одно значение на другое. Кто-нибудь сможет помочь что бы замена была из файла к примеру key.txt, подставлялся в случайном порядке один из кейвордов. <?php // Written by Mark Jackson @ MJDIGITAL // http://www.mjdigital.co.uk/blog // Ищем... $search = 'ЧТО_НУЖНО_ЗАМЕНИТЬ'; // Например: 'www.old-site.ru' // Меняем на... Используется при $queryType = 'replace' $replace = 'НА_ЧТО_ЗАМЕНЯЕМ'; // Например: 'www.new-site.ru' // Настройки базы данных $hostname = "localhost"; $database = "ИМЯ_БАЗЫ_ДАННЫХ"; $username = "ИМЯ_ПОЛЬЗОВАТЕЛЯ_БАЗЫ_ДАННЫХ"; $password = "ПАРОЛЬ_ПОЛЬЗОВАТЕЛЯ_БАЗЫ_ДАННЫХ"; // Варианты значения переменной $queryType 'search' (вывод результатов поиска) или 'replace' (поиск с заменой) $queryType = 'replace'; // Показывать ошибки или нет (true/false) $showErrors = true; ////////////////////////////////////////////////////// // // Код ниже не редактировать // ////////////////////////////////////////////////////// if($showErrors) { error_reporting(E_ALL); ini_set('error_reporting', E_ALL); ini_set('display_errors',1); } $MJCONN = mysql_pconnect($hostname, $username, $password) or trigger_error(mysql_error(),E_USER_ERROR); mysql_select_db($database,$MJCONN); $table_sql = 'SHOW TABLES'; $table_q = mysql_query($table_sql,$MJCONN) or die("Cannot Query DB: ".mysql_error()); $tables_r = mysql_fetch_assoc($table_q); $tables = array(); do{ $tables[] = $tables_r['Tables_in_'.strtolower($database)]; }while($tables_r = mysql_fetch_assoc($table_q)); $use_sql = array(); $rowHeading = ($queryType=='replace') ? 'Replacing \''.$search.'\' with \''.$replace.'\' in \''.$database."'\n\nSTATUS | ROWS AFFECTED | TABLE/FIELD (+ERROR)\n" : 'Searching for \''.$search.'\' in \''.$database."'\n\nSTATUS | ROWS CONTAINING | TABLE/FIELD (+ERROR)\n"; $output = $rowHeading; $summary = ''; foreach($tables as $table) { $field_sql = 'SHOW FIELDS FROM '.$table; $field_q = mysql_query($field_sql,$MJCONN); $field_r = mysql_fetch_assoc($field_q); do { $field = $field_r['Field']; $type = $field_r['Type']; switch(true) { case stristr(strtolower($type),'char'): $typeOK = true; break; case stristr(strtolower($type),'text'): $typeOK = true; break; case stristr(strtolower($type),'blob'): $typeOK = true; break; case stristr(strtolower($field_r['Key']),'pri'): $typeOK = false; break; default: $typeOK = false; break; } if($typeOK) { $handle = $table.'_'.$field; if($queryType=='replace') { $sql[$handle]['sql'] = 'UPDATE '.$table.' SET '.$field.' = REPLACE('.$field.',\''.$search.'\',\''.$replace.'\')'; } else { $sql[$handle]['sql'] = 'SELECT * FROM '.$table.' WHERE '.$field.' REGEXP(\''.$search.'\')'; } $error = false; $query = @mysql_query($sql[$handle]['sql'],$MJCONN) or $error = mysql_error(); $row_count = @mysql_affected_rows() or $row_count = 0; $sql[$handle]['result'] = $query; $sql[$handle]['affected'] = $row_count; $sql[$handle]['error'] = $error; $output .= ($query) ? 'OK ' : '-- '; $output .= ($row_count>0) ? '<strong>'.$row_count.'</strong> ' : '<span style="color:#CCC">'.$row_count.'</span> '; $fieldName = '`'.$table.'`.`'.$field.'`'; $output .= $fieldName; $erTab = str_repeat(' ', (60-strlen($fieldName)) ); $output .= ($error) ? $erTab.'(ERROR: '.$error.')' : ''; $output .= "\n"; } }while($field_r = mysql_fetch_assoc($field_q)); } echo '<pre>'; echo $output."\n"; echo '<pre>'; ?> |
|||
|
||||
| Akina |
|
|||
|
Советчик ![]() ![]() ![]() ![]() Профиль Группа: Модератор Сообщений: 20581 Регистрация: 8.4.2004 Где: Зеленоград Репутация: 106 Всего: 454 |
jano11, ещё б кнопку "Код" нашёл, вообще было бы шоколадненько...
-------------------- О(б)суждение моих действий - в соответствующей теме, пожалуйста. Или в РМ. И высшая инстанция - Администрация форума. |
|||
|
||||
| igorold |
|
||||
![]() Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 557 Регистрация: 22.12.2005 Где: Россия->Урал-& gt;Миасс Репутация: 5 Всего: 17 |
Не, там же написано:
-------------------- ... у семи нянек 14 сисек ... Putin here, Putin there, Putin almost everywhere! |
||||
|
|||||
![]()
|
| 0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей) | |
| 0 Пользователей: | |
| « Предыдущая тема | MySQL | Следующая тема » |
|
|
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности Powered by Invision Power Board(R) 1.3 © 2003 IPS, Inc. |