Этот сайт не наркоманов. Это сайт программистов.

Добро пожаловать на Пыху!

Логин:
Пароль:
 

Нет прописки? Зарегистрируйся!

Новости

Мы в твиттере!
Мы вконтакте!
Мы на яндексе!

Краснодарское время: 23 Май, 2012, 10:40:02

Страниц: [1]
Печать
Автор Тема: Работа с БД(MySQL)  (Прочитано 2135 раз)
0 Пользователей и 2 Гостей смотрят эту тему.
Z-MODe    ↓ 
28 Сентябрь, 2007, 07:07:53
НЕ ХУЕТА! ХУЕТА!


Карма: 1
Сообщений: 201
Сила слова: 0.5

Наверное даже тут этот вопрос не уместен=((
Можно ли в пхп сценарии создавать самому таблицы в БД(или это делается только в командой строке(ну или myphpadmin если я не ошибаюсь))! Не отказался бы от человеческой документации по работе с MySQL из пхп..
А что именно сейчас так это: Как записать в созданную таблицу данные(ну т.е. новую строку). Добавление сообщений допустим...
1. Таблица notes (список записей):
  id - primary key
  user_id - пользователь
  create_time - дата создания
public - доступно всем/личная
  title - заголовок
   body - тело сообщения
 
вот такие данные из формы надо передать...
Записан

Некоторые программисты на столько суровы, что сохраняют логи аськи на баше...
Pasha    ↓ 
28 Сентябрь, 2007, 07:33:47 , спустя 25 минут 54 секунды
НЕ ХУЕТА! ХУЕТА!

Группа: Адекваты

Карма: 7
Сообщений: 1028
Сила слова: 0.68

PHP
CREATE TABLE название таблицы на латинском(
...
);
 
А что нет доступа к панели phpMyAdmin?
 
Мне в свое время помогла эта статья по Mysql
 
зы...и гугл :)
« Последнее редактирование: 28 Сентябрь, 2007, 07:37:03 от Pasha » Записан

r.i.p. puppy
AlexB    ↓ 
28 Сентябрь, 2007, 07:48:24 , спустя 14 минут 37 секунд
НЕ ХУЕТА! ХУЕТА!

Группа: в ухо

Карма: 89
Сообщений: 3423
Сила слова: 2.6

В общем, читай статьи, юзай поиск, но главное осознать одну вещь: твой скрипт - такой же клиент сервера БД как и phpmyadmin, ничуть не хуже. И может выполнять SQL запросы, в т.ч. и на создание таблиц. А ограничение на те или иные виды запросов, зависят не от типа клиента (твой скрипт, phpmyadmin, клиент командной строки, gui-клиент), а от тех прав которые настроены в базе данных для пользователя от имени которого клиент соединяется с сервером.
« Последнее редактирование: 28 Сентябрь, 2007, 07:50:08 от AlexB » Записан

Z-MODe    ↓ 
28 Сентябрь, 2007, 07:57:05 , спустя 8 минут 41 секунду
НЕ ХУЕТА! ХУЕТА!


Карма: 1
Сообщений: 201
Сила слова: 0.5

2AlexB, спасибо за разъеснение...в принципе для моих запросов пока всё освоено, но хочу лишний раз убедиться
 
Создал таблицу, написал первую строку
PHP
(mysql_query("INSERT INTO test_zero VALUES (1, 'Заголовок статьи',
'Текст статьи')"
, $msconnect);
Далее добавление строк производим через эту же команду?
 
И разъесните плиз работу
PHP
mysql_query("UPDATE test_zero SET(num='2', title='Заголовок 2')
WHERE num=1"
, $msconnect);

Что,чем, на что меняется? а то не очень ясно всё=(((
« Последнее редактирование: 28 Сентябрь, 2007, 08:49:29 от vasa_c » Записан

Некоторые программисты на столько суровы, что сохраняют логи аськи на баше...
Pasha    ↓ 
28 Сентябрь, 2007, 08:20:38 , спустя 23 минуты 33 секунды
НЕ ХУЕТА! ХУЕТА!

Группа: Адекваты

Карма: 7
Сообщений: 1028
Сила слова: 0.68

Допустим создадим таблицу - test_zero
 
Таблица будет состоять из ID(одна из выжных составляющих каждой таблицы),title,text
 
Составим sql запрос к БД
 
Text
CREATE TABLE test_zero(
id INT(11) NOT NULL AUTO_INCREMENT,
title text,
text text,
PRIMARY KEY(`id`)
);
INT - один из нескольких типов для хранения целочисленных данных
NOT NULL - указывает,что поле нельзя оставлять пустым
AUTO_INCREMENT - поле ID автоматически заполняется путем увеличения значения из предыдущей строки
 
PRIMARY KEY - один из важных параметров...
 
Как загонять в таблицу данные?
 
PHP
INSERT INTO `test_zero` ( `id` , `title` , `text` )
VALUES (
'', 'Заголовок', 'Текст'
);

Как редактировать?
 
PHP
UPDATE `test_zero` SET `title` = 'Заголовок 2',
`text` = 'Текст 2' WHERE `id` =1 LIMIT 1 ;

Удалять?
 
PHP
DELETE FROM `test_zero` WHERE `id` = 1
Записан

r.i.p. puppy
Z-MODe    ↓ 
28 Сентябрь, 2007, 08:31:02 , спустя 10 минут 24 секунды
НЕ ХУЕТА! ХУЕТА!


Карма: 1
Сообщений: 201
Сила слова: 0.5

2Pasha,хмм... т.е. в пхп через query можно с скобках написать то же самое что и через командную строку? т.е. к твоему запросу надо добавить
 
PHP
mysql_query("CREATE TABLE test_zero(
id INT(11) NOT NULL AUTO_INCREMENT,
title text,
text text,
PRIMARY KEY(`id`)
)"
,$mscon); // $mscon - конект к базе
 

И в бд появиться такая таблица?
 
а INT(11) не даст id вырасти за 11 знаков?
Записан

Некоторые программисты на столько суровы, что сохраняют логи аськи на баше...
Pasha    ↓ 
28 Сентябрь, 2007, 08:36:08 , спустя 5 минут 6 секунд
НЕ ХУЕТА! ХУЕТА!

Группа: Адекваты

Карма: 7
Сообщений: 1028
Сила слова: 0.68

Text
/*Соединение с базой данных...*/
$sql = 'INSERT INTO `test_zero` (`id`, `title`, `text`) VALUES ('''', ''Заголовок'', ''Текст'')';
$result = mysql_query($sql,$connect);
 
mysql_free_result($result); //Освобождаем всю память,связанную с результирующим набором
mysql_close($connect); //Закрыли подключение
Записан

r.i.p. puppy
AlexB    ↓ 
28 Сентябрь, 2007, 08:43:26 , спустя 7 минут 18 секунд
НЕ ХУЕТА! ХУЕТА!

Группа: в ухо

Карма: 89
Сообщений: 3423
Сила слова: 2.6


2Pasha,хмм... т.е. в пхп через query можно с скобках написать то же самое что и через командную строку?
И в бд появиться такая таблица?

Как я уже сказал выше, можно и появится, если есть для этого достаточно прав. Другой вопрос, что нужда в динамическом создании таблиц бывает крайне редко, а уж для начинающего программиста это и подавно не нужно.
 
Обычно структуру базы проектируют заранее, можно для этого воспользоваться специальными средствами (я предпочитаю Power Designer). Сгенеренный этими средставми скрипт (в нем все CREATE и будут) выполняется один раз (например через phpmyadmin), а уж твоему ПХП-скрипту остается только добавлять/извлекать данные в готовые таблицы.
« Последнее редактирование: 28 Сентябрь, 2007, 08:47:42 от AlexB » Записан

Z-MODe    ↓ 
28 Сентябрь, 2007, 08:47:38 , спустя 4 минуты 12 секунд
НЕ ХУЕТА! ХУЕТА!


Карма: 1
Сообщений: 201
Сила слова: 0.5

2AlexB,Pasha, спасибо вроде теперь всё ясно остались мелкие вопросы.. которые думаю сам додумаю... ещё раз спасибо!
Записан

Некоторые программисты на столько суровы, что сохраняют логи аськи на баше...
Z-MODe    ↓ 
29 Сентябрь, 2007, 08:54:54 , спустя 12 часов 7 минут 16 секунд
НЕ ХУЕТА! ХУЕТА!


Карма: 1
Сообщений: 201
Сила слова: 0.5

Не могу найти ничего подходящего, подскажите как реализовать следующее:
Необходимо чекбокс передать в БД... Но для меня это двойнная проблема:Как вывести данные из чекбокса и что они будут из себя представлять-булевскую,текст,цифру? Затем есть ли в мускле тип для переменной именно того типа которая выводится из чекбокса... Просто необходимо сделать проверку на наличие public(опубликовать для всех или нет) а данные из формы пишу в БД
Записан

Некоторые программисты на столько суровы, что сохраняют логи аськи на баше...
md5    ↓ 
29 Сентябрь, 2007, 12:31:31 , спустя 3 часа 36 минут 37 секунд
НЕ ХУЕТА! ХУЕТА!

выезд, апартаменты, массаж, стриптиз, подружки, дорого
Группа: в ухо

Карма: не нужна
Сообщений: 10494
Сила слова: 1.19

в mysql храни поле типа binary, которое может принимать значение 0 и 1
 
чекбокс если не отмечен, то вобще не передается, а если отмечен, то прийдёт как $_POST['checkbox'] = 'on'; (ну или гет...)
Записан

8: Undefined variable: str
Файл: /home/pyha/pyha.ru/forum/bbcode/Xbb/Tags/Man.php
Строка: 18
adw0rd: мудень блять, я уже фиксить стал эту фигню :)
md5: вуахахахаха
Z-MODe    ↓ 
29 Сентябрь, 2007, 02:01:13 , спустя 1 час 29 минут 42 секунды
НЕ ХУЕТА! ХУЕТА!


Карма: 1
Сообщений: 201
Сила слова: 0.5

хмм... тогда в базу мне надо его через if !empty писать надо???
Записан

Некоторые программисты на столько суровы, что сохраняют логи аськи на баше...
md5    ↓ 
29 Сентябрь, 2007, 04:11:08 , спустя 2 часа 9 минут 55 секунд
НЕ ХУЕТА! ХУЕТА!

выезд, апартаменты, массаж, стриптиз, подружки, дорого
Группа: в ухо

Карма: не нужна
Сообщений: 10494
Сила слова: 1.19

ага
 
PHP

$checkbox = (isset($_POST['checkbox']) && $_POST['checkbox']=='on') ? 1 : 0;
 
а потом пихаем в базу
Записан

8: Undefined variable: str
Файл: /home/pyha/pyha.ru/forum/bbcode/Xbb/Tags/Man.php
Строка: 18
adw0rd: мудень блять, я уже фиксить стал эту фигню :)
md5: вуахахахаха
Страниц: [1]
Печать
 

Перейти в: