隨著互聯網的發展,圖形思維導圖在日常辦公和學習中扮演著越來越重要的角色。而jsmind作為一款開源的思維導圖插件,被廣泛應用于各個領域中。而結合PHP,我們可以更加深入地發掘jsmind的強大功能。
一、思維導圖的生成
<!-- 引入jsmind庫 --> <link rel="stylesheet" type="text/css" href="jsmind-master/src/css/jsmind.css"> <script type="text/javascript" src="jsmind-master/src/js/jsmind.js"></script> <script type="text/javascript" src="jsmind-master/src/js/jsmind.draggable.js"></script> <div id="jsmind_container"></div> <script type="text/javascript"> // 創建思維導圖 var mind = { "meta":{ "name":"example", "author":"jsmind", }, "format":"node_array", "data":[ {"id":"root","isroot":true,"topic":"JSMind"}, {"id":"sub1","parentid":"root","topic":"subtopic1"}, {"id":"sub2","parentid":"root","topic":"subtopic2"}, ] }; var options = { container:'jsmind_container', editable:true, theme:'gray', }; var jm = jsMind.show(options, mind); </script>
使用上述代碼可以快速地生成一張簡單的思維導圖。我們可以將jsmind結合PHP來更好地使用。
二、思維導圖的保存
// 獲取jsmind數據 var mind_data = jm.get_data('node_array'); // 將jsmind數據轉換成json格式字符串 var mind_data_str = JSON.stringify(mind_data); // 向php發送請求,將jsmind數據保存到數據庫中 $.ajax({ url: 'save_mind.php', method: 'post', data: {mind_data_str: mind_data_str}, success: function(res){ console.log(res); }, error: function(err){ console.error(err); } });
使用以上代碼,我們可以將生成的思維導圖數據保存到后端數據庫中。在save_mind.php文件中,可以使用以下代碼來處理接收到的數據:
if($_SERVER['REQUEST_METHOD'] == 'POST' && isset($_POST['mind_data_str'])){ $mind_data = json_decode($_POST['mind_data_str'], true); // 連接數據庫,將數據插入到表中 }
三、思維導圖的讀取
// 向php發送請求,獲取保存的jsmind數據 $.ajax({ url: 'get_mind.php', method: 'post', success: function(res){ var mind_data = JSON.parse(res); // 從數據庫中獲取到的數據,直接使用jsmind初始化 var options = { container:'jsmind_container', editable:true, theme:'gray', }; var jm = jsMind.show(options, mind_data); }, error: function(err){ console.error(err); } });
使用以上代碼,我們可以從后端數據庫中獲取已保存的思維導圖數據,然后直接將其初始化為jsmind。
綜上,我們可以非常方便地通過jsmind和php結合來實現思維導圖的生成、保存和讀取,為用戶提供更加便捷的思路整理方式。
下一篇jsflag.php