PHP mysql Highcharts implements pie chart
PHP mysql Highcharts implements pie chart

Mysql
First, we create a chart_pie table as statistical data.
-- edit http://www.lai18.com -- 表的结构 `chart_pie` -- CREATE TABLE IF NOT EXISTS `chart_pie` ( `id` int(11) NOT NULL AUTO_INCREMENT, `title` varchar(30) NOT NULL, `pv` int(10) NOT NULL, PRIMARY KEY (`id`) ) ENGINE=MyISAM DEFAULT CHARSET=utf8 AUTO_INCREMENT=7 ; -- -- 转存表中的数据 `chart_pie` -- INSERT INTO `chart_pie` (`id`, `title`, `pv`) VALUES (1, '百度', 1239), (2, 'google', 998), (3, '搜搜', 342), (4, '必应', 421), (5, '搜狗', 259), (6, '其他', 83);
PHP
In pie.php we need to generate data for the front-end call (reference: http://www.lai18.com/content/409203.html):
/* edit http://www.lai18.com * PHP代码 */ $query = mysql_query(select * from chart_pie); while($row = mysql_fetch_array($query)){ $arr[] = array( $row['title'],intval($row['pv']) ); } $data = json_encode($arr); jQuery $(function() { $('#highcharts').highcharts({ chart: { renderTo: 'chart_pie', //饼状图关联html元素id值 defaultSeriesType: 'pie', //默认图表类型为饼状图 plotBackgroundColor: '#ffc', //设置图表区背景色 plotShadow: true //设置阴影 }, title: { text: '搜索引擎统计分析' //图表标题 }, credits: { text: 'jb51.net' }, tooltip: { formatter: function() { //鼠标滑向图像提示框的格式化提示信息 return '<b>' + this.point.name + '</b>: ' + twoDecimal(this.percentage) + ' %'; } }, plotOptions: { pie: { allowPointSelect: true, //允许选中,点击选中的扇形区可以分离出来显示 cursor: 'pointer', //当鼠标指向扇形区时变为手型(可点击) //showInLegend: true, //如果要显示图例,可将该项设置为true dataLabels: { enabled: true, //设置数据标签可见,即显示每个扇形区对应的数据 color: '#000000', //数据显示颜色 connectorColor: '#999', //设置数据域扇形区的连接线的颜色 style: { fontSize: '12px' //数据显示的大小 }, formatter: function() { //格式化数据 return '<b>' + this.point.name + '</b>: ' + twoDecimal(this.percentage) + ' %'; //return '<b>' + this.point.name + '</b>: ' + this.y ; } } } }, series: [{ //数据列 name: 'search engine', data: data //核心数据列来源于php读取的数据并解析成JSON }] }); });
In addition, when formatting data, if you want to display a percentage, you can use this.percentage. Highcharts will automatically convert integers into percentages. If you want to display the amount of data, use this.y directly.
The percentage code is as follows:
formatter: function() { //格式化数据 return '<b>' + this.point.name + '</b>: ' + twoDecimal(this.percentage) + ' %'; }
The actual data is like this:
/* edit http://www.lai18.com * JS代码 */ formatter: function() { //格式化数据 return '<b>' + this.point.name + '</b>: ' + this.y ; }
Finally, we need to keep two decimal places, the code is posted below:
function twoDecimal(x) { //保留2位小数 var f_x = parseFloat(x); if (isNaN(f_x)) { alert('错误的参数'); return false; } var f_x = Math.round(x * 100) / 100; var s_x = f_x.toString(); var pos_decimal = s_x.indexOf('.'); if (pos_decimal < 0) { pos_decimal = s_x.length; s_x += '.'; } while (s_x.length <= pos_decimal + 2) { s_x += '0'; } return s_x; }
Bar charts, pie charts, line charts, etc. are all the same.
More JS plugins
"JQuery Common Plug-in Tutorial" series of technical articles organized and collected
1 Detailed description of image lazy loading technology using jquery plug-in
2 Pure JAVASCRIPT chart animation plug-in Highcharts Examples
3Highcharts-A powerful charting library application
4Highcharts option configuration detailed documentation
5 Use Highcharts to generate line charts and curve charts
6 Use Highcharts to generate histograms
7 Use Highcharts combined with PHP and Mysql to generate pie charts
8 Use Highcharts to realize the integration of bar chart, pie chart and curve chart into one
9jQuery Timeline Plugin: jQuery Timelinr
10Zclip: Copy page content to clipboard compatible with all browsers
11Highcharts Very practical Javascript statistical chart demo example
12iPictrue: Picture annotation tips
13 Use jquery.qrcode to generate QR code
14 Repair of excess decimal digits bug in Highcharts report plug-in
15 Schedule FullCalendar
16FullCalendar calendar plug-in documentation
17FullCalendar application - reading JSON data
18FullCalendar App - Create a new schedule event
19FullCalendar App - Edit and delete calendar events
20FullCalendar App - Drag and save in real time
21JQuery Highcharts method to dynamically generate charts
22FullCalendar App - Integrating lunar solar terms and festivals
23Highcharts chart library usage tutorial [Highcharts detailed parameter configuration]
24 A brief analysis of jquery’s js chart component highcharts
25 An image lazy loading plug-in implemented using jquery (including image lazy loading principle)
26 Introduction to AMD asynchronous module definition and how to use jQuery and jQuery plug-ins in Require.js
27 Use jquery.upload.js to implement asynchronous upload sample code
28 Examples of using jquery.qrcode to generate color QR codes
29 Use the jquery.validate custom method to implement logical verification of filling in at least one mobile number or landline number
30 Use jQuery.wechat to build WeChat WEB application
31 Use JQ to write the most basic fade-in and fade-out effect with demonstration animation
32 Use jquery menu plug-in HoverTree to imitate Jingdong unlimited menu
33 Use jQuery jqPlot plugin to draw histogram
34SyntaxHighlighter 3.0.83 usage notes
35 date pickers with memo function based on jQuery
36 JavaScript face detection implementation method
37jQuery lazy loading (lazy loading) plug-in – jquery.lazyload.js
38 Method to get the selected node of zTree on the parent page
39 Use jquery component qrcode to generate QR code and application guide
40jQuery Highcharts Line Chart Case Analysis
41 Solution to jquery.uploadify plug-in frequently crashing in chrome browser
42jQuery.Highcharts.js draws histogram pie chart curve chart
43jQuery implements exquisite multi-level drop-down menu effects
44jQuery realizes the animation effect of adding to shopping cart and flying in
45jQuery slidereveal realizes panel sliding side display effect
46PHP mysql Highcharts generates pie chart
47 Detailed explanation of using the JQuery upload plug-in Uploadify in AspNet
Confirmation box using JQuery boxy plug-in in 48AspNet
49 How to use jqchart to display charts after ajax reads the data

Effective methods to prevent session fixed attacks include: 1. Regenerate the session ID after the user logs in; 2. Use a secure session ID generation algorithm; 3. Implement the session timeout mechanism; 4. Encrypt session data using HTTPS. These measures can ensure that the application is indestructible when facing session fixed attacks.

Implementing session-free authentication can be achieved by using JSONWebTokens (JWT), a token-based authentication system where all necessary information is stored in the token without server-side session storage. 1) Use JWT to generate and verify tokens, 2) Ensure that HTTPS is used to prevent tokens from being intercepted, 3) Securely store tokens on the client side, 4) Verify tokens on the server side to prevent tampering, 5) Implement token revocation mechanisms, such as using short-term access tokens and long-term refresh tokens.

The security risks of PHP sessions mainly include session hijacking, session fixation, session prediction and session poisoning. 1. Session hijacking can be prevented by using HTTPS and protecting cookies. 2. Session fixation can be avoided by regenerating the session ID before the user logs in. 3. Session prediction needs to ensure the randomness and unpredictability of session IDs. 4. Session poisoning can be prevented by verifying and filtering session data.

To destroy a PHP session, you need to start the session first, then clear the data and destroy the session file. 1. Use session_start() to start the session. 2. Use session_unset() to clear the session data. 3. Finally, use session_destroy() to destroy the session file to ensure data security and resource release.

How to change the default session saving path of PHP? It can be achieved through the following steps: use session_save_path('/var/www/sessions');session_start(); in PHP scripts to set the session saving path. Set session.save_path="/var/www/sessions" in the php.ini file to change the session saving path globally. Use Memcached or Redis to store session data, such as ini_set('session.save_handler','memcached'); ini_set(

TomodifydatainaPHPsession,startthesessionwithsession_start(),thenuse$_SESSIONtoset,modify,orremovevariables.1)Startthesession.2)Setormodifysessionvariablesusing$_SESSION.3)Removevariableswithunset().4)Clearallvariableswithsession_unset().5)Destroythe

Arrays can be stored in PHP sessions. 1. Start the session and use session_start(). 2. Create an array and store it in $_SESSION. 3. Retrieve the array through $_SESSION. 4. Optimize session data to improve performance.

PHP session garbage collection is triggered through a probability mechanism to clean up expired session data. 1) Set the trigger probability and session life cycle in the configuration file; 2) You can use cron tasks to optimize high-load applications; 3) You need to balance the garbage collection frequency and performance to avoid data loss.


Hot AI Tools

Undresser.AI Undress
AI-powered app for creating realistic nude photos

AI Clothes Remover
Online AI tool for removing clothes from photos.

Undress AI Tool
Undress images for free

Clothoff.io
AI clothes remover

Video Face Swap
Swap faces in any video effortlessly with our completely free AI face swap tool!

Hot Article

Hot Tools

SublimeText3 English version
Recommended: Win version, supports code prompts!

ZendStudio 13.5.1 Mac
Powerful PHP integrated development environment

Safe Exam Browser
Safe Exam Browser is a secure browser environment for taking online exams securely. This software turns any computer into a secure workstation. It controls access to any utility and prevents students from using unauthorized resources.

SublimeText3 Chinese version
Chinese version, very easy to use

EditPlus Chinese cracked version
Small size, syntax highlighting, does not support code prompt function
