0
Я пытаюсь создать файл .pdf. но я не могу сцепить мой текст: Это мой код:Неверный pdf с DOMPDF
<?php
include('conexion.php');
$con = conexion();
$sql="select * from [my table] where [condition] ";
$res=mysql_query($sql,$con);
$concli=conexion();
$sqlcli="select * from [my table] where [condition]";
$rescli=mysql_query($sqlcli,$concli);
$datocli=mysql_fetch_array($rescli);
$codigoHTML='
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1" />
<title>PDF</title>
</head>
<body>
<form>
<div align="left">
<img src="images/logo.jpg" width="186" height="88" alt="playss.net"/> </div><br/>
<hr />
<div >
<pre>
Nombre del cliente: <input type="text" value="'; //HERE I'M TRYING TO CONCATENATE
echo $datocli['nomempresacli'];
$codigoHTML='
">
Nombre del Vendedor <input type="text" value="">
Proyecto: <input type="text" >
Fecha: <input type="text" >
</pre>
<table width="95%" height="100%" border="1">
<tr height="40">
<td>#</td>
<td >Id Producto</td>
<td >Parte</td>
<td >Descripción</td>
<td >Cantidad</td>
<td >Precio</td>
<td >Subtotal</td>
<td >Descuento</td>
<td >total</td>
</tr>';
require_once("dompdf/dompdf_config.inc.php");
$contador=1;
while ($dato=mysql_fetch_array($res))
{
$codigoHTML.='
<tr>
<td>'.$contador.'</td>
<td>'.$dato['idproducto'].'</td>
<td>'.$dato['parte'].'</td>
<td>'.$dato['descripcion'].'</td>
<td>'.$dato['cantidad'].'</td>
<td>'.$dato['precio'].'</td>
<td>'.$dato['subtotal'].'</td>
<td>'.$dato['descuento'].'</td>
<td>'.$dato['total'].'</td>
</tr>';
$contador++;
}
$codigoHTML.='
</table>
</div>
<pre>
<div align="right">
Total Final: <input type="text" >
</div>
</pre>
<br/>
<hr/>
</form>
</body>
</html>
';
$codigoHTML=utf8_decode($codigoHTML);
$dompdf=new DOMPDF();
$dompdf->load_html($codigoHTML);
ini_set("memory_limit","128M");
$dompdf->render();
$dompdf->stream("cotizacion.pdf");
?>
Я думаю, что ошибка у меня есть в следующих строках:
Nombre del cliente: <input type="text" value="'; //HERE I'M TRYING TO CONCATENATE
echo $datocli['nomempresacli'];
$codigoHTML='
">
Я должен добавить больше строк, таких как этот, но если он не работает в одном, он не будет работать больше
может кто-нибудь мне помочь?
** ПРЕДУПРЕЖДЕНИЕ **: 'mysql_query' является устаревшим интерфейсом и не должен использоваться в новых приложениях, поскольку он удаляется в будущих версиях PHP. Современная замена, такая как [PDO, не трудно учиться] (http://net.tutsplus.com/tutorials/php/why-you-should-be-using-phps-pdo-for-database-access/). Если вы новичок в PHP, руководство, подобное [PHP The Right Way] (http://www.phptherightway.com/), может помочь объяснить лучшие практики. – tadman
@tadman Я буду учитывать это, спасибо. –
Вы не добавляете/не конкатенируете что-либо. Вы просто переписываете переменную '$ codigoHTML'. Чтобы добавить/объединить, назначьте с помощью оператора '. =', Например '$ codigoHTML. =" Some text ";'. Кроме того, эхоизменение переменной отправляет это пользователю как результат, оно не добавляется к строке. Вы можете добавить с помощью '. =' С переменной. –