2013-04-15 2 views
0

Я хочу экспортировать sql и excel файл, используя php из базы данных. попробовал каждый тонкий, найденный здесь, но не работал.экспорт .sql в php

см. Код показывает ошибку «Строгие стандарты: только переменные должны передаваться по ссылке в C: \ xampp \ htdocs \ dan \ index.php Во время экспорта школы было указано ~ ~/one.sql"

<?php 

$mysqlDatabaseName ='school'; 
$mysqlUserName ='root'; 
$mysqlPassword =''; 
$mysqlHostName =''; 
$mysqlExportPath ='one.sql'; 


$command='mysqldump --opt -h' .$mysqlHostName .' -u' .$mysqlUserName .' -p' .$mysqlPassword .' ' .$mysqlDatabaseName .' > ~/' .$mysqlExportPath; 
exec($command,$output=array(),$worked); 
switch($worked){ 
    case 0: 
     echo 'Database <b>' .$mysqlDatabaseName .'</b> successfully exported to <b>~/' .$mysqlExportPath .'</b>'; 
     break; 
    case 1: 
     echo 'There was a warning during the export of <b>' .$mysqlDatabaseName .'</b> to <b>~/' .$mysqlExportPath .'</b>'; 
     break; 
    case 2: 
     echo 'There was an error during export. Please check your values:<br/><br/><table><tr><td>MySQL Database Name:</td><td><b>' .$mysqlDatabaseName .'</b></td></tr><tr><td>MySQL User Name:</td><td><b>' .$mysqlUserName .'</b></td></tr><tr><td>MySQL Password:</td><td><b>NOTSHOWN</b></td></tr><tr><td>MySQL Host Name:</td><td><b>' .$mysqlHostName .'</b></td></tr></table>'; 
     break; 
} 
?> 

ответ

0
  1. укажите полный путь к mysqldump
  2. Если имя хоста и пароль пустым не указать соответствующие параметры
  3. Убедитесь, что экспорт путь доступен для записи

Попробуйте это

$output = array(); 
$worked = 2; 
$command = "/usr/local/mysql/bin/mysqldump --opt"; 
if (!empty($mysqlHostName)) 
    $command .= " -h$mysqlHostName"; 
$command .= " -u$mysqlUserName "; 
if (!empty($mysqlPassword)) 
    $command .= " -p'$mysqlPassword'"; 
$command .= " $mysqlDatabaseName > /tmp/$mysqlExportPath"; 
// your code goes here 

Adjust пути к туздЫшпр и экспортировать папку, соответственно