Buenas Noches:
Yo estoy desarrollando una pagina en PHP y MySQL, en muchos lugares grabo al final, o sea cuando termina el HTML y aparentemente no hay problemas.
De esta forma (cuando termina el HTML):
</html>
<?php
if (isset($_POST['genera'])){
if ($error==0 and $idpais==0) {$error=1; echo "<script>alert('Ingrese el Pais')</script>";}
if ($error==0 and $idprovincia==0) {$error=1; echo "<script>alert('Ingrese el Provincia')</script>";}
if ($error==0 and $idlocalidad==0) {$error=1; echo "<script>alert('Ingrese el Localidad')</script>";}
if ($error==0 and $idrubro==0) {$error=1; echo "<script>alert('Ingrese $xrub')</script>";}
if ($error==0 and $idsubrubro==0) {$error=1; echo "<script>alert('Ingrese $xsub')</script>";}
if ($error==0 and $idarticulo==0) {$error=1; echo "<script>alert('Ingrese $xart')</script>";}
if ($error==0 and $idmarca==0) {$error=1; echo "<script>alert('Ingrese $xmar')</script>";}
if ($error==0 and $idtipoarticulo==0) {$error=1; echo "<script>alert('Ingrese $xtar')</script>";}
if ($error==0 and $idtipopublicacion==0) {$error=1; echo "<script>alert('Ingrese el Tipo de la Publicacion')</script>";}
if ($error==0 and $idtipomoneda==0) {$error=1; echo "<script>alert('Ingrese el Tipo de la Moneda')</script>";}
if ($error==0 and $idtipoventa==0) {$error=1; echo "<script>alert('Ingrese el Tipo de la Venta')</script>";}
if ($error==0 and $idtipopago==0) {$error=1; echo "<script>alert('Ingrese el Tipo del Pago')</script>";}
if ($error==0 and empty($cantidad)) {$error=1; echo "<script>alert('Ingrese la Cantidad')</script>";}
if ($error==0 and empty($precioe) and empty($preciod)) {$error=1; echo "<script>alert('Ingrese el Precio')</script>";}
if ($error==0 and empty($titulo)) {$error=1; echo "<script>alert('Ingrese el Titulo para el Listado')</script>";}
if ($error==0 and empty($descripcion)) {$error=1; echo "<script>alert('Ingrese la Descripcion')</script>";}
if ($error==0) {
$dias=qtabla("tipopublicaciones","dias","idtipopub licacion",$idtipopublicacion);
$fechaalta=date("Y-m-d H:i:s");
$fechabaja=fechavacia();
$fechavenc=date("Y-m-d H:i:s", strtotime("$fechaalta + $dias DAY"));
$Publicacion=new Publicacion();
$Publicacion->setidusuario($idusuario);
$Publicacion->setidseccion($idseccion);
$Publicacion->setidpais($idpais);
$Publicacion->setidprovincia($idprovincia);
$Publicacion->setidlocalidad($idlocalidad);
$Publicacion->setidrubro($idrubro);
$Publicacion->setidsubrubro($idsubrubro);
$Publicacion->setidarticulo($idarticulo);
$Publicacion->setidmarca($idmarca);
$Publicacion->setidtipoventa($idtipoventa);
$Publicacion->setidtipopago($idtipopago);
$Publicacion->setidtipopublicacion($idtipopublicacion);
$Publicacion->setidtipoarticulo($idtipoarticulo);
$Publicacion->setidtipomoneda($idtipomoneda);
$Publicacion->setcantidad($cantidad);
$Publicacion->setprecio(($precioe+($preciod/100)));
$Publicacion->settitulo($titulo);
$Publicacion->setdescripcion($descripcion);
$Publicacion->setadicional11(($adicional11=="on")?"1":"0");
$Publicacion->setfechaalta($fechaalta);
$Publicacion->setfechabaja($fechabaja);
$Publicacion->setfechavenc($fechavenc);
mysql_query("BEGIN") or die (mysql_error()); // Inicio de Transacción
$Publicacion->insertPublicacion();
$Cuentacorriente=new Cuentacorriente();
$Cuentacorriente->setidusuario($idusuario);
$Cuentacorriente->setreferencia($Publicacion->getidpublicacion());
$Cuentacorriente->setidtipomovimiento(1);
$Cuentacorriente->setimporte(qtabla("tipopublicaciones","precio","i dtipopublicacion",$idtipopublicacion));
$Cuentacorriente->insertCuentacorriente();
// mensaje($Publicacion->getafectados());
// mensaje($Cuentacorriente->getafectados());
if($Publicacion->getafectados()==1 and $Cuentacorriente->getafectados()==1) {
//************************************************** ************************
$foto = array();
for ($i=1;$i<=$cantidad_fotos;$i++)
{
if (!empty($_FILES['foto'.$i]['name']))
{
$foto[$i]=rand(90000000,99999999).".jpg";
subefoto($_FILES['foto'.$i],substr($foto[$i],0,8));
}
$campo='$Publicacion->setfoto'.$i."('"."$foto[$i]"."');";
eval($campo);
}
//************************************************** ************************
$Publicacion->updatePublicacionFotos($Publicacion->getidpublicacion());
mysql_query("COMMIT") or die (mysql_error()); // Confirmo la transaccion
//************************************************** ************************
mensaje('Publicacion Generada');
echo "<script>setTimeout(location.href='pagarsaldodeudo r.php',100);</script>";
exit;
}
else
{
mysql_query("ROLLBACK") or die (mysql_error()); // NO Confirmo la transaccion
mensaje('ERROR DE TRANSACCION'.' - Publicacion:'.$Publicacion->getafectados().', CuentaCorriente:'.$Cuentacorriente->getafectados());
echo "<script>setTimeout(location.href='index.php',100) ;</script>";
exit;
}
}
}
?>
Me dijeron que esto hay que ponerlo arriba de todo, o sea antes que empiece el HTML, es así??
La verdad me gusta mas así porque los mensajes de error salen sin salir de la pagina
Les agradecería si pueden ayudarme.
Muchas Gracias