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

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

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

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

    Joined:
    25 Apr 2007
    Messages:
    142
    Likes Received:
    246
    Reputations:
    73
    Попробуй найти phpmyadmin,может подойдет туда пароли,обычно /phpmyadmin/ или /pma/. Или пробуй коннектится на порт 3306
     
  2. Pashkela

    Pashkela Динозавр

    Joined:
    10 Jan 2008
    Messages:
    2,750
    Likes Received:
    1,044
    Reputations:
    339
    пути (сервер ДБ) можно прочитать только в конфигах обычно, плюс удаленный доступ очень редко попадается (редковато). А дальше слушай ILYAtirtir - ищи phpmyadmin, если не под .htaccess - считай повезло.
     
  3. xSlon

    xSlon New Member

    Joined:
    8 Feb 2008
    Messages:
    4
    Likes Received:
    0
    Reputations:
    0
    Читаю книжку по php,есть глава про создание интернет-магазина,есть код создания бд,пытаюсь сделать по примеру но чуть-чуть другое - выходит только ошибка.
    Parse error: parse error, unexpected T_ELSE in z:\home\localhost\www\FirstSite\setup_bd.php on line 47

    Code:
    <?
    //Подключаем шаблон
    require "shablon.php";
    //выводим шаблон
    echo $head;
    //создаем БД
    if(!mysql_connect($server,$login,$psswd))
    {
    	echo"Ошибка сервера MySQL";
    	echo"</body></html>";
    	exit;
    }
    echo "Создаем БД";
    mysql_createdb($BD);
    echo mysql_error(mysql_errno());
    if(mysql_errno() == 0)
    {
    	echo "БД создана!Создаем таблицу 1...";
    	mysql_select_db($BD);
    	echo mysql_error();
    	mysql_query('Create table 1 (
    									 login char(16) primary key,
    									 psswd char(16) not null,
    									 )');
    	echo mysql_error();
    	If (mysql_errno() ===0)
    	{
    		echo "Таблица создана.Добавляем первичные данные.";
    		mysql_query('INSERT INTO users values("test","test")');
    		echo "Данные добавлены";
    	echo "А теперь создаем Таблицу 2";
    	mysql_select_db($BD);
    	echo mysql_error();
    	mysql_query('Create table 2 (
    									 name char(16) primary key,
    									 sostav char(128),
    									 opisanie text,
    									 )');
    	echo mysql_error();
    	If (mysql_errno() ===0)
    	{
    		echo "Таблица создана.Добавляем первичные данные.";
    		mysql_query('INSERT INTO clans values("Первый","Нет...","Нет пока")');
    		echo "Данные добавлены";
    	}
    	else echo "ошибка при создании таблицы";
    	else
    	echo "Ошибка при создании БД ".mysql_error();
    	}
    }
    ?>	
    Подскажите пожалуйста,что не так...
     
  4. Pashkela

    Pashkela Динозавр

    Joined:
    10 Jan 2008
    Messages:
    2,750
    Likes Received:
    1,044
    Reputations:
    339
    а потому что вот так писать надо, не зря правила придумали:

    PHP:
    <?php
    if (условие) {
          .........
          if (
    условие) {
                 ...............
                 ...............
          }
    }
    ?>
    Так, только так и всегда так. Сам почитай свой код и попробуй понять, где у тебя какой IF закрывается и что внутри каждого IF

    Сделаешь так - ошибка станет настолько очевидно смешной, что тебе даже смешно не будет
     
    2 people like this.
  5. mailbrush

    mailbrush Well-Known Member

    Joined:
    24 Jun 2008
    Messages:
    1,997
    Likes Received:
    996
    Reputations:
    155
    PHP:
    <?php
         
    //Подключаем шаблон
             
    require "shablon.php";
         
    //выводим шаблон
         
    echo $head;
         
    //создаем БД
         
    if (!mysql_connect($server$login$psswd))
         {
             echo 
    "Ошибка сервера MySQL";
             echo 
    "</body></html>";
             exit;
         }
         echo 
    "Создаем БД";
         if (
    mysql_create_db($BD))
         {
             echo 
    mysql_error(mysql_errno());
             if (
    mysql_errno() == 0)
             {
                 echo 
    "БД создана!Создаем таблицу 1...";
                 
    mysql_select_db($BD);
                 echo 
    mysql_error();
                 
    mysql_query('Create table 1 (
                                         login char(16) primary key,
                                         psswd char(16) not null,
                                         )'
    );
                 echo 
    mysql_error();
                 if (
    mysql_errno() === 0)
                 {
                     echo 
    "Таблица создана.Добавляем первичные данные.";
                     
    mysql_query('INSERT INTO users values("test","test")');
                     echo 
    "Данные добавлены";
                     echo 
    "А теперь создаем Таблицу 2";
                     
    mysql_select_db($BD);
                     echo 
    mysql_error();
                     
    mysql_query('Create table 2 (
                                         name char(16) primary key,
                                         sostav char(128),
                                         opisanie text,
                                         )'
    );
                     echo 
    mysql_error();
                     if (
    mysql_errno() === 0)
                     {
                         echo 
    "Таблица создана.Добавляем первичные данные.";
                         
    mysql_query('INSERT INTO clans values("Первый","Нет...","Нет пока")');
                         echo 
    "Данные добавлены";
                     }
                     else  echo 
    "ошибка при создании таблицы";
                 }
             }
         }
         else
         {
             echo 
    "Ошибка при создании БД " mysql_error();
         }

    ?>    
     
    #725 mailbrush, 19 Aug 2009
    Last edited: 19 Aug 2009
    2 people like this.
  6. FireFenix

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

    Joined:
    3 Jun 2009
    Messages:
    390
    Likes Received:
    115
    Reputations:
    23
    гоанокод в if'ах

    наверное должно быть так
    PHP:
    <?php
    //Подключаем шаблон
    require "shablon.php";

    //выводим шаблон
    echo $head;

    //создаем БД
    if(!mysql_connect($server,$login,$psswd))
    {
      echo 
    "Ошибка сервера MySQL";
      echo 
    "</body></html>";
      exit;
    }

    echo 
    "Создаем БД";
    mysql_createdb($BD);
    echo 
    mysql_error(mysql_errno());

    if(
    mysql_errno() == 0)
    {
      echo 
    "БД создана!Создаем таблицу 1...";  
      
    mysql_select_db($BD);  
      echo 
    mysql_error();
      
      
    mysql_query('Create table 1 (
                       login char(16) primary key,
                       psswd char(16) not null,
                       )'
    );
                       
      echo 
    mysql_error();
      
      if (
    mysql_errno() ===0)
      {
        echo 
    "Таблица создана.Добавляем первичные данные.";
        
    mysql_query('INSERT INTO users values("test","test")');
        echo 
    "Данные добавлены";
        echo 
    "А теперь создаем Таблицу 2";
        
    mysql_select_db($BD);
        echo 
    mysql_error();
        
        
    mysql_query('Create table 2 (
                         name char(16) primary key,
                         sostav char(128),
                         opisanie text,
                         )'
    );
        echo 
    mysql_error();
        
        if (
    mysql_errno() ===0)
        {
          echo 
    "Таблица создана.Добавляем первичные данные.";
          
    mysql_query('INSERT INTO clans values("Первый","Нет...","Нет пока")');
          echo 
    "Данные добавлены";
        } else {
          echo 
    "ошибка при создании таблицы";
        }
      } else{
        echo 
    "Ошибка при создании БД ".mysql_error();
      }
    }

    ?>  
     
    #726 FireFenix, 19 Aug 2009
    Last edited: 19 Aug 2009
  7. xSlon

    xSlon New Member

    Joined:
    8 Feb 2008
    Messages:
    4
    Likes Received:
    0
    Reputations:
    0
    Pashkela
    mailbrush
    FireFenix

    Спасибо большое,докумекал сам уже...действительно,смешная ошибка :(


    Поставьте пожалуйста по плюсу вышеуказанным людям...
     
  8. xSlon

    xSlon New Member

    Joined:
    8 Feb 2008
    Messages:
    4
    Likes Received:
    0
    Reputations:
    0
    Блин,теперь это показывает(((
    Code:
    Создаем БД
    Notice: mysql_createdb(): This function is deprecated, please use mysql_query() to issue a SQL CREATE DATABASE statement instead. in z:\home\localhost\www\site_cw\setup_bd.php on line 15
    
    Warning: mysql_error(): supplied argument is not a valid MySQL-Link resource in z:\home\localhost\www\site_cw\setup_bd.php on line 16
    Ошибка при создании БД Can't create database 'all'. Database exists 
    PHP:
     <?
    //Подключаем шаблон
    require "shablon.php";
    require "options.php";
    //выводим шаблон
    echo $head;
    //создаем БД
    if(!mysql_connect($server,$login,$psswd))
    {
        echo"Ошибка сервера MySQL";
        echo"</body></html>";
        exit;
    }
    echo "Создаем БД";
    mysql_createdb($BD);                        //15ая строка
    echo mysql_error(mysql_errno());      //16ая строка
    if(mysql_errno() == 0)
    {
        echo "БД создана!Создаем таблицу 1...";
        mysql_select_db($BD);
        echo mysql_error();
        mysql_query('Create table 1 (
                                         login char(16) primary key,
                                         psswd char(16) not null,
                                         )');
        echo mysql_error();
        If (mysql_errno() ===0)
        {
            echo "Таблица создана.Добавляем первичные данные.";
            mysql_query('INSERT INTO users values("test","test")');
            echo "Данные добавлены";
        echo "А теперь создаем Таблицу 2";
        mysql_select_db($BD);
        echo mysql_error();
        mysql_query('Create table 2 (
                                         name char(16) primary key,
                                         sostav char(128),
                                         opisanie text,
                                         )');
        echo mysql_error();
        If (mysql_errno() ===0)
        {
            echo "Таблица создана.Добавляем первичные данные.";
            mysql_query('INSERT INTO clans values("Первый","Нет...","Нет пока")');
            echo "Данные добавлены";
        }
        }
        else echo "ошибка при создании таблицы";
    //создать таблицу кв
    }
    else
    echo "Ошибка при создании БД ".mysql_error();
    ?>    
            
     
  9. gisTy

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

    Joined:
    24 May 2008
    Messages:
    432
    Likes Received:
    160
    Reputations:
    27
    есть как минимум два стиля оформления...
     
  10. mon$TriK

    mon$TriK New Member

    Joined:
    9 Aug 2009
    Messages:
    1
    Likes Received:
    0
    Reputations:
    -5
    а зачем же ты базу каждый раз создаешь?))
    она уже существует :)
     
  11. Shadrin

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

    Joined:
    20 Aug 2008
    Messages:
    263
    Likes Received:
    109
    Reputations:
    18
    когда расковыриваю иньекции mysql версии >5 часто присутствует база с названием "mysql " ее структура одинаковая на всех сайтах где я ее видел ,там есть логин и пароль в mysql5.
    Но он не куда неподходит(
    Вопрос такой что это за база и для чего она нужа ?
    Вот ее таблицы
    Code:
    Tables:
    	columns_priv
    	db
    	func
    	help_category
    	help_keyword
    	help_relation
    	help_topic
    	host
    	proc
    	procs_priv
    	tables_priv
    	time_zone
    	time_zone_leap_second
    	time_zone_name
    	time_zone_transition
    	time_zone_transition_type
    	user
    спасибо
     
    #731 Shadrin, 20 Aug 2009
    Last edited: 20 Aug 2009
  12. Shadrin

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

    Joined:
    20 Aug 2008
    Messages:
    263
    Likes Received:
    109
    Reputations:
    18
    а как проверить,закрыт доступ или нет ?
     
  13. b3

    b3 Banned

    Joined:
    5 Dec 2004
    Messages:
    2,174
    Likes Received:
    1,157
    Reputations:
    202
    Зайди в phpmyadmin и если там есть БД с именем mysql то попробуй сделать выборку из этой таблици, или же сделай :
    select * from mysql.user если нет доступа то вылезет ошибка.
    PHP:
    <?php

        $conn 
    mysql_connect("localhost""root""");
        
        if (!
    $conn) {
            echo 
    "Unable to connect to DB: " mysql_error();
            exit;
        }
        
        if (!
    mysql_select_db("mysql")) {
            echo 
    "Unable to select mydbname: " mysql_error();
            exit;
        }
        
        
    $sql "SELECT user, password 
                FROM   user
                WHERE  1"
    ;

        
    $result mysql_query($sql);

        if (!
    $result) {
            echo 
    "Could not successfully run query ($sql) from DB: " mysql_error();
            exit;
        }
        
        if (
    mysql_num_rows($result) == 0) {
            echo 
    "No rows found, nothing to print so am exiting";
            exit;
        }

        
    // До тех пор, пока в результате содержатся ряды, помещаем их в
        // ассоциативный массив.
        // Заметка: если запрос возвращает только один ряд -- нет нужды в цикле.
        // Заметка: если вы добавите extract($row); в начало цикла, вы сделаете
        //          доступными переменные $userid, $fullname, $userstatus.
        
    while ($row mysql_fetch_assoc($result)) {
            echo 
    $row["user"];
            echo 
    $row["password"];
            
        }
            
        
    mysql_free_result($result);


    ?>
     
    1 person likes this.
  14. INSEPT

    INSEPT New Member

    Joined:
    16 Mar 2009
    Messages:
    3
    Likes Received:
    0
    Reputations:
    0
    Кокая прога лутшая из бесплатних для защиты бд mysql?
     
  15. PaCo

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

    Joined:
    6 Feb 2008
    Messages:
    436
    Likes Received:
    138
    Reputations:
    25
    Brain.
     
    1 person likes this.
  16. Pashkela

    Pashkela Динозавр

    Joined:
    10 Jan 2008
    Messages:
    2,750
    Likes Received:
    1,044
    Reputations:
    339
    mysql БД не надо защищать, с ней просто надо правильно работать
     
    1 person likes this.
  17. Fuckel

    Fuckel Banned

    Joined:
    16 Jan 2008
    Messages:
    274
    Likes Received:
    59
    Reputations:
    6
    блокировать полностью =)
     
  18. jawbreaker

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

    Joined:
    7 Jul 2008
    Messages:
    156
    Likes Received:
    76
    Reputations:
    3
    Пишу клиентское приложение на QT которое должно обновляться. Соответственно есть сервер БД(MySQL) и при старте программы она лезет в БД чтобы проверить не появилась ли новая версия (в БД есть ссылка на новую версию). Клиент и сервер общаются через защищённое соединение.
    Возникает вопрос, может ли злобный хакер получить информацию, которую я передаю и скачать мою программку нахаляву и как с этим бороться?
     
    1 person likes this.
  19. Patronik

    Patronik Member

    Joined:
    16 Mar 2009
    Messages:
    111
    Likes Received:
    12
    Reputations:
    0
    Скажите какой запрос к базе лучше для нахождения логина и пароля? Очень надо знать.

    $in_login = $_POST['login'];
    $in_pas = $_POST['pas'];

    $sql_query = "SELECT * FROM user";
    $resalt = mysql_query($sql_query);
    while($row = mysql_fetch_array($resalt))
    {

    if (($in_login == $row['user_login']) && ($in_password == $row['user_password']))
    ===========================================
    ИЛИ
    sql_query = "SELECT * FROM user WHERE user_login = $in_login AND user_password = $in_password";
     
    1 person likes this.
  20. SaiRus

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

    Joined:
    24 Nov 2008
    Messages:
    369
    Likes Received:
    41
    Reputations:
    0
    я особо не селен в sql, но имхо если юзать второй запрос то будет меньше кода останеться только переменную resalt обработать+таблицу полностью грузить не надо+экономишь время без цикла :)
     
    1 person likes this.
Thread Status:
Not open for further replies.