dongqiuxu2270 2014-05-23 10:11
浏览 819
已采纳

将LaTeX代码插入MySQL

I am using PHP and MySql. TeX is posted to server.php file through a form and exploded into an array:

foreach($_POST['ques'] as $i){  
  $arr = explode('~', $i);
}

$sql = "INSERT INTO `QUESTIONS`(`Text`) VALUES ('$arr[2]')";

$run = mysql_query( $sql, $conn ) or die(mysql_error());

Btw echo $arr[2]; shows correct Tex syntax : "[\Rightarrow{z=\frac{43}{-44}}]"

But on database it is stored without backslashes "[Rightarrow{z=frac{43}{-44}}]"

  • 写回答

1条回答 默认 最新

  • dongren4099 2014-05-23 12:35
    关注

    Do not use old mysql_* functions. Use mysqli_*. or PDO as in this example.

    The parameterized/prepared query makes you to stop worrying about quoting and malicious sql-attacks. (But drive safely anyway)

    $dsn = 'mysql:dbname=testdb;host=127.0.0.1';
    $dbh = new PDO($dsn, $user, $password);
    $sth = $dbh->prepare("INSERT INTO `QUESTIONS`(`Text`) VALUES (?)");
    $sth->execute(array($arr[2]));
    
    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论

报告相同问题?