Base64_encode和file_get_contents在codeigniter中不起作用

时间:2014-12-31 07:32:10

标签: php codeigniter

为什么此代码在Codeigniter中不起作用,而当我删除base64_encode代码时,如果我使用file_get_contents,代码运行完全相同,为什么两个函数都不起作用?

$imagedata = mysql_real_escape_string(base64_encode(file_get_contents($_FILES["userfile"]["tmp_name"])));

提前致谢。

1 个答案:

答案 0 :(得分:-1)

mysql_real_escape_string在这里犯了错误。这两个链接可以帮助您处理此link1link2

所以请使用$this->db->escape($val)代替mysql_real_escape_string

 <?php
    // <= PHP 5
    $data = file_get_contents($_FILES["userfile"]["tmp_name"], true);
    // > PHP 5
    $data = file_get_contents($_FILES["userfile"]["tmp_name"], FILE_USE_INCLUDE_PATH);
    ?>

$_FILES["userfile"]["tmp_name"]生成文件名,如

<?php
// <= PHP 5
 $data = $this->db->escape(base64_encode(file_get_contents("test/faruk.txt", true)));
// > PHP 5
 $data = $this->db->escape(base64_encode(file_get_contents("test/faruk.txt", FILE_USE_INCLUDE_PATH)));
echo $data; 
?>

我的输出为SGVsbG8gd29ybGQxNDEyMTYyMTYx,内容为“Hello world1412162161”