$ _POST信息时打印在纸上

时间:2015-08-21 04:06:53

标签: php jquery

当用户发送信息时如何打印信息
当用户打开页面时,它会像任何其他表单一样显示表单,当用户完成信息保存在数据库中时,但同时我想在纸上打印该信息...
< / p>

<form method="post" action="save.php">
   <input name="name">
<!-- like 30 more inputs, i know is crazy -->
   <button type="submit">Send</button>
</form>
<?php
if(isset($_POST['_token']) && $c->validToken()) {
   // Get all inputs, re-validate, clean...etc
   // Save info into the DB
   // Done!

   // Here is where I would like to collect all the infomarion
   // and print it, send it to a printert...

   header('Location: thankyou.php');
   exit;
}
?>

我可以使用PHP,o jquery ...
我在做梦还是有可能?

更新

是的,有一台漂亮的打印机连接到“服务器”(那是什么类型的问题?)...
不,我不使用ajax .... Nop,我从来没有使用PHP打印,因此这个问题....我使用Java但用户总是看到打印机对话窗口,在这种情况下用户不需要看到。
有2个答案指出了我正确的方向,谢谢你,我不知道是谁投了这个问题,但显然必须是一个天才才能找到这个无关紧要或太愚蠢的问题....

3 个答案:

答案 0 :(得分:1)

这可能,但取决于您如何打印信息(字体,纸张类型,文件格式......)。希望tut能为您提供更多帮助。

答案 1 :(得分:0)

我会一直编写这样的表单,我将自己有一个表单引用,如下所示:

<form action="?" method="post"></form>

“?”在action参数中表示“调用同一页面”。当您提交表单时,将提交具有“name”属性的所有输入和表单元素(如<select><textarea>),其中“name”属性为数组中的$ _POST键和“value” “属性是价值。像文本输入这样的元素没有像单选按钮和复选框这样的书写值属性,但浏览器知道提交用户输入的值作为“value”属性。所以。 。 。这包括提交按钮<input type="submit" name="submit" value="Submit">等元素。因此,当表单发布到自身时,您在页面顶部有一个条件:

if(isset($_POST['submit'])){ // the form has been submitted
    // get all $_POST values from the form and do great stuff with them
    // (send to an API like PayPal or similar)
    // when you have done all that you need to you can evaluate the response
    // from the API, do other stuff, etc. then if you want to, 
    // print to the page.
    // I will pretend that I created another array from some of the $_POST values, 
    // since I don't want ALL $_POST values like check boxes or the submit button to appear on the page
    // We'll call it $response (and it is an array of values)
    echo "<p>Your form was successfully submitted. The following values have 
    been added to our database:</p>";
    echo "<ul class='responseList'>";

    foreach($response as $k=>$v){
        echo "<li>". $k ."=". $v ."</li>";
    }

    echo "</ul>";

} else { // the form hasn't been submitted yet
    // show the form (this can even be put into a function to be called as needed)
}

我希望这是有道理的。您应该能够从$ _POST数组创建较小的数组,以便您可以执行重命名数组键的操作,使页面上的内容更具吸引力。例如,您可以在输入字段中使用“firstName”作为name参数,但是您不希望回显firstName,而是将其清除为“First Name”。

答案 2 :(得分:-1)

如果您通过AJAX发送数据,然后通过AJAX检索确认,当检索到正确的确认时,然后像这样调用打印方法

$(document).ready(function () { window.print(); });