|
|
|
| Вот решил разобраться с принципом работы, создания SQL .... Вообще, что это такое. Как можно создать таблицу, нужна прога??? Какая. | |
|
|
|
|
|
|
|
для: Roo$
(13.06.2006 в 00:11)
| | Для начала вам потребуется дистрибутив с СУБД, вы с какой хотите начать работу? MySQL? | |
|
|
|
|
|
|
|
для: cheops
(13.06.2006 в 10:32)
| | А, они еще както подразделяются? Ну давай попробуем с MySQL? Что для этого нужно скатать | |
|
|
|
|
|
|
|
для: cheops
(13.06.2006 в 10:32)
| | У меня дома есть mysql-4.0.20d-win и MySQL - Front. Это то? | |
|
|
|
|
|
|
|
для: Roo$
(13.06.2006 в 22:22)
| | Да это то... mysql-4.0.20d-win - у вас установлена? Т.е. висит ли процесс mysqld-nt.exe в диспетчере задач? | |
|
|
|
|
|
|
|
для: cheops
(13.06.2006 в 22:25)
| | Да, он есть. Светафор какой то. Но как спомощью его можно созать таблицу? Я так понял что там все делается из cmd.exe (командную страку) | |
|
|
|
|
|
|
|
для: cheops
(13.06.2006 в 22:25)
| | Помогите пожалуйста элементарно создать какую нибудь таблицу и с помощью PHP вносить туда данные. Или типа что нибудь токого. Мне главное разобраться с принципом работы mySql. | |
|
|
|
|
|
|
|
для: Roo$
(13.06.2006 в 22:58)
| | Таблицу следует создавать в MySQL Front или в каком-нибудь другом клиенте. Запустите MySQL Front и укажите в качестве адреса сервера localhost, в качестве имени пользователя root, в качестве пароля пустую строку. Выберите базу данных test и создайте в ней таблицу
CREATE TABLE tbl (
field1 text NOT NULL,
field2 text NOT NULL,
field3 text NOT NULL,
field4 text NOT NULL
) TYPE=MyISAM;
|
| |
|
|
|
|
|
|
|
для: cheops
(14.06.2006 в 12:41)
| | Создал таблицу. Теперь что дальше делать? Таблицу создавал второй прогай (Font) | |
|
|
|
|
|
|
|
для: Roo$
(14.06.2006 в 21:04)
| | А дальше вам надо определиться что вы хотите получить из этой таблицы.
Но сначала надо внести данные в эту таблицу. | |
|
|
|
|
|
|
|
для: Boss
(14.06.2006 в 21:20)
| | А как вводить данные? Я хочу вводить данные через форму, например. Допустим у меня на форме есть text поле и button кнопка. По нажатию по кнопке данные, которые были введены в поле text, сохраняются в базу данных.. | |
|
|
|
|
|
|
|
для: Roo$
(14.06.2006 в 22:34)
| | Для этого следует создать код новую таблицу с одним текстовым полем
CREATE TABLE tbl1 (
field1 text NOT NULL,
) TYPE=MyISAM;
|
Далее необходимо создать HTML-форму
<form action=handler.php method=post>
<input type=text name=name>
<input type=submit value='Записать'>
</form>
|
HTML-форма отправит информацию обработчику handler.php, который может иметь следующий код
<?php
// Устанавливаем соединение с базой данных
require_once("config.php");
// Экранируем спец-символы
if (!get_magic_quotes_gpc())
{
$_POST['name'] = mysql_escape_string($_POST['name']);
}
// Формируем SQL-запрос на добавление информации
$query = "INSERT INTO tbl1 VALUES('$_POST[name]')";
if(!mysql_query($query)) exit(mysql_error());
else echo "Данные успешно добавлены";
?>
|
Для успешной работы данного скрипта, понадобится вспомогательный файл config.php, который устанавливает соединение с базой данных
<?php
// Адерс сервера MySQL
$dblocation = "localhost";
// Имя базы данных, на хостинге или локальной машине
$dbname = "shop";
// Имя пользователя базы данных
$dbuser = "root";
// и его пароль
$dbpasswd = "";
// Устанавливаем соединение с базой данных
$dbcnx = @mysql_connect($dblocation, $dbuser, $dbpasswd);
if (!$dbcnx) {
exit( "<P>В настоящий момент сервер базы данных не доступен,
поэтому корректное отображение страницы невозможно.</P>" );
}
// Выбираем базу данных
if (! @mysql_select_db($dbname, $dbcnx) ) {
exit( "<P>В настоящий момент база данных не доступна,
поэтому корректное отображение страницы невозможно.</P>" );
}
// Определяем версию сервера
$query = "SELECT VERSION()";
$ver = mysql_query($query);
if(!$ver) exit("Ошибка при определении версии MySQL-сервера");
$version = mysql_result($ver, 0);
list($major, $minor) = explode(".", $version);
// Если версия выше 4.1 сообщаем серверу, что будем работать с
// кодировкой cp1251
$ver = $major.".".$minor;
if((float)$ver >= 4.1)
{
mysql_query("SET NAMES 'cp1251'");
}
?>
|
| |
|
|
|
|
|
|
|
для: cheops
(14.06.2006 в 22:47)
| | Теперь как мне вывести (прочитать) эти сведения (внесенные в таблицу) в отдельную форму (например otchet.php) | |
|
|
|
|
|
|
|
для: Roo$
(14.06.2006 в 23:35)
| | Для этого обычно используют скрипт
<?php
// Устанавливаем соединение с базой данных
require_once("config.php");
// Формируем SQL-запрос на извлечение информации
$query = "SELECT * FROM tbl1";
$tbl = mysql_query($query);
if(!$tbl) exit(mysql_error());
// Если имеется хоть одна запись - выводим
if(mysql_num_rows($tbl))
{
while($table = mysql_fetch_array($tbl))
{
echo $table['field']."<br>";
}
}
?>
|
| |
|
|
|
|
|
|
|
для: cheops
(14.06.2006 в 23:57)
| | Большое спасибо за помощь с SQL. теперь у меня есть хоть немного представления об этом. Вообще что можо хранить в базах данных? Для чего нужно указывать имя и пароль при подключении к базе данных?? Для чего нужно делать проверку версии бызы? | |
|
|
|
|
|
|
|
для: Roo$
(15.06.2006 в 11:07)
| | 1) Хранить в базе данных можно всё: числа, строки, бинарные данные и даже геометрические объекты.
2)Логин и пароль следует указывать из-за того, что в каждой СУБД поддерживается система аутентификации и авторизации, пользователи как правило имеют доступ только к своим базам данных и не имеют к чужим - это удобно когда одни сервер обслуживает сотни клиентов (например, на хостинге).
3)Проверку версии обычно не нужно осуществлять, но сейчас период перехода от версий 3.23 и 4.0 к версиями 4.1 и 5.0. Последние версии требуют, чтобы клиент явно указывал кодировку соединения, т.е. в какой кодировке он будет передавать свою информацию. Это осуществляется при помощи оператор SET NAMES, старые версии этот оператор не поддерживают, поэтому осуществляется проверка версии перед тем как его выполнить. | |
|
|
|
|
|
|
|
для: Roo$
(13.06.2006 в 00:11)
| | Дапустим, я хочу сделать регестрацию для пользователей сайта? Как мне его лучше бы сделать? Раньше я делал так: каждоый пользователь имел свой файл в котором хронился его пароль. А через базу данных как можно сделать? Создать таблицу: имя, пароль? | |
|
|
|
|
|
|
|
для: Roo$
(15.06.2006 в 21:51)
| | Под новые вопросы лучше заводить новые темы. | |
|
|
|
|
|
|
|
для: cheops
(15.06.2006 в 22:58)
| | Привет!
Также тебе поможет управлять СУБД MySQL классная вещь, как PHPMyAdmin.
Скачать последнюю версию, ты можешь: http://www.phpmyadmin.net/home_page/downloads.php
Удачного дня! | |
|
|
|