هناك النصي PHP التي يمكن تحويل بيانات الجدول HTML إلى أشكال مختلفة؟

StackOverflow https://stackoverflow.com/questions/855980

  •  21-08-2019
  •  | 
  •  

سؤال

وعن طريق PHP، I يمكن تحويل بيانات الخلية أو بيانات الجدول ثابتة إلى CSV، إكسل، JSON، الخلية وما إلى ذلك ولكن هناك سيناريو تحويل مفيد أو الأداة التي يمكن تحويل بيانات الجدول إلى صيغ أخرى المنسقة / نصب مثل PDF و / أو JPG / PNG باستخدام GD مكتبة PHP أو غيرها؟

هل كانت مفيدة؟

المحلول

ولقد استعملت هذا قبل أن تتحول طاولة HTML إلى PDF. I إنشاء جدول من الاستعلام الخلية.

نصائح أخرى

لتصدير إلى Excel يمكنني استخدام التعليمات البرمجية التالية:

<?php

/*  Define our Database and Table Info */


$username="";
$password="";
$database="";
$table="";


mysql_connect(localhost,$username,$password);
@mysql_select_db($database) or die( "Unable to select database");
$select = "SELECT * FROM $table";                
$export = mysql_query($select);
$fields = mysql_num_fields($export);

for ($i = 0; $i < $fields; $i++) {
    $header .= mysql_field_name($export, $i) . "\t";
}

while($row = mysql_fetch_row($export)) {
    $line = '';
    foreach($row as $value) {                                            
        if ((!isset($value)) OR ($value == "")) {
            $value = "\t";
        } else {
            $value = str_replace('"', '""', $value);
            $value = '"' . $value . '"' . "\t";
        }
        $line .= $value;
    }
    $data .= trim($line)."\n";
}
$data = str_replace("\r","",$data);

if ($data == "") {
    $data = "\n(0) Records Found!\n";                        
}

header("Content-type: application/x-msdownload");
header("Content-Disposition: attachment; filename=mailinglist.xls");
header("Pragma: no-cache");
header("Expires: 0");
print "$header\n$data"; 
?> 

والآن كن حذرا مع كيف تدرج هذا. انها تستخدم الرؤوس لإرسال معلومات الملف إلى فرض تحميل، وبذلك لا يمكن أن يكون أي المساحة البيضاء في أي مكان قبل أن يتم إرسال هذه الرؤوس وإلا فإنه قد رمي خطأ. وعادة ما يكون هذا الرابط مفتوحة باعتبارها نافذة جديدة لمنع أي شيء من الحدوث مرة أخرى ... وهذا هو مجرد سيناريو جميلة الأساسية التي يمكن توسيعها إلى حد كبير. ويساعد هذا الأمل!

<?php  

/  Define our Database and Table Info /  

$username="";  
$password="";  
$database="";  
$table="";  

mysql_connect(localhost,$username,$password);  
@mysql_select_db($database) or die( "Unable to select database");  
$select = "SELECT * FROM $table";                  
$export = mysql_query($select);  
$fields = mysql_num_fields($export);  

for ($i = 0; $i < $fields; $i++) {  
    $header .= mysql_field_name($export, $i) . ",";  
}  

while($row = mysql_fetch_row($export)) {  
    $line = '';  
    foreach($row as $value) {                                              
        if ((!isset($value)) OR ($value == "")) {  
            $value = ",";  
        } else {  
            $value = str_replace('"', '""', $value);  
            $value = '"' . $value . '"' . ",";  
        }  
        $line .= $value;  
    }  
    $data .= trim($line)."n";  
}  
$data = str_replace("r","",$data);  

if ($data == "") {  
    $data = "n(0) Records Found!n";                          
}  

header("Content-type: application/x-msdownload");  
header("Content-Disposition: attachment; filename=mailinglist.xls");  
header("Pragma: no-cache");  
header("Expires: 0");  
print "$headern$data";   
?> 
مرخصة بموجب: CC-BY-SA مع الإسناد
لا تنتمي إلى StackOverflow
scroll top