В чём причина не могу понять

Тема в разделе "PHP программирование", создана пользователем amsokol, 5 авг 2009.

  1. amsokol

    amsokol Гость

    Увожаемые Гуру PHP, подскажите пожалуйста вчём дело скрипт инстоляции не в какую не хочет заполнять базу данных, хотя и базу создал и пользователя со всеми привелегиями и поролем одарил, а такое ощущение что не видет базу и всё, Может скрипт Вообще не рабочий.

    Вот сам скрипт, подскажите начинающему!!!

    <?
    error_reporting(0);
    if ($state == "") {
    echo "<center><b>Установка и настройка скриптов , ШАГ 1.</b><br><br>";
    echo "Перед началом установки, создайте на своем сервере пустую базу данных MSQL,<br> и впишите параметры для подключенния ниже</center>
    <table border=\"0\" align=\"center\" cellpadding=\"0\" cellspacing=\"10\">
    <FORM action=install.php method=post>
    <TR><td>DB host</td><TD><INPUT size=20 name=host value=localhost></TD></TR>
    <TR><td>DB username</td><TD><INPUT size=20 name=user></TD></TR>
    <TR><td>DB password</td><TD><INPUT size=20 name=pass></TD></TR>
    <TR><td>DB name</td><TD><INPUT size=20 name=name></TD></TR>
    <TR><TD><INPUT type=hidden value=1 name=state> <INPUT type=submit value=\"Далее...\"></TD></TR>
    </FORM>
    </table>
    <h2>ВНИМАНИЕ!!!</h2>
    <b>Перед установкой, найдите файл setup.php и дайте ему права на запись (777)</b>
    ";
    exit;
    }


    if ($state == "1") {

    $fr=fopen("setup.php","w+");
    fwrite($fr, '<'."?\n");
    fwrite($fr, 'error_reporting(0);'."\n");
    fwrite($fr, '$dbhost="'.$host.'";'."\n");
    fwrite($fr, '$dbuname="'.$user.'";'."\n");
    fwrite($fr, '$dbpass="'.$pass.'";'."\n");
    fwrite($fr, '$dbname="'.$name.'";'."\n");
    fwrite($fr, 'mysql_connect($dbhost, $dbuname, $dbpass) or die("<br><br><center><br><br><b>Извините, но в данный момент существует проблема с подключением к MySQL серверу.<br><br>Приносим свои извинения, просим Вас зайти немного позже.</center></b>");'."\n");
    fwrite($fr, 'mysql_select_db($dbname);'."\n");
    fwrite($fr, '?'.'>');
    fclose($fr);
    echo"Создание файла настроек.....ОК <br>";


    $table1 = "CREATE TABLE `game_bank` (
    `name` varchar(10) NOT NULL default 'ttuz',
    `bank` decimal(12,2) NOT NULL default '0.00',
    `proc` decimal(3,0) NOT NULL default '0'
    ) TYPE=MyISAM;";

    $table2 = "CREATE TABLE `news` (
    `id` int(11) NOT NULL auto_increment,
    `data` varchar(8) NOT NULL default '',
    `news` tinytext NOT NULL,
    PRIMARY KEY (`id`)
    ) TYPE=MyISAM AUTO_INCREMENT=1 ;";

    $table3 = "CREATE TABLE `partner` (
    `pus` varchar(50) default NULL,
    `user` varchar(50) default NULL,
    `data` varchar(8) default NULL,
    `cash` varchar(10) default NULL
    ) TYPE=MyISAM;";

    $table4 = "CREATE TABLE `seting` (
    `alog` varchar(10) NOT NULL default 'admin',
    `apas` varchar(10) NOT NULL default 'admin',
    `adm_email` varchar(200) NOT NULL default '',
    `cas_url` varchar(200) NOT NULL default 'http://',
    `cas_name` varchar(40) NOT NULL default '',
    `mrh_login` varchar(200) NOT NULL default '',
    `mrh_pass1` varchar(200) NOT NULL default '',
    `mrh_pass2` varchar(200) NOT NULL default '',
    `pcash` char(3) NOT NULL default '20',
    `paymail` char(3) NOT NULL default 'yes',
    `regmail` char(3) NOT NULL default 'yes',
    `zakmail` char(3) NOT NULL default 'yes',
    `icq` varchar(10) NOT NULL default '',
    `cas_bon` char(1) NOT NULL default '0'
    ) TYPE=MyISAM;";

    $table5 = "CREATE TABLE `stat_game` (
    `id` int(11) NOT NULL auto_increment,
    `data` varchar(8) NOT NULL default '',
    `vrem` time NOT NULL default '00:00:00',
    `login` varchar(20) NOT NULL default '',
    `balans` varchar(10) NOT NULL default '',
    `stav` char(3) NOT NULL default '',
    `win` varchar(6) NOT NULL default '',
    `game` varchar(20) NOT NULL default '',
    PRIMARY KEY (`id`)
    ) TYPE=MyISAM AUTO_INCREMENT=1 ;";

    $table6 = "CREATE TABLE `stat_pay` (
    `user` varchar(20) NOT NULL default '',
    `data` varchar(8) NOT NULL default '',
    `vremya` time NOT NULL default '00:00:00',
    `inm` varchar(12) NOT NULL default '',
    `outm` varchar(12) NOT NULL default '',
    KEY `data` (`data`)
    ) TYPE=MyISAM;";

    $table7 = "CREATE TABLE `users` (
    `id` int(11) NOT NULL auto_increment,
    `login` varchar(12) default NULL,
    `pass` varchar(12) default NULL,
    `cash` decimal(12,2) default '0.00',
    `cashin` decimal(12,2) default '0.00',
    `cashout` decimal(12,2) default '0.00',
    `email` varchar(50) default NULL,
    `name` varchar(50) default NULL,
    `fam` varchar(50) default NULL,
    `date` varchar(12) default NULL,
    `pcash` varchar(6) default '0.00',
    PRIMARY KEY (`id`)
    ) TYPE=MyISAM AUTO_INCREMENT=1 ;";

    $table8 = "CREATE TABLE `zakaz` (
    `id` int(11) NOT NULL auto_increment,
    `login` varchar(12) default NULL,
    `cash` varchar(30) default NULL,
    `rekvizit` varchar(20) default NULL,
    `sumout` varchar(10) default NULL,
    `flag` char(1) default '1',
    PRIMARY KEY (`id`)
    ) TYPE=MyISAM AUTO_INCREMENT=1 ;";



    include ("setup.php");
    mysql_connect($dbhost, $dbuname, $dbpass);
    mysql_db_query($dbname, $table1);
    echo"Создание Таблицы 1.....ОК <br>";
    mysql_db_query($dbname, $table2);
    echo"Создание Таблицы 2.....ОК <br>";
    mysql_db_query($dbname, $table3);
    echo"Создание Таблицы 3.....ОК <br>";
    mysql_db_query($dbname, $table4);
    echo"Создание Таблицы 4.....ОК <br>";
    mysql_db_query($dbname, $table5);
    echo"Создание Таблицы 5.....ОК <br>";
    mysql_db_query($dbname, $table6);
    echo"Создание Таблицы 6.....ОК <br>";
    mysql_db_query($dbname, $table7);
    echo"Создание Таблицы 7.....ОК <br>";
    mysql_db_query($dbname, $table8);
    echo"Создание Таблицы 8.....ОК <br>";

    $sql1 = "INSERT INTO `seting` VALUES ('admin', 'admin', '', 'http://', '', '', '', '', '20', 'yes', 'yes', 'yes', '', '0');";
    mysql_query($sql1);
    $sql2 = "INSERT INTO `game_bank` VALUES ('ttuz', '0', '90');";
    mysql_query($sql2);
    echo"Заполнение Таблиц.....ОК <br><br><br>";

    echo "<b>ПОЗДРАВЛЯЕМ! УСТАНОВКА УСПЕШНО ЗАВЕРШЕНА!<br><br>ВНИМАНИЕ: ТЕПЕРЬ КОГДА УСТАНОВКА УСПЕШНО ЗАВЕРШЕНА, ОБЯЗАТЕЛЬНО УДАЛИТЕ ФАЙЛ INSTALL.PHP <br>ИЗ КОРНЕВОГО КАТАЛОГА САЙТА (ЭТО ЗАЩИТИТ ВАС ОТ ВЗЛОМА)!!!<br><br><br>Войдите в панель администратора и смените логин и пароль администратора!<br>

    </b>";
    }

    ?>
     
  2. nws

    nws Гость

    чтобы понять почему не работает скрипт надо просмотреть ошибки, а у тебя они отключены:

    error_reporting(0); -> error_reporting(10);

    после каждого query -> mysql_query($sql1) or die('gliu4it 1-ii: '.mysql_error());

    едем дальше...

    mysql_db_query($dbname, $table1);
    echo"Создание Таблицы 1.....ОК <br>";

    в даннном случае echo отработает по-любому даже если таблица не была создана, правильно будет:

    if (mysql_db_query($dbname, $table1))
    {
    echo"Создание Таблицы 1.....ОК <br>";
    }else{
    die('Create first table failed! '.mysql_error())
    }


    >>include ("setup.php");
    Зачем если это просто текстовый файл ? легче создать, например, - config.php и в нем руками вбивать настройки
    и в данном случае надо использовать require_once, разница в том что если файла не будет, выполнения скрипта прекратится, в твоем случае без этого файла не имеет смысла продолжать выполнения сценария


    >>ВНИМАНИЕ: ТЕПЕРЬ КОГДА УСТАНОВКА УСПЕШНО ЗАВЕРШЕНА, ОБЯЗАТЕЛЬНО УДАЛИТЕ ФАЙЛ INSTALL.PHP
    не выводи этот message в конце сам удаляй его + мессагу файл должен иметь права RWX
     
Загрузка...

Поделиться этой страницей