[sql] Вопросы по БД

Discussion in 'PHP' started by FraiDex, 25 Feb 2008.

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

    qW1zer Member

    Joined:
    24 Aug 2009
    Messages:
    129
    Likes Received:
    15
    Reputations:
    5
    $query =mysql_query("INSERT INTO `имя_таблицы_в_базе` (`имя_формы1`,`имя_формы_2`,`3`) values (null,'мия','значение')
    то есть так это да?Ну в последнем значения форм,это я уже понял!Или там ид,имя формы и поле?Не совсем просто понял
    А как вообще подключится и создать таблицу,той же php функцией!
     
  2. diGriz

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

    Joined:
    11 Oct 2006
    Messages:
    138
    Likes Received:
    82
    Reputations:
    6
    $query =mysql_query("INSERT INTO `имя_таблицы_в_базе` (`столбец(id)`,`cтолбец(name)`,`3`) values (null,'мия','значение')

    Простой пример с добавлением данных в бд.
    PHP:
    <?php
    //подключаешься к БД
    $dblocation="localhost";
    $dbname="mdb";
    $dbuser="root";
    $dbpassword="";
    $db_connect mysql_connect($dblocation,$dbuser,$dbpassword);
    $db_select mysql_select_db($dbname,$db_connect);
    $login =$_POST['login']; //данные с формы
    $password =$_POST['password'];
    $userAdd mysql_query("INSERT INTO 
                                        users (login,password) 
                            VALUES
                                        ('
    $login', '$password'");
    ?>
    Ссылка по теме:
    http://php.su/mysql/?functions
     
    #782 diGriz, 11 Oct 2009
    Last edited: 11 Oct 2009
  3. qW1zer

    qW1zer Member

    Joined:
    24 Aug 2009
    Messages:
    129
    Likes Received:
    15
    Reputations:
    5
    diGrizСпасибо с этим выручил!
    И последний на сегодня вопросец,как теперь вытащить из базы эти же логин и пасс?
    То есть к примеру вывести их в переменную $db_login и $db_pass!
    Очень выручили
     
  4. diGriz

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

    Joined:
    11 Oct 2006
    Messages:
    138
    Likes Received:
    82
    Reputations:
    6
    Например так:
    PHP:
    $query mysql_query("SELECT login, password FROM users WHERE login = '$login' AND password = '$password'");
    $result mysql_fetch_array($query);
    echo 
    $result['login'];
     
    #784 diGriz, 11 Oct 2009
    Last edited: 11 Oct 2009
  5. qW1zer

    qW1zer Member

    Joined:
    24 Aug 2009
    Messages:
    129
    Likes Received:
    15
    Reputations:
    5
    Спасибо,этот код выведет как я понял все из поля логин?Ну если у меня в таблице будет логин1 логин2 и т.д!Как будет тогда?
     
  6. diGriz

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

    Joined:
    11 Oct 2006
    Messages:
    138
    Likes Received:
    82
    Reputations:
    6
    Вот так:
    PHP:
    $query mysql_query("SELECT * FROM users"); 
    while(
    $result mysql_fetch_array($query)) {
        echo 
    $result['login']."<br />";

     
  7. qW1zer

    qW1zer Member

    Joined:
    24 Aug 2009
    Messages:
    129
    Likes Received:
    15
    Reputations:
    5
    Все,огромное человеческое спасибо!
     
  8. harom

    harom New Member

    Joined:
    15 Jan 2009
    Messages:
    25
    Likes Received:
    0
    Reputations:
    0
    экранировать код с youtube.com

    нужно проэкранировать код вставки видео с youtube.com .

    Код в формате html заносится в базу
    чем лучше сделать

    (скрипт самописный)
     
  9. mff

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

    Joined:
    12 Mar 2008
    Messages:
    2,074
    Likes Received:
    701
    Reputations:
    227
    Поменять "site.ru/forum" на "forum.site.ru" во всех сообщениях

    Помогите с запросом :)
     
  10. krypt3r

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

    Joined:
    27 Apr 2007
    Messages:
    1,507
    Likes Received:
    389
    Reputations:
    101
    Один из способов
    Code:
    UPDATE t1 SET url = REPLACE(url, 'site.ru/forum', 'forum.site.ru') WHERE INSTR(url, 'site.ru/forum') > 0;
    
     
    1 person likes this.
  11. mff

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

    Joined:
    12 Mar 2008
    Messages:
    2,074
    Likes Received:
    701
    Reputations:
    227
    krypt3r, мне нужно в базе данных во всех сообщениях булки поменять через phpmyadmin
     
  12. krypt3r

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

    Joined:
    27 Apr 2007
    Messages:
    1,507
    Likes Received:
    389
    Reputations:
    101
    А какая разница-то? Под рукой булки нет, а на примере IPB будет
    Code:
    UPDATE ibf_posts SET post = REPLACE(post, 'site.ru/forum', 'forum.site.ru') WHERE INSTR(post, 'site.ru/forum') > 0;
    
     
    1 person likes this.
  13. mff

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

    Joined:
    12 Mar 2008
    Messages:
    2,074
    Likes Received:
    701
    Reputations:
    227
    что такое post?
     
  14. [dword]

    [dword] Elder - Старейшина

    Joined:
    11 Apr 2007
    Messages:
    109
    Likes Received:
    74
    Reputations:
    40
    post - это поле.

    Для vBulletin это будет выглядеть так
    Code:
    UPDATE forum_post SET pagetext = REPLACE(pagetext, 'site.ru/forum', 'forum.site.ru') WHERE INSTR(pagetext, 'site.ru/forum') > 0;
    
    forum_post - название таблицы (forum_ - префикс, по дефолту его нет.)
    pagetext - название поля
     
    #794 [dword], 15 Oct 2009
    Last edited: 15 Oct 2009
    2 people like this.
  15. M@ZAX@KEP

    M@ZAX@KEP Member

    Joined:
    11 Jun 2009
    Messages:
    83
    Likes Received:
    23
    Reputations:
    0
    У меня проблемы с добавлением в базу русского текста.

    При установке и настройке SQL-сервера я выбрал кодировку cp-1251 (кириллица кароче), в файле my.ini прописал в блоке [client] вот такое:
    (всё правильно, раз 5 проверял :D) Далее в блок [mysqld] вбацал:
    Тобишь по идее кириллица должна работать.
    Поехали:
    Code:
    USE test;
    CREATE TABLE `news` (
      `id` int(11) NOT NULL default '0',
      `date` varchar(8) NOT NULL default '',
      `time` varchar(7) NOT NULL default '',
      `caption` varchar(50) NOT NULL default '',
      `text` text NOT NULL,
      `avtor` varchar(50) NOT NULL default ''
    ) ENGINE=MyISAM DEFAULT CHARSET=cp1251;
    
    INSERT INTO `news` VALUES (1, '23/03/07', '12:30', 'Здравствуй вася :)', 'Бла-бла-бал :)\r\nи прочий ненужный текст... :P', 'MX');
    INSERT INTO `news` VALUES (2, '24/03/07', '11:10', 'А русский не робит', 'А вот кириллица нифига не отображаццо\r\nВыглядит как аброкадабра просто((', 'MX');
    
    Всё робит нормально, но кириллические символы заносятся в БД неправильно. Они начинают правильно отображаться на странице только если поставить кодировку cp866! То есть текст почему-то заносится в базу не в cp-1251, а в долбаном cp866! :confused: Подскажите, пожалуйста как это исправить и что именно я сделал нитаг? :(
     
  16. Patronik

    Patronik Member

    Joined:
    16 Mar 2009
    Messages:
    111
    Likes Received:
    12
    Reputations:
    0
    файли sql ето бинарный тип даных, Mysql может перекодировать в любую кодировку.
    Попробуй поставить в файле с подключением к серверу поле подключения две строки
    $sqlencod = "set names cp1251";
    mysql_query($sqlencod);
    и сохрани, должно помочь.
     
    1 person likes this.
  17. Doom123

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

    Joined:
    11 Nov 2006
    Messages:
    749
    Likes Received:
    244
    Reputations:
    22
    Почему при таком запросе берётся только одна запись подходящее под условие `ankets`.`order_id` = `posred`.`id` а не все ?

    Code:
    UPDATE `ankets`,`posred` 
    SET `priority` = CASE WHEN `tp` != "-1" AND `balance` >= `tp` 
       THEN `tp` WHEN `priority` != 0 AND `balance` < `priority`  
       THEN 0 ELSE `priority` END,
    `balance` =  CASE WHEN `balance` >= `tp` AND `tp` != "-1" 
       THEN `balance` - `tp` WHEN `priority` != 0  
       THEN `balance` - `priority` ELSE `balance` END ,`tp` = "-1" 
    WHERE `ankets`.`order_id` = `posred`.`id`
    
     
  18. Roston

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

    Joined:
    31 Jul 2008
    Messages:
    337
    Likes Received:
    104
    Reputations:
    8
    Драсте
    Мне нужно создать БД sqlite. Пробовал програмкой SQLite expert. В базе даных всего одна таблица и два поля id и text. Собсно когда пытаюсь приконектиццо к ней выдает такую ошибку
    Code:
    arning: sqlite_open() [function.sqlite-open]: file is encrypted or is not a database in Z:\home\sql\www\sqnews.php5 on line 6
    
    Warning: sqlite_query() expects parameter 1 to be resource, string given in Z:\home\sql\www\sqnews.php5 on line 10
    
    Warning: sqlite_fetch_array() expects parameter 1 to be resource, null given in Z:\home\sql\www\sqnews.php5 on line 11
    Помогайте плз
     
  19. ZEXEL

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

    Joined:
    7 Jan 2008
    Messages:
    351
    Likes Received:
    193
    Reputations:
    3
    Есть таблица hack, существует поле count которое равняеться 1
    Как одним запросом делать что бы count увеличивалось на один каждым запросом !
     
  20. L I G A

    L I G A Banned

    Joined:
    27 Jul 2008
    Messages:
    482
    Likes Received:
    380
    Reputations:
    49
    Code:
    UPDATE `table`SET count=count+1 
    я правильно понял?
     
    3 people like this.
Thread Status:
Not open for further replies.