在我的网站上,用户可以打印(pdf)他接受的nda由于某种原因我无法显示pdf
这里的逻辑
首先重写规则
.htaccess
RewriteRule ^nda/?$ ndapdf.php?useSessionUser=1 [L]
Run Code Online (Sandbox Code Playgroud)
然后是PHP
<?php
$html = file_get_contents("/lib/nda.txt");
$html = str_replace("##user##", $_SESSION["currentUser"]);
$html = str_replace("##date##", date("Y-m-d h:i:s"));
require("/lib/web/tcpdf/config/lang/eng.php");
require("/lib/web/tcpdf/tcpdf.php");
$pdf = new TCPDF(PDF_PAGE_ORIENTATION, PDF_UNIT, PDF_PAGE_FORMAT, true, "UTF-8", false);
$pdf->SetCreator("mysite");
$pdf->SetAuthor("author_name");
$pdf->SetTitle("NDA");
$pdf->SetSubject("Accepted NDA");
$pdf->setHeaderFont(Array(PDF_FONT_NAME_MAIN, "", PDF_FONT_SIZE_MAIN));
$pdf->setFooterFont(Array(PDF_FONT_NAME_DATA, "", PDF_FONT_SIZE_DATA));
$pdf->SetDefaultMonospacedFont(PDF_FONT_MONOSPACED);
$pdf->SetAutoPageBreak(TRUE, PDF_MARGIN_BOTTOM);
$pdf->setLanguageArray(array("w_page" => ""));
$fontname = $p->addTTFfont("/fonts/AveriaSans-light.ttf", "TrueTypeUnicode", "", 32);
$pdf->SetFont("arial", "", 10);
$pdf->AddPage();
$pdf->writeHTML($html, true, false, true, false, "");
$pdf->lastPage();
$pdf->Output("/home/comp/pdf/nda/$currentUser.pdf", "F");
header("Content-Type: application/pdf\n");
read("/home/comp/pdf/nda/$currentUser.pdf");
Run Code Online (Sandbox Code Playgroud)
我得到:
"TCPDF错误:无法包含字体定义文件:AveriaSans-light"
字体是:ll/fonts /
-rw-r--r-- 1 root root …Run Code Online (Sandbox Code Playgroud) 每次用户注册我们的网站时,我们都需要显示NDA(保密协议).为了继续,用户必须接受它.我的问题是我在所有页面中都有NDA,用户并没有真正阅读并接受(就像我们所做的那样).
我想要的是确保用户阅读NDA并接受它"阅读"它?
我现在拥有的是一个简单的jQuery验证,如果用户选中一个框并单击"接受".然后它进入下一页.
这就是我所拥有的
<script>
$(document).ready(function() {
$('#go').click(function() {
// check if checkbox is check and go to next page
// i have this code
});
});
</script>
<div>
full nda
<hr>
<input type=checkbox> <input type=button value=go id=go>
</div>
Run Code Online (Sandbox Code Playgroud)
我已经有了复选框和按钮的代码
我只是不希望用户盲目接受nda
谢谢
我周五收到了一个面试问题,我认为我不及格了.问题是:
编写一个在PHP中处理双链表的类.
我理解这个概念,这是我给出的代码:
class element {
private $current;
public function __construct($e) {
$this->current = $e;
}
// method
// etc..
}
class doublelist
{
private $prev;
private $next;
private $current;
private $list;
public function add(element $e) {
if($this->current == NULL) {
$this->prev = $this->current;
}
$this->current = $e;
}
}
$list = new doublelist();
$list->add(new element('a'));
$list->add(new element('b'));
Run Code Online (Sandbox Code Playgroud)
这最初是有效的,但如果我添加第二个元素,我会"失去"第一个元素,我不明白为什么.
我有关于php和打开文件的问题
PHP有多个打开文件的功能:
file_get_contents()
fopen()
file()
Run Code Online (Sandbox Code Playgroud)
我的问题与表现有关.在我的服务器上,我必须打开文件,然后检查内容,如果需要进行一些修改,并重新保存它们.
我想尽快做出这些改变
哪一个更好地打开文件(小型和大型)性能明智?含义; 为什么要先使用其他人?
我有一个超过2000行的文件,我需要解析.我想确保获得100%准确的结果,然后将其导入我的MariaDB.
该文件如下所示:
line 0: #start#
line 1: 20111211\200000
line 2: n=john|l=smith,131_stree_apt#102_city_state_11111_country,19989989988|17771112222,user%64domain.com,12,21,551|626|23\r
...
line 2156: #end#
Run Code Online (Sandbox Code Playgroud)
所以第1行是24h格式的日期时间第2行是行格式:
我无法弄清楚正则表达式.我的另一个想法是解析每一行,然后解析每个逗号,然后解析每个管道等,但我认为这种方法比正则表达式慢,而且不太准确.我对吗?
可能重复:
在PHP中停止SQL注入的最佳方法
我想知道最好用哪些函数来防止MySQL注入
我可以使用一些函数来阻止sql注入,例如:
mysql_real_escape_stringmysqli_real_escape_stringaddslasheshtmlentities 同 ENT_QUOTES'或"我想使用最好和更快的反SQL注入方法来标准化我的代码,我想知道我应该为高流量站点使用哪一个.
php ×5
file ×1
javascript ×1
jquery ×1
linked-list ×1
mariadb ×1
mysql ×1
pdf ×1
performance ×1
regex ×1
tcpdf ×1