Τεκμηρίωση:

Επιστροφή
Εγχειρίδιο χρήσης του phpchartPlus
Τσιαβός Χρήστος <[email protected]>
Ημερομηνία: 18-Feb-2005
Άδεια Χρήσης: GPL
3.3.3 Χρησιμοποιώντας τη στρατηγική CacheToPEARDB
προαπαιτεί PEAR DB pear.php.net
Για να χρησιμοποιήσετε τη στρατηγική CacheToPEARDB πρέπει να ακολουθήσετε μια διαδικασία 4 βημάτων:
1. Δημιουργήστε τη βάση δεδομένων με ένα πίνακα 3 πεδίων στον οποίο θα αποθηκευτούν το όνομα του αποθηκευμένου διαγράμματος, τα δεδομένα του(σε δυαδική μορφή) και ο χρόνος τροποποίησης του
2. Εισάγετε το σενάριο the CacheToPEARDB_Strategy.php στο σενάριο παραγωγής του διαγράμματος
3. Αρχικοποιήστε την κλάση CacheToPEARDB Strategy
4. Καθορίστε τη στρατηγική του θα ακολουθήσει η αρχικοποιημένη phpchartPlus κλάση με την CacheToPEARDB περνώντας ως παραμέτρους:
  • το χρονικό διάστημα εγκυρότητας (σε λεπτά) του αποθηκευμένου αντιγράφου.
  • τις παραμέτρους σύνδεσης με τη βάση δεδομένων
Για να καθορίσετε τις παραμέτρους σύνδεσης με τη βάση δεδομένων χρειάζεστε έναν πίνακα 9 θέσεων με τα ακόλουθα κλειδιά ορισμένα:

- DB_Type: το όνομα του διακομιστή της βάσης δεδομένων (mysql,pgsql etc)
- DB_Username: το όνομα του χρήστη της βάσης δεδομένων
- DB_Passwd: το συνθηματικό του χρήστη της βάσης δεδομένων
- DB_Host: το domain name ή το ip number του διακομιστή της βάσης δεδομένων
- DB_Name: το όνομα της βάσης δεδομένων
- Field_ImageName: το όνομα του πεδίου του πίνακα της βάσης δεδομένων που κρατά το όνομα του αποθηκευμένου διαγράμματος
- Field_ImageData: το όνομα του πεδίου του πίνακα της βάσης δεδομένων που κρατά τα δεδομένα (σε δυαδική μορφή) του αποθηκευμένου αντιγράφου
- Field_ImageModification: το όνομα του πεδίου το πίνακα της βάσης δεδομένων που κρατά τον χρόνο τροποποίησης του διαγράμματος.
τμήμα κώδικα από το σενάριο: "Examples/example.php"
include("../Sources/phpchartPlus.php");
include("../Sources/CacheToPEARDB_Strategy.php");
include("../Sources/XMLData_Strategy.php");
include("../Sources/PHPConfig_Strategy.php");


$CacheParams=array("DB_Type"=>"",
"DB_Username"=>"",
"DB_Passwd"=>"",
"DB_Host"=>"",
"DB_Name"=>"",
"DB_Table"=>"",
"Field_ImageName"=>"",
"Field_ImageData"=>"",
"Field_ImageModification"=>"");

$DataParams=array("filename"=>"../Data/ChartData.xml");

$ConfigParams=array("ImageWidth"=>420,
"ImageHeight"=>300,
"ImageOutputType"=>"png",
"ChartTitle"=>"Web Servers Usage",
"ChartType"=>"Area",
"ChartUseBlending"=>"Yes",
"ChartUseAntialias"=>"Yes",
"ChartHmargin"=>30,
"ChartVmargin"=>25,
"ChartUseStatus"=>"Yes",
"ChartBgImage"=>"../Data/bgimage.png",
"ImageColor_Start"=>"DimGray",
"ImageColor_Finish"=>"DimGray",
"ImageColor_Alpha"=>70,
"ChartColor_Start"=>"DimGray",
"ChartColor_Finish"=>"FloralWhite",
"ChartColor_Alpha"=>50,
"FontColor"=>"White",
"FontWidth"=>3,
"FontHeight"=>3,
"LegendColors"=>array("DarkRed,Yellow","Black,DarkGreen"),
"LegendColors_Alpha"=>array(30,60),
"GridNum"=>4,
"GridMinValue"=>0,
"GridMaxValue"=>100,
"GridColor"=>"Black");

$DataStrategy=new XMLData_Strategy();
$ConfigStrategy=new PHPConfig_Strategy(
);
$CacheStrategy=new CacheToPEARDB_Strategy();

$im=new phpchartPlus();

try
{
$im->DataParser_->strategize($DataStrategy,$DataParams);
$im->DataParser_->parse();
}
catch (DataParser_Exception $e)
{
print $e->getMessage();
exit();
}
catch (DataStrategy_Exception $f)
{
print $f->getMessage();
exit();
}

try
{
$im->ConfigParser_->strategize($ConfigStrategy);
$im->ConfigParser_->parse($ConfigParams);
}
catch (ConfigParser_Exception $e)
{
print $e->getMessage();
exit();
}
catch (ConfigStrategy_Exception $f)
{
print $f->getMessage();
exit();
}

try
{
$im->get_Instance();
}
catch (ImageSupport_Exception $e)
{
print $e->getMessage();
exit();
}
catch (FontSupport_Exception $f)
{
print $f->getMessage();
exit();
}

try
{
$im->Chart_->set_CachingStrategy($CacheStrategy,2,$CacheParams); //Cache for 2 minutes
}
catch (CachingStrategy_Exception $e)
{
print $e->getMessage();
exit();
}


$im->Chart_->draw_Chart();

 

 
Hosted by www.Geocities.ws

1