Выдрать sql код из php

Discussion in 'PHP' started by Ali_MiX, 12 Jan 2008.

  1. Ali_MiX

    Ali_MiX Elder - Старейшина

    Joined:
    8 Oct 2006
    Messages:
    377
    Likes Received:
    67
    Reputations:
    -2
    Доброго времени суток.
    У меня такая шляпа, есть php скрипт, содержит примерно такое
    Code:
    <html>
    <head>
    <title>Блок Он-Лайн, версия 2.3  - Выполнение SQL запросов (Установка)</title>
    <meta http-equiv="content-type" content="text/html; charset=windows-1251">
    <style type="text/css">
    html,body{
    height:100%;
    background: #FFFFFF;
    font-size: 11px;
    font-family: tahoma;
    color:#676767;
    }
    
    table{
    border:0px;
    border-collapse:collapse;
    }
    
    a {
    text-decoration: underline;
    font-size: 11px;
    font-family: tahoma;
    color:#4494c3;
    }
    
    table td{
    padding:0px;
    font-size: 11px;
    font-family: tahoma;
    color:#676767;
    }
    
    .title, .title a{
    	color: #ffffff;
    	font-size: 12px;
    	font-family: Arial;
    	text-transform:uppercase;
    	font-weight:bold;
    	text-decoration:none;
    }
    
    .info, .info a{
    	font-size: 10px;
    	font-family: tahoma;
    	text-decoration:none;
    }
    
    
    select {
    	font-size: 11px;
    	font-family: tahoma;
    }
    
    
    form {
      PADDING-RIGHT: 0px;
    	PADDING-LEFT: 0px;
    	PADDING-BOTTOM: 0px;
    	MARGIN: 0px;
    	PADDING-TOP: 0px;
    }
    </style>
    
    </head>
    
    <body leftmargin="0" topmargin="0" marginheight="0" marginwidth="0">
    
    <?PHP
    
    error_reporting(7);
    ini_set('display_errors', true);
    ini_set('html_errors', false);
    
    define('DATALIFEENGINE', true);
    define('ROOT_DIR', dirname (__FILE__));
    define('ENGINE_DIR', ROOT_DIR.'/engine');
    
    
    require_once(ENGINE_DIR.'/inc/mysql.php');
    require_once(ENGINE_DIR.'/data/dbconfig.php');
    
    $config['charset'] = "windows-1251";
    $db_charset = "cp1251";
    $db_collate = "cp1251_general_ci";
    
    $tableSchema = array();
    
    // Если таблица найдена, то удаляем таблицу из БД
    $tableSchema[] = "DROP TABLE IF EXISTS `" . PREFIX . "_online`";
    
    // Создаём таблицу
    $tableSchema[] = "
    CREATE TABLE `" . PREFIX . "_online` (
      `uid` int(10) unsigned NOT NULL default '0',
      `session` char(32) NOT NULL,
      `lastdate` int(10) unsigned NOT NULL default '0',
      `location` varchar(255) NOT NULL,
      `useragent` char(100) NOT NULL,
      `ip` char(15) default NULL,
      `proxy` char(15) default NULL,
      PRIMARY KEY  (`session`),
      KEY `idx` (`uid`)
    ) TYPE=MyISAM /*!40101 DEFAULT CHARACTER SET {$db_charset} COLLATE {$db_collate} */";
    
    $tableSchema[] = "ALTER TABLE `" . PREFIX . "_users`
    ADD `country` VARCHAR( 50 ) NOT NULL AFTER `land` ,
    ADD `city` VARCHAR( 50 ) NOT NULL AFTER `country`,
    ADD `useragent` CHAR( 100 ) NOT NULL AFTER `hash`,
    ADD `logged_proxy` CHAR( 15 ) NOT NULL AFTER `logged_ip`,
    ADD `location` VARCHAR( 255 ) NOT NULL";
    
    if(!$db = @mysql_connect(DBHOST, DBUSER, DBPASS))
    	die('<font size=+1>An Error Occurred</font><hr>Unable to connect to the database. <BR>Check dbhost, dbhost, and dbpass in dbconfig.php.');
    if(!@mysql_select_db(DBNAME,$db))
    	die("<font size=+1>An Error Occurred</font><hr>Unable to find the database <b>$dbname</b> on your MySQL server.");
    
    foreach($tableSchema as $table) {
    	$result = mysql_query($table) or die("Error:<b> ". mysql_error()." </b>in file <b>".__FILE__."</b> on line <b>".__LINE__);
    }
    
    echo<<<HTML
    <div style="padding:40px; text-align:center;">Выполнение SQL запросов было успешно завершено.<br />Удалите файл 
    HTML;
    echo __FILE__;
    ?>
    </div>
    </body>
    </html>
    
    Нужно выдрать код sql из php в отдельный файл .sql
    Как это всё провернуть?
     
  2. AkyHa_MaTaTa

    AkyHa_MaTaTa Elder - Старейшина

    Joined:
    19 Mar 2007
    Messages:
    558
    Likes Received:
    306
    Reputations:
    27
    дык:
    Вместо константы PREFIX ставишь свой префикс, вообще посмотри что в ней - echo constant("PREFIX"), таблица _users - должна существовать. Ковычки " " уберешь.
     
  3. Helios

    Helios Elder - Старейшина

    Joined:
    14 Jan 2007
    Messages:
    414
    Likes Received:
    180
    Reputations:
    103
    Выполни скрипт и сделай дамп полученной базы
     
    1 person likes this.
  4. Ali_MiX

    Ali_MiX Elder - Старейшина

    Joined:
    8 Oct 2006
    Messages:
    377
    Likes Received:
    67
    Reputations:
    -2
    так вот именно скрипт не выполняется, sql надо отсюда взять
     
  5. Ali_MiX

    Ali_MiX Elder - Старейшина

    Joined:
    8 Oct 2006
    Messages:
    377
    Likes Received:
    67
    Reputations:
    -2
    норма разобрался, можно удалять.