[ damakii @ 22.02.2012. 08:33 ] @
Zdravo, imam problem kod exporta tabele iz mysql baze podataka u excel. Uradim export bez problema, ali mi ne mi umjesto slova čćđ ispisuje upitnike. Kako da ovo riješim? Code: <?PHP $DB_Server = ""; $DB_Username = ""; $DB_Password = ""; $DB_DBName = ""; $DB_TBLName = ""; $sql = "Select * from $DB_TBLName ORDER BY id ASC"; $Use_Title = 1; $now_date = DATE('m-d-Y H:i'); $title = "Dump For Table $DB_TBLName from Database $DB_DBName on $now_date"; $Connect = @MYSQL_CONNECT($DB_Server, $DB_Username, $DB_Password) or DIE("Couldn't connect to MySQL:<br>" . MYSQL_ERROR() . "<br>" . MYSQL_ERRNO()); $Db = @MYSQL_SELECT_DB($DB_DBName, $Connect) or DIE("Couldn't select database:<br>" . MYSQL_ERROR(). "<br>" . MYSQL_ERRNO()); $result = @MYSQL_QUERY($sql,$Connect) or DIE("Couldn't execute query:<br>" . MYSQL_ERROR(). "<br>" . MYSQL_ERRNO()); IF (ISSET($w) && ($w==1)) { $file_type = "msword"; $file_ending = "doc"; }ELSE { $file_type = "vnd.ms-excel"; $file_ending = "xls"; } HEADER("Content-Type: application/$file_type"); HEADER("Content-Disposition: attachment; filename=database_dump.$file_ending"); HEADER("Pragma: no-cache"); HEADER("Expires: 0"); IF (ISSET($w) && ($w==1)) //check for $w again { IF ($Use_Title == 1) { ECHO("$title\n\n"); } $sep = "\n"; //new line character WHILE($row = MYSQL_FETCH_ROW($result)) { $schema_insert = ""; FOR($j=0; $j<mysql_num_fields($result);$j++) { $field_name = MYSQL_FIELD_NAME($result,$j); $schema_insert .= "$field_name:\t"; IF(!ISSET($row[$j])) { $schema_insert .= "NULL".$sep; } ELSEIF ($row[$j] != "") { $schema_insert .= "$row[$j]".$sep; } ELSE { $schema_insert .= "".$sep; } } $schema_insert = STR_REPLACE($sep."$", "", $schema_insert); $schema_insert .= "\t"; PRINT(TRIM($schema_insert)); PRINT "\n----------------------------------------------------\n"; } }ELSE{ IF ($Use_Title == 1) { ECHO("$title\n"); } $sep = "\t"; //tabbed character FOR ($i = 0; $i < MYSQL_NUM_FIELDS($result); $i++) { ECHO MYSQL_FIELD_NAME($result,$i) . "\t"; } PRINT("\n"); WHILE($row = MYSQL_FETCH_ROW($result)) { $schema_insert = ""; FOR($j=0; $j<mysql_num_fields($result);$j++) { IF(!ISSET($row[$j])) $schema_insert .= "NULL".$sep; ELSEIF ($row[$j] != "") $schema_insert .= "$row[$j]".$sep; ELSE $schema_insert .= "".$sep; } $schema_insert = STR_REPLACE($sep."$", "", $schema_insert); $schema_insert = PREG_REPLACE("/\r\n|\n\r|\n|\r/", " ", $schema_insert); $schema_insert .= "\t"; PRINT(TRIM($schema_insert)); PRINT "\n"; } } ?> |