Поддержка Поиск Результаты поиска для 'auto_increment'

Просмотр 15 результатов — с 91 по 105 (из 107)
    • При установке вордпресс с помощью ISPmanager,выходят вот такие строки:
      WordPress database error: [CREATE command denied to user ‘cdtermo3628’@’hosting1.citydomain.com.ua’ for table ‘wp_users’]
      CREATE TABLE wp_users ( ID bigint(20) unsigned NOT NULL auto_increment, user_login varchar(60) NOT NULL default », user_pass varchar(64) NOT NULL default », user_nicename varchar(50) NOT NULL default », user_email varchar(100) NOT NULL default », user_url varchar(100) NOT NULL default », user_registered datetime NOT NULL default ‘0000-00-00 00:00:00’, user_activation_key varchar(60) NOT NULL default », user_status int(11) NOT NULL default ‘0’, display_name varchar(250) NOT NULL default », PRIMARY KEY (ID), KEY user_login_key (user_login), KEY user_nicename (user_nicename) ) DEFAULT CHARACTER SET utf8

      WordPress database error: [CREATE command denied to user ‘cdtermo3628’@’hosting1.citydomain.com.ua’ for table ‘wp_usermeta’]
      CREATE TABLE wp_usermeta ( umeta_id bigint(20) unsigned NOT NULL auto_increment, user_id bigint(20) unsigned NOT NULL default ‘0’, meta_key varchar(255) default NULL, meta_value longtext, PRIMARY KEY (umeta_id), KEY user_id (user_id), KEY meta_key (meta_key) ) DEFAULT CHARACTER SET utf8

      и тд.

    смотрите в гугле «Как сбросить счетчик AUTO_INCREMENT»
    How to reset AUTO_INCREMENT

    Удалил команду CREATE DATABASE
    Опять ошибка

    — ———————————————————

    — Структура таблицы wp_commentmeta

    CREATE TABLE IF NOT EXISTS wp_commentmeta (
    meta_id bigint( 20 ) unsigned NOT NULL AUTO_INCREMENT ,
    comment_id bigint( 20 ) unsigned NOT NULL DEFAULT ‘0’,
    meta_key varchar( 255 ) DEFAULT NULL ,
    meta_value longtext,
    PRIMARY KEY ( meta_id ) ,
    KEY comment_id ( comment_id ) ,
    KEY meta_key ( meta_key )
    ) ENGINE = MYISAM DEFAULT CHARSET = utf8 AUTO_INCREMENT =11;

    Ответ MySQL:
    #1046 — No database selected

    Итак, проанализировала разные бэкапы в Notepad++. Отчитываюсь 🙂

    Бэкап, по которому восстанавливали был без значков с вопросами. Нашла другой бэкап от 24 мая, он со значками. Вывод — могут бэкапы и со значками создаваться. Но откат на 24 мая не устраивает. В моем случае самое простое решение исправить руками, так как много изменений было, плагины доставляла, форум, бади пресс и т.д. Исправила все записи руками (благо их пока немного). Вот только на будущее хотелось бы найти решение, чтобы каждый раз руками не править.

    После исправления посмотрела в PMA — записи правильные. Создала бэкап плагином WordPress Database Backup и через cPanel. Вот что получилось.

    Бэкап плагина сохраняет записи со значками, да и сами записи удобно структурируются по строчке на запись. Вот, например, структура таблицы:

    CREATE TABLE <code>wp_commentmeta</code> (
      <code>meta_id</code> bigint(20) unsigned NOT NULL auto_increment,
      <code>comment_id</code> bigint(20) unsigned NOT NULL default '0',
      <code>meta_key</code> varchar(255) default NULL,
      <code>meta_value</code> longtext,
      PRIMARY KEY  (<code>meta_id</code>),
      KEY <code>comment_id</code> (<code>comment_id</code>),
      KEY <code>meta_key</code> (<code>meta_key</code>)
    ) ENGINE=MyISAM AUTO_INCREMENT=52 DEFAULT CHARSET=utf8 ;

    Нет только слов IF NOT EXISTS.
    С другой стороны, в бэкапе, созданном плагином нет ничего похожего на /*!40101 SET NAMES utf8 */;

    Бэкап, созданный Мастером резервного копирования из cPanel содержит все записи (включая страницы, активность, документы, созданные плагином для бадипресс и т.д.) в одну строку. Все записи без значков, с вопросами. Однако в этом бэкапе есть строка
    /*!40101 SET NAMES utf8 */;
    Вот, например, как выглядит таблица:

    DROP TABLE IF EXISTS <code>wp_commentmeta</code>;
    /*!40101 SET @saved_cs_client     = @@character_set_client */;
    /*!40101 SET character_set_client = utf8 */;
    CREATE TABLE <code>wp_commentmeta</code> (
      <code>meta_id</code> bigint(20) unsigned NOT NULL auto_increment,
      <code>comment_id</code> bigint(20) unsigned NOT NULL default '0',
      <code>meta_key</code> varchar(255) default NULL,
      <code>meta_value</code> longtext,
      PRIMARY KEY  (<code>meta_id</code>),
      KEY <code>comment_id</code> (<code>comment_id</code>),
      KEY <code>meta_key</code> (<code>meta_key</code>)
    ) ENGINE=MyISAM AUTO_INCREMENT=52 DEFAULT CHARSET=utf8;
    /*!40101 SET character_set_client = @saved_cs_client */;

    Также в начале бэкапфайла есть такой раздел:

    /*!40101 SET @OLD_CHARACTER_SET_CLIENT=@@CHARACTER_SET_CLIENT */;
    /*!40101 SET @OLD_CHARACTER_SET_RESULTS=@@CHARACTER_SET_RESULTS */;
    /*!40101 SET @OLD_COLLATION_CONNECTION=@@COLLATION_CONNECTION */;
    /*!40101 SET NAMES cp1251 */;
    /*!40103 SET @OLD_TIME_ZONE=@@TIME_ZONE */;
    /*!40103 SET TIME_ZONE='+00:00' */;
    /*!40014 SET @OLD_UNIQUE_CHECKS=@@UNIQUE_CHECKS, UNIQUE_CHECKS=0 */;
    /*!40014 SET @OLD_FOREIGN_KEY_CHECKS=@@FOREIGN_KEY_CHECKS, FOREIGN_KEY_CHECKS=0 */;
    /*!40101 SET @OLD_SQL_MODE=@@SQL_MODE, SQL_MODE='NO_AUTO_VALUE_ON_ZERO' */;
    /*!40111 SET @OLD_SQL_NOTES=@@SQL_NOTES, SQL_NOTES=0 */;

    В общем, жду ваш вердикт на тему «Как предохраняться от замены аксанов на вопросы». Также, скажите, пожалуйста, чем чревато отсутствие строки /*!40101 SET NAMES utf8 */;

    Попробуй создать эту таблицу, вероятно что то не получилось у mysql-аккаунта который использует wordpress, проверь права

    CREATE TABLE wp_wpsc_product_list (
    id bigint(20) unsigned NOT NULL AUTO_INCREMENT,
    name text NOT NULL,
    description longtext NOT NULL,
    additional_description longtext NOT NULL,
    price decimal(11,2) NOT NULL DEFAULT ‘0.00’,
    weight float NOT NULL DEFAULT ‘0’,
    weight_unit varchar(10) NOT NULL DEFAULT »,
    pnp decimal(11,2) NOT NULL DEFAULT ‘0.00’,
    international_pnp decimal(11,2) NOT NULL DEFAULT ‘0.00’,
    file bigint(20) unsigned NOT NULL DEFAULT ‘0’,
    image bigint(20) unsigned DEFAULT NULL,
    quantity_limited varchar(1) NOT NULL DEFAULT »,
    quantity int(10) unsigned NOT NULL DEFAULT ‘0’,
    special varchar(1) NOT NULL DEFAULT ‘0’,
    special_price decimal(11,2) NOT NULL DEFAULT ‘0.00’,
    display_frontpage varchar(1) NOT NULL DEFAULT ‘0’,
    notax varchar(1) NOT NULL DEFAULT ‘0’,
    publish varchar(1) NOT NULL DEFAULT ‘1’,
    active varchar(1) NOT NULL DEFAULT ‘1’,
    donation varchar(1) NOT NULL DEFAULT ‘0’,
    no_shipping varchar(1) NOT NULL DEFAULT ‘0’,
    thumbnail_image text,
    thumbnail_state int(11) NOT NULL DEFAULT ‘0’,
    date_added timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP,
    PRIMARY KEY (id)
    ) ENGINE=MyISAM DEFAULT CHARSET=utf8

    а там вроде все нормально. вот опять попробовала данные в другую базу залить выдает
    CREATE TABLE IF NOT EXISTS wp_commentmeta (
    meta_id bigint( 20 ) unsigned NOT NULL AUTO_INCREMENT ,
    comment_id bigint( 20 ) unsigned NOT NULL DEFAULT ‘0’,
    meta_key varchar( 255 ) DEFAULT NULL ,
    meta_value longtext,
    PRIMARY KEY ( meta_id ) ,
    KEY comment_id ( comment_id ) ,
    KEY meta_key ( meta_key )
    ) ENGINE = MYISAM DEFAULT CHARSET = utf8 AUTO_INCREMENT =3;

    А я в этом всем, если не чайник, то кофейник точно.

    правильно.. if(empty($ppbv_table)) не помогает..
    действительно, более полный код:

    global $wpdb; // вызываем глобальные переменные для работы с функцией
    $ppbv_tablename = $wpdb->prefix.'popular_by_views'; // совмещаем префикс и название таблицы
    
    function ppbv_create_table(){
        global $wpdb, $ppbv_tablename; // называя global, мы можем использовать эти переменные  в  функции
        $ppbv_table = $wpdb->get_results("SHOW TABLES LIKE '{$ppbv_tablename}'" , ARRAY_N); // если нет результатов, возвращает ноль
        if(empty($ppbv_table)){ // если таблиц нет, то:
            $create_table_sql = "CREATE TABLE {$ppbv_tablename} (
                id BIGINT(50) NOT NULL AUTO_INCREMENT,
                post_id VARCHAR(255) NOT NULL,
                views BIGINT(50) NOT NULL,
                PRIMARY KEY (id),
                UNIQUE (id)
            );"; // осторожнее с SQL-синтаксисом, он очень чувствителен)
            $wpdb->query($create_table_sql); // запускаем SQL запрос к БД
        }
    }
    register_activation_hook(__FILE__,'ppbv_create_table'); // запуск функции 'ppbv_create_table' во время активации плагина
    
     function ppbv_page_viewed(){
        if(is_single() && !is_page()){ // только при запуске постов, а не страниц блога
            global $wpdb, $post, $ppbv_tablename; // вызываем глобальные переменные для работы с функцией   в  функции
            $wpdb->flush(); // очищает буфер БД
            $data = $wpdb->get_row("SELECT * FROM {$ppbv_tablename} WHERE post_id='{$post->ID}'", ARRAY_A); // проверяет данные из столбца, который содержит post ID
            if(!is_null($data)){ // если ячейка с  данными есть
                $new_views = $data['views'] + 1; // увеличиваем количество просмотров на 1
                $wpdb->query("UPDATE {$ppbv_tablename} SET views='{$new_views}' WHERE post_id='{$post->ID}';"); // обновляем данные с учётом нового просмотра
                $wpdb->flush(); // очищает буфер БД
            }
            else { // если ещё нет ячейки с данными (тоесть, пока  ни одного просмотра)
                $wpdb->query("INSERT INTO {$ppbv_tablename} (post_id, views) VALUES ('{$post->ID}','1');"); // добавляем ячейку , отсчёт просмотров  начинаетсяс 1
                $wpdb->flush(); // очищает буфер БД
            }
        }
    }
    add_action('wp_head','ppbv_page_viewed'); // добавляет ppbv_page_viewed к wp_head-счётчику

    это код плагина, который я хочу сделать не-плагином

    ну а весь код:

    ifolder.ru/20860440

    • Всем привет
      Какой-то косяк, не пойму.

      Вобщем добавляю код , который создаёт новую таблицу, а потом уже сортирует данные, полученные из неё.

      Значит, пишу :
      Код:

      global $wpdb;
      $ppbv_tablename = $wpdb->prefix.'popular_by_views';
      function ppbv_create_table(){
          global $wpdb, $ppbv_tablename;
          $ppbv_table = $wpdb->get_results("SHOW TABLES LIKE '{$ppbv_tablename}'" , ARRAY_N);
          if(is_null($ppbv_table)){
              $create_table_sql = "CREATE TABLE {$ppbv_tablename} (
                  id BIGINT(50) NOT NULL AUTO_INCREMENT,
                  post_id VARCHAR(255) NOT NULL,
                  views BIGINT(50) NOT NULL,
                  PRIMARY KEY (id),
                  UNIQUE (id)
              );";
              $wpdb->query($create_table_sql);
              $wpdb->flush();
          }

      Потом как-бы тело функции идёт, но ничего не появляется.. Начал разбираться, зашёл в БД, к которой WP подсоединён, и не вижу там новой таблицы..
      Помогите найти косяк..

    еще возможно что таблица в базе данных не создастся автоматом, поэтому потребуется зайти в phpMyAdmin в бд твоего блога и выполнить такой SQL-запрос

    CREATE TABLE wp_linkclicks (
    link_id INT NOT NULL AUTO_INCREMENT ,
    link_url TEXT NOT NULL ,
    link_clicks INT NOT NULL ,
    link_date DATETIME NOT NULL ,
    link_title TEXT NOT NULL ,
    UNIQUE (
    link_id
    )
    );

    этот запрос создаст таблицу в базе данных и в нее будет заносится вся информация о кликах на ссылках

    • Пишу плагин под сапу, с БД&API имею дело первый раз. Объясните почему данный код не создаёт в БД таблицу с префиксом wp_madsape.

      <?php
      /*
      Plugin Name: Mad_Sape
      Plugin URI: http://страница_с_описанием_плагина_и_его_обновлений
      Description: Установка кода Sape.
      Version: 1.0
      Author: Yuriy 'Mad_Man' Lagodich
      Author URI: http://d-o-b.ru/
      */
      /*  Copyright 2010 Lagodich Yuriy Vladimirovich (email: admin@m7team.ru)
      
          This program is free software; you can redistribute it and/or modify
          it under the terms of the GNU General Public License as published by
          the Free Software Foundation; either version 2 of the License, or
          (at your option) any later version.
      
          This program is distributed in the hope that it will be useful,
          but WITHOUT ANY WARRANTY; without even the implied warranty of
          MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
          GNU General Public License for more details.
      
          You should have received a copy of the GNU General Public License
          along with this program; if not, write to the Free Software
          Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA  02110-1301  USA
      */
      
      global $jal_db_version;
      $jal_db_version = "1.0";
      register_activation_hook(__FILE__,'jal_install');
      
      function jal_install () {
         global $wpdb;
         global $jal_db_version;
      
         $table_name = $wpdb->prefix . "madsape";
         if($wpdb->get_var("show tables like '$table_name'") != $table_name) {
      
            $sql = "CREATE TABLE " . $table_name . " (
      	  id mediumint(9) NOT NULL AUTO_INCREMENT,
      	  time bigint(11) DEFAULT '0' NOT NULL,
      	  name tinytext NOT NULL,
      	  text text NOT NULL,
      	  url VARCHAR(55) NOT NULL,
      	  UNIQUE KEY id (id)
      	);";
      	     require_once(ABSPATH . 'wp-admin/includes/upgrade.php');
            dbDelta($sql);
      
            $rows_affected = $wpdb->insert( $table_name, array( 'time' => current_time('mysql'), 'name' => $welcome_name, 'text' => $welcome_text ) );
      
            add_option("jal_db_version", $jal_db_version);
      }
      }
      
      add_action('admin_menu', 'sape_menu');
      
      function sape_menu() {
          add_submenu_page('options-general.php'
                           , 'Mad_Sape'
                           , 'Mad_Sape'
                           , 'edit_plugins'
                           , __FILE__
                           , 'callme');
      add_action('admin_menu', 'callme');
      }
      function callme() {
      include 'wp_area.php';
      add_action('admin_menu', 'footer');
      }
      function footer() {
      add_action('wp_footer', 'sape_code');
      }
      function sape_code() {
      include 'sape.php';
      }
      ?>

    Модератор Yuri

    (@yube)

    где можно почитать про порядок назначения ID страницам в WP

    В любой доке на mySql в части атрибута auto_increment. В таблицу posts попадают посты, стат.страницы, их ревизии и аттачи.

    и что из себя представляют ярлыки?

    Ярлыки (слаги, slag) представляют собой прошедшие «санитарную» обработку названия (титлы) сущностей (постов, стат.страниц, рубрик, меток). Обработка заключается в удалении недопустимых в URL символов. Если установлен плагин транслитерации (rus-to-lat, cyr2lat), то русские буквы будут транслитерированы вместо обработки urlencode. Слаги используются движком для обработки «красивых» ссылок (ЧПУ).

    Ну вот это уже ближе к теме )
    Скажу что AUTO_INCREMENT я уже отключал,
    но только без снятия UNSIGNED толку не было (
    Спасибо.

    Модератор Sergey Biryukov

    (@sergeybiryukov)

    Live and Learn

    Тип данных можно поменять, например, на VARCHAR, если убрать атрибуты UNSIGNED и AUTO_INCREMENT, имеющие смысл только для числовых данных.

    • При помощи плагина отключил версии (ревизии).
      Тем не менее, то и дело происходит автосохранение редактируемого поста.
      В ревизиях эти сэйвы не отображаются, ибо сохранены как дочернии записи.
      А база данных по-прежнему раздувается.
      Кроме того, сбивается число auto_increment.

      Как отключить функцию автосохранения вообще?

      Вопрос этот однажды уже задавался на форуме:
      http://ru.forums.wordpress.org/topic/Как-отключить-автосохранение?replies=2
      Но предложенное решение с современными версиями WordPress не работает.

    Автор anyuta

    (@anyuta)

    Все исправили
    Проблема была в базе данных

    После переноса стало
    AUTO_INCREMENT=274877907701

    Вместо AUTO_INCREMENT=678

    админ поменял и заработало

Просмотр 15 результатов — с 91 по 105 (из 107)