编程菜鸟有问题

时间:2014-03-27 12:41:22

标签: php css include

我的名字是皮特,我对群众有疑问。我正在使用Thomas J Bradley网站上的代码来处理工作中的项目。它是一个签名接受应用程序,可以将签名(从平板电脑设备)转换为png文件以执行任何操作。它有效,但我想对它进行修改。这是网站:

http://managercheckoff.oo3.co/home.html

我将修复css并将其标记为我的应用程序;这是一份工作副本。我想要它做的是使用我在"商店名称"中输入的文件名保存png文件。框。换句话说,如果我输入" store10"在框中,我希望我的png文件名为store10.png。这是该网站的代码:

(开始代码)

<!DOCTYPE html>
<head>
  <meta charset="utf-8">
  <title>Accept a Signature · Signature Pad</title>
  <style>
    body { font: normal 100.01%/1.375 "Helvetica Neue",Helvetica,Arial,sans-serif; }
  </style>
  <link href="./assets/jquery.signaturepad.css" rel="stylesheet">
  <!--[if lt IE 9]><script src="./assets/flashcanvas.js"></script><![endif]-->
  <script src="http://ajax.googleapis.com/ajax/libs/jquery/1.5.1/jquery.min.js"></script>
</head>
<body>

  <form method="post" action="" class="sigPad">
    <label for="name">Store Name</label>
    <input type="text" name="name" id="name" class="name">

    <p class="drawItDesc">Draw your signature</p>
    <ul class="sigNav">

      <li class="drawIt"><a href="#draw-it" >Draw It</a></li>
      <li class="clearButton"><a href="#clear">Clear</a></li>
    </ul>
    <div class="sig sigWrapper">
      <div class="typed"></div>
      <canvas class="pad" width="198" height="55"></canvas>
      <input type="hidden" name="output" class="output">
    </div>
    <button type="submit">Submit.</button>

<?php
    // this is the part that writes outout
    require_once 'signature-to-image.php';

$json = $_POST['output'];
$img = sigJsonToImage($json);

imagepng($img, 'signature.png');

  ?>
</form>

  <script src="jquery.signaturepad.js"></script>
  <script>
    $(document).ready(function() {
      $('.sigPad').signaturePad({drawOnly:true});
    });
  </script>
  <script src="./assets/json2.min.js"></script>
</body>

(结束代码)

如果有人可以提供帮助,我会很感激。我只是在学习,我希望它不是在这些情况下(与工作有关),但我没有选择。非常感谢你!

1 个答案:

答案 0 :(得分:1)

我建议更改此设置,以便将imagepng函数传递给包含filename

的变量
imagepng($img, 'signature.png');

所以它会是

$ext = array();
$ext['png'] = '.png';

// in case you entered a name in your "store name" box it will be assigned as filename, otherwise, 'signature' will be the default name
$filename = ((isset($_POST['name'])) ? $_POST['name'] : 'signature') . $ext['png'];
imagepng($img, $filename);

注意

$ext是一个数组,您可以添加所需的所有扩展名,将来您的代码将很容易管理,以防您处理imagejpeg函数。

希望这会有所帮助: - )