小编GAg*_*new的帖子

使用JavaScript显示Blob

我正在从数据库中检索Blob图像,我希望能够使用JavaScript查看该图像.以下代码在页面上生成一个损坏的图像图标:

var image = document.createElement('image');
    image.src = 'data:image/bmp;base64,'+Base64.encode(blob);
    document.body.appendChild(image);
Run Code Online (Sandbox Code Playgroud)

这是一个包含所有必需代码的jsFiddle,包括blob.完成的代码应正确显示图像.

javascript base64 blob image

51
推荐指数
7
解决办法
19万
查看次数

PHP Data-URI to file

我有一个数据URI,我从javascript和尝试通过PHP保存.我使用以下代码,它给出了一个明显损坏的图像文件:

  $data = $_POST['logoImage'];

  $uri = substr($data,strpos($data,",")+1);

  file_put_contents($_POST['logoFilename'], base64_decode($uri));



data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAoAAAAKCAYAAACNMs 9AAAACXBIWXMAAAsTAAALEwEAmpwYAAAAxklEQVQYlYWQMW7CUBBE33yITYUUmwbOkBtEcgUlTa7COXIVV5RUkXKC5AxU EdyZVD4kyKxkwIrr9vd0c7Oih aopinLNsF6Qkg2XW4XJ7LGFsAAcTV6lF5/jLdbALA9XDAXYfthFQVx OrmqKYK88/7rbbMFksALieTnzu9wDYTj6f70PKsp2kwAiSvjXNcvkWpAfNZkzWa/5a9yT7fdoX7rrB7hYh2fXo9HdjPYQZu3MIU8bYIlW20y0RUlXG2Kpv/vfwLxhTaSQwWqwhAAAAAElFTkSuQmCC
Run Code Online (Sandbox Code Playgroud)

代码下面是作为Data-URI的实际图像.'logoImage'是上面的字符串,$ uri是字符串减去'image/jpeg; base64'.

php file-io image data-uri

48
推荐指数
3
解决办法
4万
查看次数

Javascript对象解析

我试图解析javascript(使用javascript),我遇到了对象的问题.javascript如何确定对象或块之间的区别?

例如

{ x : 1, y : 2}
Run Code Online (Sandbox Code Playgroud)

令牌流:

[{][x][:][1][,][y][:][2][}]
Run Code Online (Sandbox Code Playgroud)

然而,显然是一个对象

{ var x = 1; var y = 2}
Run Code Online (Sandbox Code Playgroud)

令牌流:

[{][var][x][=][1][;][var][y][=][2][}]
Run Code Online (Sandbox Code Playgroud)

是一个完全有效的匿名JavaScript块.我如何有效地将每个令牌流识别为对象或块?

但是,更重要的是,我将如何确定可能是对象的令牌流或如下所示的块之间的区别:

{ a : null }
Run Code Online (Sandbox Code Playgroud)

令牌流:

[{][a][:][null][}]
Run Code Online (Sandbox Code Playgroud)

这可以或者是一个对象,其参数等于零,或者它可能是一个块,其中该块中的第一条语句(null)具有一个标签(a)

javascript parsing

10
推荐指数
1
解决办法
1526
查看次数

从FileReader设置backgroundImage样式

我正在寻找一种解决方案,允许我从文件上传输入中获取文件并通过设置document.body.style.backgroundImage进行预览.

以下代码用于在Image元素中显示预览:

function setImage(id, target){
  input = document.getElementById(id);
  if (input.files && input.files[0]) {
    var reader = new FileReader();

    reader.onload = function (e) {
      target.src = e.target.result;
    };

        reader.readAsDataURL(input.files[0]);
  }
}
Run Code Online (Sandbox Code Playgroud)

其中id是id的id <input type='file'>,而target是<img>元素.

下面的代码概述了我想要发生的事情,但是e.target.result是data:image/png;base64格式的,显然在css请求url的地方不起作用.

  function setBackgroundImage(id){
    input = document.getElementById(id);
    if (input.files && input.files[0]) {
      var reader = new FileReader();

      reader.onload = function (e) {
          document.body.style.backgroundImage = e.target.result;
      };

      reader.readAsDataURL(input.files[0]);
    }
  }
Run Code Online (Sandbox Code Playgroud)

谢谢您的帮助!

javascript styles filereader

9
推荐指数
1
解决办法
5811
查看次数

Javascript语法测试用例

我正在创建一个文本编辑器,我刚刚编写了突出显示算法,让每个语法以不同的颜色显示,并使用正确的解析树渲染到正确的位置.

我想知道是否有人可以提供我,或测试或一系列测试用例的位置,以确保没有任何东西会破坏.测试用例应涵盖在Web上使用的所有JavaScript语法,包括边缘情况(即包括throw尽管很少使用的语法),DOM创建和操作等.

我添加了以下静态测试用例.它应该涵盖所有语法.

有几点需要注意:由于代码在语法级别上递归解析,因此只需要基本情况​​.例如,编辑:

一个[1]; 和[1] [2] [3] [4] [5]; 将是相同的语法.由于第二行,只是递归地更多sub而第一行.

我创建的测试用例已移至下面的答案.

javascript unit-testing syntax-highlighting parse-tree

8
推荐指数
1
解决办法
689
查看次数

Json_Decode没有解码我的JSON

我正在使用couchDB来获取UUID,以便我可以将新文档发送到数据库.

为了获得这个UUID,我使用了一个curl语句:

function getUUID(){
    $myCurlSubmit = curl_init();

    curl_setopt($myCurlSubmit, CURLOPT_URL, 'http://localhost:5984/_uuids');    
    curl_setopt($myCurlSubmit, CURLOPT_HEADER, 0);

    $response = curl_exec($myCurlSubmit);

    curl_close($myCurlSubmit);

    return $response;
}
Run Code Online (Sandbox Code Playgroud)

这将返回预期结果:

{"uuids":["af09ffd3cf4b35c2d94d1ed755000fb8"]}
Run Code Online (Sandbox Code Playgroud)

但是,以下json_decode失败:

print_r('No match, creating new document.');
$uuid = json_decode(trim(getUUID()));
var_dump(json_last_error());
Run Code Online (Sandbox Code Playgroud)

打印的错误是:'int(0)'(不在引号中),$ uuid仍然是一个json字符串.

帮助赞赏谢谢!

编辑:

var_dump($uuid) = int(1)
Run Code Online (Sandbox Code Playgroud)

编辑:var_dump(getUUID())= {"uuids":["af09ffd3cf4b35c2d94d1ed755000fb8"]} \n1

有什么理由为什么我会在我的json上有一个尾随的和/ n?

编辑:

问题是卷曲,看看下面的答案!

php json couchdb decode

3
推荐指数
1
解决办法
1959
查看次数

addslashes JavaScript等价物

我正在寻找一个与PHP相当的JavaScript版本addSlashes.

我发现有很多版本,但它们都没有处理\b,\t,\n,\f\r.

http://jsfiddle.net/3tEcJ/1/

要完成,这个jsFiddle应该警告: \b\t\n\f\r"\\

javascript regex escaping addslashes

3
推荐指数
1
解决办法
6259
查看次数

从PHP写入映像文件时出错

我试图从blob写入图像文件.

 if($_POST['logoFilename'] != 'undefined'){
  $logoFile = fopen($_POST['logoFilename'], 'w') or die ("Cannot create ".$_POST['logoFilename']);

  fwrite($logoFile, $_POST['logoImage']);

  fclose($logoFile);
}
Run Code Online (Sandbox Code Playgroud)

在前面的代码片段中,$_POST['logoImage']是一个BLOB.该文件已正确写入根目录,但无法打开该文件.在ubuntu 11.04中,我收到以下错误:

Error interpreting JPEG image file (Not a JPEG file: starts with 0x64 0x61).
Run Code Online (Sandbox Code Playgroud)

如果我创建一个img并设置其src = blob,则BLOB会正确显示

下面是BLOB的第一个片段:

data:image/jpeg;base64,/9j/4AAQSkZJRgABAQEBLAEsAAD/2wBDAAgGBgcGBQgHBwcJCQ
Run Code Online (Sandbox Code Playgroud)

php image file-writing

2
推荐指数
1
解决办法
4541
查看次数