2

我使用 MySQL DBMS 来存储我的数据。我有很多数学数据要输入数据库。我想以乳胶的形式输入数学数据是一个最佳选择。(如果您认为其他解决方案会更好,请随时提出建议)。我们使用 PHPMyAdmin 将数据输入 MySQL。现在的事情是因为我们正在输入大量的数学数据。最好看看我们正在输入什么。与 math.stackexchange.com 的实时预览完全相似。这就是 Mathjax 发挥作用的地方。现在最大的问题是如何将 Mathjax 支持集成到 PHPMyAdmin?

如果你想要一个例子,这里就是我们想要输入数据库的那种东西:

在第一年的微积分中,我们定义了诸如 $(u, v)$ 和 $(u, \infty)$ 之类的区间。如果 $a$ 在区间内,那么这样的区间就是 $a$ 的 \emph{neighborhood}。学生应该意识到$\infty$ 只是一个符号,而不是一个数字。这很重要,因为我们很快就会引入诸如 $\lim_{x \to \infty} f(x)$ 之类的概念。

当我们引入导数 [ \lim_{x \to a} \frac{f(x) - f(a)}{x - a}, ] 时,我们假设函数在 $a$ 的邻域中是定义的并且是连续的.

4

2 回答 2

4

我找到了解决方案。您可以使用此链接下载修改后的 PHPMyAdmin 发行版(它不会永远可用)。我将描述我所做的更改。如果您愿意,您可以自己重复它们。

这是它的样子:

截屏

当您创建新条目或编辑现有条目时,该脚本将在“插入”选项卡上运行。该脚本将适用于所有文本区域(多行编辑字段)。在您更改 textarea 中的某些内容并将焦点移出它(通过单击)后,将在此 textarea 上方创建文本块。Textarea 的内容复制到这个块中。如果有一些公式,它们将由 MathJax 呈现。请耐心等待:第一次它会缓慢工作,几秒钟后会替换公式。

步骤 1. 下载最新版本的 PHPMyAdmin。

我已经用最新版本的 PHPMyAdmin(现在是 3.5.1)测试了我的代码。它可以与旧版本一起使用,但我没有检查。

步骤 2. 下载最新版本的 MathJax 并将其解压缩到<PHPMyAdmin_Directory>/js/mathjax/distrib.

您可以从官方网站下载 MathJax 2.0 。在名为 PHPMyAdmin 的目录文件夹中创建js/mathjax/distrib并将 MathJax 解压到此文件夹中。您现在必须有现有文件js/mathjax/distrib/MathJax.js

步骤 3. 将配置文件复制js/mathjax/distrib/config/default.jsjs/mathjax/distrib/config/myconfig.js.

第 4 步。在myconfig.js文件中更改您网站的设置。

找到这个部分:

tex2jax: {

    //
    //  The delimiters that surround in-line math expressions.  The first in each
    //  pair is the initial delimiter and the second is the terminal delimiter.
    //  Comment out any that you don't want, but be sure there is no extra
    //  comma at the end of the last item in the list -- some browsers won't
    //  be able to handle that.
    //
    inlineMath: [
//    ['$','$'],      // uncomment this for standard TeX math delimiters
      ['\\(','\\)']
    ],

从您的文本示例中,我发现您需要将此设置更改为:

tex2jax: {
    inlineMath: [
      ['$','$'], ['[', ']'], 
      ['\\(','\\)']
    ],

步骤 5. 创建js/mathjax/1.js包含以下内容的文件:

$(function() {
  var preview_number = 0;
  $("textarea").change(function(e) {
    var textarea = $(e.target);
    var d = textarea.prev();
    if (!d.hasClass("mathjax_preview")) {
      preview_number++;
      var d = $("<div class='mathjax_preview' " +
         "style='padding: 5px; color: black; background: #eee; border: 1px solid #888;'" +
         "></div>");
      d.attr("id", "mathjax_preview_" + preview_number);
      d.insertBefore(textarea);
    } 
    d.text(textarea.val());
    MathJax.Hub.Queue([ "Typeset", MathJax.Hub, d.attr("id") ]);
  });
});

步骤 6. 修改tbl_change.php.

tbl_change.php在根 PHPMyAdmin 目录中打开文件并找到此部分:

$GLOBALS['js_include'][] = 'functions.js';
$GLOBALS['js_include'][] = 'tbl_change.js';
$GLOBALS['js_include'][] = 'jquery/jquery-ui-1.8.16.custom.js';
$GLOBALS['js_include'][] = 'jquery/timepicker.js';
$GLOBALS['js_include'][] = 'gis_data_editor.js';

在此下方再添加两行:

$GLOBALS['js_include'][] = 'mathjax/distrib/MathJax.js?config=myconfig';
$GLOBALS['js_include'][] = 'mathjax/1.js';
于 2012-05-10T02:21:41.207 回答
-1

您还可以查看可以连接到各种数据库的 PHP 可编辑数据网格,并支持 Mathjax 作为渲染器。

编辑:http://prntscr.com/g8gu9g 结果: http: //prntscr.com/g8gu24

代码:https ://gist.github.com/gridphp/d845df051ff7d7086f3cf947f3da44d5

于 2017-08-14T20:23:22.107 回答