[ Поиск ] - [ Пользователи ] - [ Календарь ]
Полная Версия: Установочный файл
mihai
Господа программисты.


пишу инсталяционный файл
по созданиею таблиц в БД,

таблицы создаются хорошо,
и значения записываются

но внутренний голос
говорит что то не так не красиво,

подкорректируйте мой код,
если считает нужным.

меня больше беспокоит
INSERT INTO
так верно ?



if (mysql_select_db(DB_NAME))
{
////////////////////создаём таблицу admin /////////////////////////////

$sql = "CREATE TABLE admin (
id int(2) NOT NULL auto_increment,
user varchar(255) default NULL,
pass varchar(255) NOT NULL default '',
PRIMARY KEY (id))"
;

if (mysql_query($sql))
{
echo "создал таблицу admin<br/>";
}
else
{
echo "ошибка admin<br/>";
}

$qins = @mysql_query("INSERT INTO admin VALUES (1,'mmm','333')");
$qins1 = @mysql_query("INSERT INTO admin VALUES (2,'nnn','333')");
$qins2 = @mysql_query("INSERT INTO admin VALUES (3,'sss','333')");
$qins3 = @mysql_query("INSERT INTO admin VALUES (4,'ttt','333')");

///////////////////создаём таблицу comment////////////////////////////////////

$sql1 = "CREATE TABLE comment (
idcomments int(5) NOT NULL auto_increment,
zam int(5) NOT NULL default '0',
author varchar(255) default NULL,
text text,
date date NOT NULL default '0000-00-00',
PRIMARY KEY (idcomments))"
;

if (mysql_query($sql1))
{
echo "создал таблицу comment<br/>";
}
else
{
echo "ошибка comment<br/>";
}
$qina = @mysql_query("INSERT INTO comment VALUES (1,'mmsdfsdfsdfm','343444353433')");
$qinsd = @mysql_query("INSERT INTO comment VALUES (2,'nnsdfsfsdsfsdn','33343434533')");
$qinsb = @mysql_query("INSERT INTO comment VALUES (3,'sssfssdfsffs','333453453453453')");
$qinsc = @mysql_query("INSERT INTO comment VALUES (4,'tsdssdfsdtt','3334534534345345343')");
}




Спустя 36 минут, 50 секунд (22.07.2010 - 01:06) Mirexzpalich написал(а):
По-моему все нормально кроме одного:
Если таблица не создастся? а вы все равно добавляете в нее записи... Не шорошо.. Так лучше:
i
f (mysql_query($sql))
{
echo "создал таблицу admin<br/>";


$qins = @mysql_query("INSERT INTO admin VALUES (1,'mmm','333')");
$qins1 = @mysql_query("INSERT INTO admin VALUES (2,'nnn','333')");
$qins2 = @mysql_query("INSERT INTO admin VALUES (3,'sss','333')");
$qins3 = @mysql_query("INSERT INTO admin VALUES (4,'ttt','333')");
}
else
{
echo "ошибка admin<br/>";
}

Во втором случае так же.

Спустя 1 день, 6 часов, 17 минут, 40 секунд (23.07.2010 - 07:24) mihai написал(а):
Mirexzpalich
Спасибо.

Ну и хорошо, значит поехали дальше.

Спустя 19 минут, 27 секунд (23.07.2010 - 07:43) twin написал(а):
Не совсем хорошо... Зачем куча запросов? И зачем присвоение, если потом переменная не используется...
Вместо этого
		$qins = @mysql_query("INSERT INTO admin VALUES (1,'mmm','333')");
$qins1 = @mysql_query("INSERT INTO admin VALUES (2,'nnn','333')");
$qins2 = @mysql_query("INSERT INTO admin VALUES (3,'sss','333')");
$qins3 = @mysql_query("INSERT INTO admin VALUES (4,'ttt','333')");
можно написать так:
        @mysql_query("INSERT INTO `admin`
(`id`,`user`, `pass`)
VALUES
(1,'mmm','333'),
(2,'nnn','333'),
(3,'sss','333')
"
);

Теперь дальше. Собачку ты поставил, а если облом, как узнать, прошла инсталляция или нет? Нужно сделать дебаггинг:
        @mysql_query("INSERT INTO `admin`
(`id`,`user`, `pass`)
VALUES
(1,'mmm','333'),
(2,'nnn','333'),
(3,'sss','333')
"
) or die('Облом. Не шмогла заполнить таблицу admin');


Ну или довести до конца с присвоением. Ты же начал с таблицей, так же можно проверить переменную запроса.

Спустя 5 часов, 38 минут, 48 секунд (23.07.2010 - 13:22) mihai написал(а):
twin
да я вот это имел ввиду
а вот второе не понял
Цитата

Ну или довести до конца с присвоением. Ты же начал с таблицей, так же можно проверить переменную запроса.


я же таблицу проверяю

if (mysql_query($sql))
{
echo "создал таблицу admin<br/>";
}
else
{
echo "ошибка admin<br/>";
}


Спустя 11 минут, 36 секунд (23.07.2010 - 13:34) twin написал(а):
Этот запрос проверяешь. А запись данных в таблицу - нет.
Быстрый ответ:

 Графические смайлики |  Показывать подпись
Здесь расположена полная версия этой страницы.
Invision Power Board © 2001-2024 Invision Power Services, Inc.