Bien al final a quedado asi y no me sale el error, he divido la funcion en dos y ahora las llamo desde dentro de los if.
Lo hago asi para que los errores me salgan dentro de la tabla, por lo tanto simpre que hay un error tengo que llamar a las funciones.
Muchas gracias cluster
¿crees que sigue estando mal
Código PHP:
<?php
require("bd_config.inc.php");
$error_end[0]="El código de cliente no existe";
$error_end[1]="Debe introducir una referencia de pedido";
//guarda la caché de las paginas
//session_cache_limiter('private');
session_name($usuarios_sesion);
session_start();
//guardamos las maquinas introducidas en un array de sesion
if(isset($_POST['maquina'])){
$_SESSION['maquinas']=$_POST['maquina'];
}
$pag=$_SERVER['PHP_SELF'];
function cabeceraHTML(){
echo <<< EOT
<HTML>
<HEAD>
<TITLE>hoja de pedidos</TITLE>
</HEAD>
<BODY BGCOLOR="#FFFFFF" leftmargin="0" topmargin="0" marginwidth="0" marginheight="0">
<TABLE WIDTH=811 BORDER=0 CELLPADDING=0 CELLSPACING=0>
<TR>
<TD height="40"> </TD>
<TD width="112" rowspan="2"> </TD>
<TD colspan="2"><div align="center"><img src="../imagenes/pedidos.gif" width="159" height="30"></div></TD>
</TR>
<TR>
<TD height="33"> </TD>
<TD> </TD>
<TD> </TD>
</TR>
<TR>
<TD width="1" ROWSPAN=2> </TD>
<TD width="112"> </TD>
<TD width="37"> <IMG SRC="../imagenes/esq_1.gif" WIDTH=37 HEIGHT=49></TD>
<TD width="658" height="49"> <IMG SRC="../imagenes/hor_1.gif" WIDTH=656 HEIGHT=49></TD>
</TR>
<TR>
<TD width="112" valign="top">
<table width="111" height="127">
<TR>
<TD height="15"> </TD>
</TR>
<TR>
<TD height="15"> <div align="center"><font color="#999999" size="1" face="Verdana, Arial, Helvetica, sans-serif">Lumelco</font></div></TD>
</TR>
<TR>
<TD height="15"> <div align="center"><font color="#999999" size="1" face="Verdana, Arial, Helvetica, sans-serif">Delegaciones</font></div></TD>
</TR>
<TR>
<TD height="15"> <div align="center"><font color="#999999" size="1" face="Verdana, Arial, Helvetica, sans-serif">Actividades</font></div></TD>
</TR>
<TR>
<TD height="15"> <div align="center"><font color="#999999" size="1" face="Verdana, Arial, Helvetica, sans-serif">Catalogo</font></div></TD>
</TR>
<TR>
<TD height="15"> <div align="center"><font color="#999999" size="1" face="Verdana, Arial, Helvetica, sans-serif">Area
de clientes</font></div></TD>
</TR>
<TR>
<TD height="15"> <div align="center"><font color="#999999" size="1" face="Verdana, Arial, Helvetica, sans-serif">Novedades</font></div></TD>
</TR>
</table></TD>
<TD width="37" height="563" background="../imagenes/vert_1.gif" valign="top">
</TD>
<TD valign="top">
EOT;
}
function maquinasHTML(){
echo <<< MAQ
<table width="380" align="center">
<tr bgcolor="#8EA5BF">
<td bgcolor="#D2DCE6" colspan="2"> <center>
<font color="526F91" size="3" face="Verdana, Arial, Helvetica, sans-serif">Este es su pedido </font> </center></td>
</tr>
<tr bgcolor="#8EA5BF">
<td width="140"> <div align="center"><font size="2" face="Verdana, Arial, Helvetica, sans-serif" color="#FFFFFF"><b>Referencia</b></font>
</div></td>
<td width="139"> <div align="center"><font size="2" face="Verdana, Arial, Helvetica, sans-serif" color="#FFFFFF"><b>Cantidad</b></font>
</div></td>
</tr>
MAQ;
foreach ($_SESSION['maquinas'] as $name => $valor)
{
if ($valor>0)
{
$maquinas[$name] = $valor;
echo <<<EOT
<tr bgcolor="#FFFFFF"><td width="50%"><div align="center"><font size="2">$name</font></div></td> <td>
<div align="center"><font size="2" face="Verdana, Arial, Helvetica, sans-serif">$valor</font></div></td>
EOT;
}
}
$_SESSION['maquinas']=$maquinas;
echo "</tr> </table> ";
}
if ($_SESSION['usuario_nivel']==2){
//se repite cuando se entra la 1º vez o cuando no exista el codigo de cliente
if (!isset($_GET['accion']) || isset($_GET['erren'])){
cabeceraHTML();
maquinasHTML();
echo <<< EOT
<p></p>
<table width="386" align="center">
<form name="pedidos" method="post" action="/apedidos/reprueba.php?accion=query_codcli">
<tr>
<td width="216" valign="top"><div align="right"><font size="2" face="Verdana, Arial, Helvetica, sans-serif"><strong>Codigo
de cliente<br>
</strong></font></div></td>
<td width="158"> <div align="left">
<input type="text" name="Cod_cliente" maxlength="15" size="20" >
</div></td>
</tr>
<tr>
<td valign="top"> <div align="right"><font face="Verdana, Arial, Helvetica, sans-serif" size="2"><b>Referencia
de pedido: </b></font></div></td>
<td> <input type="text" name="RefPedido" maxlength="15" size="20" ></td>
</tr>
<tr>
<td colspan="2" valign="top"> </td>
</tr>
<tr>
<td colspan="2" valign="top"><div align="center"><font face="Verdana, Arial, Helvetica, sans-serif" size="2"><b>Observaciones
:</b></font></div></td>
</tr>
<tr>
<td colspan="2" valign="top"><div align="right"><font face="Verdana, Arial, Helvetica, sans-serif" size="2"></font></div>
<div align="center">
<textarea name="Observaciones" wrap="soft" rows="3" cols="30" ></textarea>
</div></td>
</tr>
<tr>
<td colspan="2"><div align="center"> </div></td>
</tr>
<tr>
<td colspan="2"><div align="center">
<input type="image" name="submit" src="../../imagenes/actualizar.gif" width="68" height="23" class="botones">
</div></td>
</tr>
<tr>
<td colspan="2" align"center">
EOT;
if (isset($_GET['erren'])){
$error=$_GET['erren'];
echo "<div align=\"center\"><font color='#FF0000' size='1' face='Verdana, Arial, Helvetica, sans-serif'>ERROR: $error_end[$error]</font>";
}
echo "</div></div></td> </tr></form></table>";
}
if ($_GET['accion']=="query_codcli"){
$_SESSION['albaran']['RefPedido']=$_POST['RefPedido'];
$_SESSION['albaran']['Cod_cliente']=$_POST['Cod_cliente'];
$_SESSION['albaran']['Observaciones']=$_POST['Observaciones'];
if ($_SESSION['albaran']['RefPedido']==""){
header ("Location: $pag?erren=1");
exit;
}
//nos conectamos a la base de datos
$conectar_bd= mysql_connect("$host_bd", "$nombre_bd", "$password_bd")
or die( mysql_error());
mysql_select_db("g")
or die (mysql_error());
//hacemos la consulta para saber si existe el codigo de cliente
$consulta_usuario= mysql_query ("SELECT * FROM g2 WHERE CDPS='{$_SESSION['albaran']['Cod_cliente']}'");
if (mysql_num_rows($consulta_usuario)<1){
header( "Location: $pag?erren=0");
}
//or die (header( "Location: $pag?erren=0"));
//cerramos conexion
mysql_close();
cabeceraHTML();
maquinasHTML();
mysql_free_result($consulta_usuario);
}
}
?>
</TD>
</TR>
</table>
</BODY>
</HTML>