phpmady Posted February 22, 2010 Share Posted February 22, 2010 Hi, This is the code am using for back uping my DB, i have no problem with Firefox and Chrome, but when it comes to IE7, i couldnt save the file, PLZ Help me, <?php //check list contains TABLE NAMES $check_list = $_GET['check_list']; //CAlling the Function for Back UP tables $handledb = backup_tables($check_list); ?> <span class="formw"><a href="download.php?filename={handledb}">Click Here to save the File</a></span> <?php function backup_tables($tables = '*') { global $DB_site,$tpl; //get all of the tables if($tables == '*') { $tables = array(); $result = mysql_query('SHOW TABLES'); while($row = mysql_fetch_row($result)) { $tables[] = $row[0]; } } else { $tables = is_array($tables) ? $tables : explode(',',$tables); } //cycle through foreach($tables as $table) { $result = mysql_query('SELECT * FROM '.$table); $num_fields = mysql_num_fields($result); $return.= 'DROP TABLE '.$table.';'; $row2 = mysql_fetch_row(mysql_query('SHOW CREATE TABLE '.$table)); $return.= "\n\n".$row2[1].";\n\n"; for ($i = 0; $i < $num_fields; $i++) { while($row = mysql_fetch_row($result)) { $return.= 'INSERT INTO '.$table.' VALUES('; for($j=0; $j<$num_fields; $j++) { $row[$j] = addslashes($row[$j]); $row[$j] = ereg_replace("\n","\\n",$row[$j]); if (isset($row[$j])) { $return.= '"'.$row[$j].'"' ; } else { $return.= '""'; } if ($j<($num_fields-1)) { $return.= ','; } } $return.= ");\n"; } } $return.="\n\n\n"; } //save file with Date and Time $dir= "../bak/"; $day = date("d"); $month = date("m"); $year = date("Y"); $hours = date("h"); $mins = date("i"); $date_time = $day."-".$month."-".$year."-".$hours."-".$mins; $handle = fopen("bak\\".'db-backup-'."$date_time".'.sql','w+'); fwrite($handle,$return); fclose($handle); $handledb = 'db-backup-'."$date_time"; return $handledb; } ?> //Download.php <?php //Get the Filename, $yourfil = $_GET['filename']; //File Type Extension $yourfile = $yourfil.".sql"; [b]//Header Files for Save As Dialog Box header ("Content-Type: application/download"); header("Content-type: application/octet-stream"); header ("Content-Disposition: attachment; filename=$yourfile"); header("Content-Length: " . filesize("$yourfile")); $fp = fopen("bak/$yourfile", "r"); fpassthru($fp);[/b] ?> Thank You Link to comment https://forums.phpfreaks.com/topic/192946-problem-in-saving-the-file-help-me-guys/ Share on other sites More sharing options...
jcanker Posted February 22, 2010 Share Posted February 22, 2010 Maybe I'm missing something or you're doing something I've never tried--Why are you putting curly braces around the GET variable "filename" in the URL link? I suspect that IE is passing those braces as part of the variable value. Link to comment https://forums.phpfreaks.com/topic/192946-problem-in-saving-the-file-help-me-guys/#findComment-1016422 Share on other sites More sharing options...
phpmady Posted February 23, 2010 Author Share Posted February 23, 2010 am using templatePower thats i used curly braces, in the URl Link to comment https://forums.phpfreaks.com/topic/192946-problem-in-saving-the-file-help-me-guys/#findComment-1016979 Share on other sites More sharing options...
Recommended Posts
Archived
This topic is now archived and is closed to further replies.