Модераторы: skyboy

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> Базы данных в MySQL, Строение 
:(
    Опции темы
Aliance
Дата 3.5.2005, 18:37 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


I ♥ <script>
****


Профиль
Группа: Модератор
Сообщений: 6418
Регистрация: 2.8.2004
Где: spb

Репутация: нет
Всего: 137



Каково строение в БД Мускулах? В плане, если рисунком. Например нужна регистрация юзеров === ник + пароль. и все. Как это выглядит на БД, если схемой, НЕ кодом?
PM MAIL WWW ICQ Skype   Вверх
Mal Hack
Дата 3.5.2005, 18:43 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Мудрый...
****


Профиль
Группа: Участник Клуба
Сообщений: 9926
Регистрация: 15.2.2004

Репутация: 8
Всего: 261



Столбцы:
Ник | Пароль
PM ICQ   Вверх
Aliance
Дата 3.5.2005, 19:36 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


I ♥ <script>
****


Профиль
Группа: Модератор
Сообщений: 6418
Регистрация: 2.8.2004
Где: spb

Репутация: нет
Всего: 137



Т.е. такая:
Код

Ник === Пароль
саша === 123
паша === 456

Ясно. Я как вывести опр. столбец/строку с помощью php на экран?
PM MAIL WWW ICQ Skype   Вверх
Mal Hack
Дата 3.5.2005, 19:46 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Мудрый...
****


Профиль
Группа: Участник Клуба
Сообщений: 9926
Регистрация: 15.2.2004

Репутация: 8
Всего: 261



1. Пароль надо шифровать.
2. Вывсети просто. Посылаешь запрос, выводишь результат.
PM ICQ   Вверх
Aliance
Дата 3.5.2005, 21:19 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


I ♥ <script>
****


Профиль
Группа: Модератор
Сообщений: 6418
Регистрация: 2.8.2004
Где: spb

Репутация: нет
Всего: 137



Цитата(Mal @ 3.5.2005, 20:46)
Вывсети просто. Посылаешь запрос, выводишь результат

а, ну хорошо.... если бы мне это что-нить говорило smile Я с трудом могу подключиться к БД...

ЗЫ: а какие типы данных можно в ней хранить? Как быть с HTML/PHP текстом? Нужно делать замену спец. символов?
PM MAIL WWW ICQ Skype   Вверх
Mal Hack
Дата 3.5.2005, 21:26 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Мудрый...
****


Профиль
Группа: Участник Клуба
Сообщений: 9926
Регистрация: 15.2.2004

Репутация: 8
Всего: 261



Цитата(Aliance @ 3.5.2005, 22:19)
а, ну хорошо.... если бы мне это что-нить говорило

http://php.net/mysql_fetch_array - наиболее простой вариант. Пример там же.
Дабы не рекламить пару линков в личку кинул.
А вообще вся информация есть тут: http://dev.mysql.com/doc/mysql/en/index.html
PM ICQ   Вверх
Aliance
Дата 3.5.2005, 22:51 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


I ♥ <script>
****


Профиль
Группа: Модератор
Сообщений: 6418
Регистрация: 2.8.2004
Где: spb

Репутация: нет
Всего: 137



Цитата(Mal @ 3.5.2005, 22:26)
Дабы не рекламить пару линков в личку кинул.

спс за линки. но все же там расчитано на уровень, выше моего 8))

На офф. сайте мускула смотрел...

Про типы - их много очень, спрошу лучше на словах. Если я хочу хранить любой текст (с хтмл) - какой выбрать?
PM MAIL WWW ICQ Skype   Вверх
Aliance
Дата 3.5.2005, 23:08 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


I ♥ <script>
****


Профиль
Группа: Модератор
Сообщений: 6418
Регистрация: 2.8.2004
Где: spb

Репутация: нет
Всего: 137



Я так понимаю для того лучше использовать тип LONGBLOB...

Создаем таблицу, она содержит 2 столбца - id и текст
Код

<?php

$host = 'localhost';
$user = 'mysql_user';
$pass = 'mysql_password';

mysql_connect($host, $user, $pass) or
   die("Ошибка при подключении к MySQL: " . mysql_error());

if( ! mysql_select_db("mydb") ) {
   print ("Выбрана неверная БД");
   exit();
} else {

   $result = mysql_query("SELECT id, text FROM mytable");

   // mysql_free_result($result);
}
?> 


Имеем БД mydb с таблицей mytable и полями id и text, причем поле id - первичный ключ...

SQL запрос для создания таблицы
Код

CREATE TABLE `mytable` (
`id` INT NOT NULL ,
`text` LONGBLOB NOT NULL ,
PRIMARY KEY ( `id` ) 
); 

Вопрос: куда его вставлять???

Цель тренировки: научится создавать такую вещь:

---имеем страницу a.php и b.php
---имеем 2 строки в таблице:
====mytable====
=id====text====
=0=<b>test1</b>=
=1=<i>TEST2</i>=
==============
---нужно в a.php вывести первую, а в b.php - вторую.
И как их туда забить? Нужно писать админку и с помощью такого кода, да:
Код

// a.php
$res = mysql_query( "INSERT INTO `mytable` VALUES ( '0' , '<b>test1</b>' )" );
// b.php
$res = mysql_query( "INSERT INTO `mytable` VALUES ( '1' , '<i>test2</i>' )" );


Это сообщение отредактировал(а) Aliance - 3.5.2005, 23:09
PM MAIL WWW ICQ Skype   Вверх
Mal Hack
Дата 4.5.2005, 10:42 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Мудрый...
****


Профиль
Группа: Участник Клуба
Сообщений: 9926
Регистрация: 15.2.2004

Репутация: 8
Всего: 261



Цитата(Aliance @ 4.5.2005, 00:08)
И как их туда забить? Нужно писать админку и с помощью такого кода, да:

Агаю.

PM ICQ   Вверх
Aliance
Дата 4.5.2005, 13:14 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


I ♥ <script>
****


Профиль
Группа: Модератор
Сообщений: 6418
Регистрация: 2.8.2004
Где: spb

Репутация: нет
Всего: 137



Цитата(Aliance @ 4.5.2005, 00:08)
Вопрос: куда его вставлять???

smile

А как забивать динамические данные? Т.е. юхер ввел в поле имя - и забить туда...

И как проверять существования такого поля - дабы не забивать одно и тоже неск. раз для ОДНОГО и того же человека?
PM MAIL WWW ICQ Skype   Вверх
Mal Hack
Дата 4.5.2005, 16:57 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Мудрый...
****


Профиль
Группа: Участник Клуба
Сообщений: 9926
Регистрация: 15.2.2004

Репутация: 8
Всего: 261



SELECT - выборка
INSERT -0 вставка.

PM ICQ   Вверх
dimes
Дата 4.5.2005, 18:00 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Бывалый
*


Профиль
Группа: Участник
Сообщений: 249
Регистрация: 20.7.2004
Где: то около СПБ

Репутация: 1
Всего: 14



Цитата(Aliance @ 4.5.2005, 00:08)
Я так понимаю для того лучше использовать тип LONGBLOB...

Если не секрет почему? Начиная с полей BLOB/TEXT СУБД приходится несколько изворачиватся при работе с этими полями, статичную таблицу ты точно не получиш и это все ради того чтобы иметь возможность записать 4Гб инфы на поле? Зачем тебе такое?
PM ICQ   Вверх
Aliance
Дата 4.5.2005, 18:25 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


I ♥ <script>
****


Профиль
Группа: Модератор
Сообщений: 6418
Регистрация: 2.8.2004
Где: spb

Репутация: нет
Всего: 137



Цитата(dimes @ 4.5.2005, 19:00)
Если не секрет почему?

1) чем больше неограниченность объема - тем лучше. Хуже от этого не будет.
2) мне требуется хранить текст
3) мне требуется сравнивать текст с учетом регистра


Mal Hack
Понятно. что ничего не понятно smile
PM MAIL WWW ICQ Skype   Вверх
Aliance
Дата 6.5.2005, 21:22 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


I ♥ <script>
****


Профиль
Группа: Модератор
Сообщений: 6418
Регистрация: 2.8.2004
Где: spb

Репутация: нет
Всего: 137



Вот, заработало. Рабочий код:
Код

<?php
.........

mysql_connect($host, $user, $pass) or
  die("Ошибка при подключении к MySQL: " . mysql_error());

if( ! mysql_select_db($db) ) {
  print ("Выбрана неверная БД");
  exit();
}

$res0 = mysql_query( "INSERT INTO `mytable` VALUES ( '0' , '<b>TEST</b>' )" );
$res1 = mysql_query( "INSERT INTO `mytable` VALUES ( '1' , '<i>test2</i>' )" );

$result = mysql_query("SELECT id, value FROM mytable");

while ($row = mysql_fetch_array($result, MYSQL_ASSOC)) {
   print("ID - " . $row['id'] . ". Value - " . $row['value'] . "<br />");
}

?>


Это сообщение отредактировал(а) Aliance - 6.5.2005, 21:26
PM MAIL WWW ICQ Skype   Вверх
Aliance
Дата 7.5.2005, 12:38 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


I ♥ <script>
****


Профиль
Группа: Модератор
Сообщений: 6418
Регистрация: 2.8.2004
Где: spb

Репутация: нет
Всего: 137



Тут мы получаем ВСЕ значения ВСЕХ строк, благодоря циклу while.
А какполучить, скажем, все столбцы только 0 строки?
Я так понимаю это массив (MYSQL_ASSOC) -> как-то так:
Код

$row = mysql_fetch_array($result, MYSQL_ASSOC)
print("ID - " . $row[0]['id']);

PM MAIL WWW ICQ Skype   Вверх
Ответ в темуСоздание новой темы Создание опроса
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | MySQL | Следующая тема »


 




[ Время генерации скрипта: 0.0556 ]   [ Использовано запросов: 22 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.