نمایش نتایج 1 تا 8 از 8

نام تاپیک: اکسپورت به اکسل

  1. #1
    کاربر دائمی
    تاریخ عضویت
    خرداد 1388
    محل زندگی
    تهران
    پست
    386

    اکسپورت به اکسل

    سلام
    من نحوه اکسپورت کردن به اکسل رو در PHP می خوام. البته داده ها هم در دیتابیس قرار داره.

    با تشکر

  2. #2

    نقل قول: اکسپورت به اکسل

    کلاس php exel رو بگیر باهاش اکسل بده بیرون .. کمی سخته ولی اگه خیلی راحتتر میخوای . CSV درست کن ... به این ترتیب که شما برای جداسازی هر خانه از هم باید از ( ; ) استفاده کنی ... و هر سطر درواقع یک خط هستش .. بطور مثال این الان 4 خانه و 4 سطر داره :


    1;2;3;4
    5;6;7;8
    9;10;11;12
    13;14;15;16

    اگه الان اینو توی یک فایل بریزی و اسمشو بذاری test.csv و با اکسل بازش کنی ساختار اکسل رو داره

  3. #3
    کاربر دائمی
    تاریخ عضویت
    خرداد 1388
    محل زندگی
    تهران
    پست
    386

    نقل قول: اکسپورت به اکسل

    ممنون
    کلاسی رو که معرفی کردید از کجا دانلود کنم؟

  4. #4

    نقل قول: اکسپورت به اکسل

    نقل قول نوشته شده توسط MostafaEs3 مشاهده تاپیک
    کلاس php exel رو بگیر باهاش اکسل بده بیرون .. کمی سخته ولی اگه خیلی راحتتر میخوای . CSV درست کن ... به این ترتیب که شما برای جداسازی هر خانه از هم باید از ( ; ) استفاده کنی ... و هر سطر درواقع یک خط هستش .. بطور مثال این الان 4 خانه و 4 سطر داره :


    1;2;3;4
    5;6;7;8
    9;10;11;12
    13;14;15;16

    اگه الان اینو توی یک فایل بریزی و اسمشو بذاری test.csv و با اکسل بازش کنی ساختار اکسل رو داره
    من چک کردم نشد

  5. #5

    نقل قول: اکسپورت به اکسل

    من همین الان تست کردم جواب میده ! البته روی آفیس 2010 ... اینم فایلش : http://test.gsmeshop.com/1.csv

    ممنون
    کلاسی رو که معرفی کردید از کجا دانلود کنم؟
    برید توی phpclasses ... این آدرس دسته بندی هستش : http://www.phpclasses.org/browse

    اینجا سرچ کنید Exel ... برای دانلود نیاز به یک اکانت دارید ... اکانت رو بسازید تا آخر عمر بدردتون میخوره !

  6. #6

    نقل قول: اکسپورت به اکسل

    خب چطری هر عدد رو در یه خانه جدا بزاریم ؟
    این همشو توی یه خونه میزاره

  7. #7
    کاربر دائمی
    تاریخ عضویت
    آذر 1387
    محل زندگی
    اهل کاشانم
    پست
    746

    نقل قول: اکسپورت به اکسل


  8. #8

    نقل قول: اکسپورت به اکسل

    <?php
    class connectdb
    {
    function query($sql)
    {
    $host = "localhost";
    $user= "user-name-of-database";
    $password = "password-of-database";
    $dbname = "name-of-database";
    $connect = mysqli_connect($host,$user, $password,$dbname);
    if($connect)
    {
    if(mysqli_select_db($connect, $dbname))
    {

    mysqli_query($connect, "SET NAMES utf8");
    mysqli_query($connect, "set charset utf8");
    mysqli_query($connect,"SET character_set_results = 'utf8', character_set_client = 'utf8', character_set_connection = 'utf8', character_set_database = 'utf8', character_set_server = 'utf8'");
    $result = mysqli_query($connect, $sql);
    return $result;
    }
    }
    }
    }
    require 'function/filter.php';
    $connect = new connectdb;
    $check = new secu;

    // ایجاد خروجی فایل اکسل
    $table_name = 'tbl_user';

    $sql = "select * from $table_name ";
    $result = $connect->query($sql);
    //$row = mysqli_fetch_assoc($result);

    //$select_db = mysql_select_db($db_name, $link);
    $host = "localhost";
    $user= "user_admin";
    $password = "123";
    $dbname = "db_sait_j";
    $connect = mysqli_connect($host,$user, $password,$dbname);
    mysqli_query($connect, "SET NAMES utf8");

    //$query = "SELECT * FROM " . $table_name;
    //$result = mysql_query($query, $link) or die("Could not complete database query");
    $tedade_record = mysqli_num_rows($result);
    $tedade_field=mysqli_num_fields($result);
    //$query="SHOW COLUMNS FROM ".$table_name;

    //echo "tedade_record : ".$tedade_record."<br>";
    //echo "tedade_field : ".$tedade_field."<br>";
    //$result1=mysql_query($query);

    //echo chr_utf8(9405).chr_utf8(9402).chr_utf8(9409).chr_u tf8(9409).chr_utf8(9412);

    // با کد زیر، فارسی درست میشود اما سلول های جدول را به هم می چسباند
    //echo "\xEF\xBB\xBF"; //UTF-8 BOM
    //echo "\xEF\xBF"; //UTF-8 BOM

    // تابع بدست آوردن نام فیلدها
    function mysqli_field_name($result, $field_offset) {
    $properties = mysqli_fetch_field_direct($result, $field_offset);
    return is_object($properties) ? $properties->name : null;
    }

    $name_field="";
    $data="";
    for ($i = 0; $i < $tedade_field; $i++) {
    $name_field .= mysqli_field_name($result, $i) . "\t";}
    while($row = mysqli_fetch_row($result)) {
    $satr_line_record = '';
    foreach($row as $val) {
    if ((!isset($val)) OR ($val == "")) {
    $val = "\t";
    } else {

    //$val = str_replace('"', '""', $val);
    // به احتمال قوی انکودینگ ما یا BDSKBD است یا WINDOWS-1251


    //با کد زیر یونیکد نشان میده
    //$val = utf8_encode($val);

    //$val = tabdil_farsi($val);

    /* Convert WINDOWS-1251 to UTF-8 */
    //$val = mb_convert_encoding($val, 'utf-8', 'WINDOWS-1251');
    //$val = iconv(mb_detect_encoding($val, mb_detect_order(), true), "UTF-8", $val);

    // یافتن انکودینگ
    //echo mb_detect_encoding($val, "auto")."<br>";


    // دو خط زیر با هم هستند
    //$val = mb_convert_encoding($val, 'UTF-8', mb_detect_encoding($val));
    //$val = mb_convert_encoding($val, 'UTF-8',mb_detect_encoding($val, 'UTF-8, ASCII', true));
    //$val = htmlentities($val, ENT_QUOTES, 'UTF-8', false);



    //$val = iconv('WINDOWS-1251', 'UTF-8', $val);


    $val = '"' . $val . '"' . "\t";


    }
    // val مقدار هر یک سلول این جدول است
    // با کنار هم گذاشتن این سلول ها، یک رکورد یا بعبارتی یک سطر این جدول را تشکیل میدهیم
    $satr_line_record .= $val;
    //echo "<script>var url = '$val'; alert('val: ' + url); </script>";
    //echo "<script>var url = '$satr_line_record'; alert('satr_line_record: ' + url); </script>";
    }
    // با زیر هم قرار دادن این سطرها کل این جدول را تشکیل میدهیم
    $data .= trim($satr_line_record)."\n";
    //echo utf8_encode($name_field\n$data);
    //echo "<script>var url = '$data'; alert('data: ' + url); </script>";
    }
    $data = str_replace("\r","",$data);
    //$data = mb_convert_encoding($data,'utf-8','windows-1251');

    if ($data == "") {
    $data = "\n(0) Records Found!\n";
    }
    header("Content-type: application/x-msdownload");
    header("Content-Disposition: attachment; filename=Report.xls");
    header('Content-Type: text/html; charset=UTF-8');
    header("Content-type: application/octetstream");
    header("Pragma: no-cache");
    header("Expires: 0");
    //print "\xEF\xBB\xBF"; //UTF-8 BOM
    //print "$name_field\n$data";

    // با این کد درست شد
    print chr(255) . chr(254) . mb_convert_encoding("$name_field\n$data", 'UTF-16LE', 'UTF-8');
    //print_r(iconv('UTF-8', 'ASCII//TRANSLIT', $name_field\n$data));
    //print utf8_encode($name_field\n$data);

    //echo mb_convert_encoding($name_field\n$data,'utf-16','utf-8');
    ?>

قوانین ایجاد تاپیک در تالار

  • شما نمی توانید تاپیک جدید ایجاد کنید
  • شما نمی توانید به تاپیک ها پاسخ دهید
  • شما نمی توانید ضمیمه ارسال کنید
  • شما نمی توانید پاسخ هایتان را ویرایش کنید
  •