За последние 24 часа нас посетили 17830 программистов и 1653 робота. Сейчас ищут 2003 программиста ...

бд

Тема в разделе "Вопросы от блондинок", создана пользователем Rizan, 17 авг 2007.

  1. Rizan

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

    С нами с:
    25 июн 2007
    Сообщения:
    115
    Симпатии:
    0
    Адрес:
    Пермь
    подскажите, реально ли все сделать в одной таблице, если нужно хранить инфу о юзере, объявлении, и разделе объявлений. в 3 таблах я без проблем справляюсь...если возможно, так должны выглядеть поля, если вытаскиваемая инфа должна быть построена:
    Код (Text):
    1. по объявлению узнать кто его подал
    2. по разделу вытащить объявления этого раздела и тд.
    в з таблах я это так примерно делаю:[sql]CREATE TABLE `authors` (
    `id_author` int(6) NOT NULL auto_increment,
    `name` text,
    `passw` text,
    PRIMARY KEY (id_author)
    ) TYPE=MyISAM;
    CREATE TABLE `razdels` (
    `id_razdel` int(6) NOT NULL auto_increment,
    `name` text,
    PRIMARY KEY (id_razdel)
    ) TYPE=MyISAM;
    CREATE TABLE `messagas` (
    `id_messaga` int(6) NOT NULL auto_increment,
    `body` text,
    `id_author` int(6) default null,
    `id_razdel` int(6) default null,
    PRIMARY KEY (id_messaga)
    ) TYPE=MyISAM;[/sql]
     
  2. Sergey89

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

    С нами с:
    4 янв 2007
    Сообщения:
    4.796
    Симпатии:
    0
  3. Anonymous

    Anonymous Guest

    Один вопрос — за-чем????
     
  4. Rizan

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

    С нами с:
    25 июн 2007
    Сообщения:
    115
    Симпатии:
    0
    Адрес:
    Пермь
    да хрен его знает=)
     
  5. Anonymous

    Anonymous Guest

    Ну вот и ответ: Забей. ;)
     
  6. Rizan

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

    С нами с:
    25 июн 2007
    Сообщения:
    115
    Симпатии:
    0
    Адрес:
    Пермь
    удаляй нафиг=)
     
  7. Rizan

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

    С нами с:
    25 июн 2007
    Сообщения:
    115
    Симпатии:
    0
    Адрес:
    Пермь
    кста..что я нетак делаю? файлы находятся в htdocs/board/
    не соединяется с базой=( запрос:
    PHP:
    1. <?php $DB_HOST = "localhost/doska/"; //хост
    2.     $DB_USER = "root"; //пользователь базы
    3.     $DB_PASS = "your_password"; //пароль пользователя
    4.     $DB_NAME = "my_base";//имя базы данных
    5.         mysql_connect($DB_HOST,$DB_USER,$DB_PASS) or die ("проблемы с подключением к sql серверу! <br><b>Error message:</b>".mysql_error());
    6.           mysql_select_db($DB_NAME);?>
     
  8. Kreker

    Kreker Старожил

    С нами с:
    8 апр 2007
    Сообщения:
    5.433
    Симпатии:
    0
    id подключения ?
     
  9. KombaInER

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

    С нами с:
    5 апр 2007
    Сообщения:
    221
    Симпатии:
    0
    Адрес:
    Днепр+Крым=Украина
    может так ;)
    PHP:
    1. <?php
    2.     $DB_HOST = "[b]localhost[/b]"; //хост, а не адрес ;)
    3.     $DB_USER = "root"; //пользователь базы
    4.     $DB_PASS = "your_password"; //пароль пользователя
    5.     $DB_NAME = "my_base";//имя базы данных
    6.         mysql_connect($DB_HOST,$DB_USER,$DB_PASS) or die ("проблемы с подключением к sql серверу! <br><b>Error message:</b>".mysql_error());
    7.           mysql_select_db($DB_NAME);
    8. ?>
    я точно не помню насчет рутового акка, но там какая-то хня есть с запросами, на php-myadmin.ru как-то объясняли
     
  10. Rizan

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

    С нами с:
    25 июн 2007
    Сообщения:
    115
    Симпатии:
    0
    Адрес:
    Пермь
    с localhost тоже не катит=(када файл просто в htdocs все работает
     
  11. Rizan

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

    С нами с:
    25 июн 2007
    Сообщения:
    115
    Симпатии:
    0
    Адрес:
    Пермь
    вот тормоз...катит все ...писал lokalhost
     
  12. Anonymous

    Anonymous Guest

    для рута не действует default-charset для соеднения, у него всегда latin1 — это кстати, не баг, а фича. (Для того что бы можно было чинить базу, если портак с кодировками, и вообще, нехер под рутом ничего делать.)
     
  13. KombaInER

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

    С нами с:
    5 апр 2007
    Сообщения:
    221
    Симпатии:
    0
    Адрес:
    Днепр+Крым=Украина
    точно! У меня тогда был трабл с этим, ничего не мог сделать. Потом создал юзера для выполнения необходимых мне запросов и норм =)

    по аналогии с quest и guest
     
  14. Rizan

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

    С нами с:
    25 июн 2007
    Сообщения:
    115
    Симпатии:
    0
    Адрес:
    Пермь
    PHP:
    1. <?php
    2. $sid=htmlspecialchars(addslashes(substr($_GET['sid'],0,10)));
    3. if(isset($sid))//если существует переменная сид , то
    4. {
    5. session_name("sid");//присваиваем ей имя
    6. session_start();//запускаем
    7. if(empty($_SESSION['username']) || empty($_SESSION['userpass']))//если переменные пустые,то
    8. {
    9. unset($sid); //выкл
    10. unset( $_GET['sid']);//выкл
    11. session_unset();//выкл
    12. $_SESSION=array();
    13. session_destroy();//уничтожаем сессию
    14.  
    15. }
    16. }
    17.  
    18. //если все ок, то
    19. if(isset($sid))
    20. {
    21. session_name("sid");
    22. $username=$_SESSION['username'];
    23. $userpass=$_SESSION['userpass'];
    24. }
    25. ?>
    что не так?когда сессия уничтожается страница не загружается вообще..ошибка анализа...когда залогинишься..все ок
     
  15. Kreker

    Kreker Старожил

    С нами с:
    8 апр 2007
    Сообщения:
    5.433
    Симпатии:
    0
    До сессий я еще не дошел в изучении пхп, но как я понимаю, sid - это число. Так не проще ли проверить его ctype_digit?
     
  16. host

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

    С нами с:
    20 июн 2007
    Сообщения:
    733
    Симпатии:
    3
    было бы неплохо сессиям имена давать
    а также удалять используя это имя
    причем есть session_unset()

    Разницу между session_destroy() и session_unset() почитай в мануале
     
  17. Sergey89

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

    С нами с:
    4 янв 2007
    Сообщения:
    4.796
    Симпатии:
    0
    Rizan а ты отступы в коде принципиально не используешь? Или есть другая причина, о которой никто не догадывается? :)
     
  18. host

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

    С нами с:
    20 июн 2007
    Сообщения:
    733
    Симпатии:
    3
    Sergey89
    да, я тоже хотел это сказать, но подумал, что это его право
     
  19. Sergey89

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

    С нами с:
    4 янв 2007
    Сообщения:
    4.796
    Симпатии:
    0
    Пусть хотябы пожалеет тех, кто это будет читать и пытаться понять. Если честно, то у меня при виде такого кода, желания что-то там разобрать - нет.
     
  20. host

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

    С нами с:
    20 июн 2007
    Сообщения:
    733
    Симпатии:
    3
    и не только у тебя ;)
     
  21. Rizan

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

    С нами с:
    25 июн 2007
    Сообщения:
    115
    Симпатии:
    0
    Адрес:
    Пермь
    это не число...там буква тоже есть..
     
  22. Rizan

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

    С нами с:
    25 июн 2007
    Сообщения:
    115
    Симпатии:
    0
    Адрес:
    Пермь
    чуть подправаил
     
  23. Rizan

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

    С нами с:
    25 июн 2007
    Сообщения:
    115
    Симпатии:
    0
    Адрес:
    Пермь
    То есть делать так?
    PHP:
    1. <?php
    2.  
    3. unset($sid); //вообще нафиг оно надо если есть это:
    4. unset( $_GET['sid']);//выкл
    5. session_unset($sid);//tak?
    6. $_SESSION=array();
    7. session_destroy($sid);//уничтожаем сессию
    8. ?>
     
  24. host

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

    С нами с:
    20 июн 2007
    Сообщения:
    733
    Симпатии:
    3
    Rizan
    почитайте разницу session_destroy и session_unset
    зачем их лбе использовать?
    это не нужно
    прочитайте и про session_name
    ;)
     
  25. Kreker

    Kreker Старожил

    С нами с:
    8 апр 2007
    Сообщения:
    5.433
    Симпатии:
    0
    :) Не вкурил, чего это ты пытаешься сделать.
    Код (Text):
    1. unset( $_GET['sid'])
    - это что за строчка?? :)

    Код (Text):
    1. session_unset($sid)
    - Освобождает все переменные сессии, но не одну. Синтаксис:
    PHP:
    1. <?
    2. void session_unset ( void )
    3. ?>

    Код (Text):
    1. $_SESSION=array();
    Мне кажется, что этот способ медленней, чем session_unset, т.к тут удаляются по очереди все элементы массива.

    Код (Text):
    1. session_destroy($sid);
    Аналогично, что и начало сессии.