Foros del Web » Programando para Internet » PHP »

En que lugar del HTML grabo el registro

Estas en el tema de En que lugar del HTML grabo el registro en el foro de PHP en Foros del Web. 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 ...
  #1 (permalink)  
Antiguo 26/06/2012, 16:37
Usuario no validado
 
Fecha de Ingreso: abril-2009
Ubicación: Buenos Aires
Mensajes: 413
Antigüedad: 15 años
Puntos: 3
En que lugar del HTML grabo el registro

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
  #2 (permalink)  
Antiguo 26/06/2012, 16:50
Avatar de rodrigo791  
Fecha de Ingreso: noviembre-2009
Ubicación: Uruguay
Mensajes: 1.339
Antigüedad: 14 años, 5 meses
Puntos: 168
Respuesta: En que lugar del HTML grabo el registro

La próxima vez pon tu código con el highlight.

Código PHP:
Ver original
  1. </html>
  2. <?php
  3. if (isset($_POST['genera'])){
  4. if ($error==0 and $idpais==0) {$error=1; echo "<script>alert('Ingrese el Pais')</script>";}
  5. if ($error==0 and $idprovincia==0) {$error=1; echo "<script>alert('Ingrese el Provincia')</script>";}
  6. if ($error==0 and $idlocalidad==0) {$error=1; echo "<script>alert('Ingrese el Localidad')</script>";}
  7. if ($error==0 and $idrubro==0) {$error=1; echo "<script>alert('Ingrese $xrub')</script>";}
  8. if ($error==0 and $idsubrubro==0) {$error=1; echo "<script>alert('Ingrese $xsub')</script>";}
  9. if ($error==0 and $idarticulo==0) {$error=1; echo "<script>alert('Ingrese $xart')</script>";}
  10. if ($error==0 and $idmarca==0) {$error=1; echo "<script>alert('Ingrese $xmar')</script>";}
  11. if ($error==0 and $idtipoarticulo==0) {$error=1; echo "<script>alert('Ingrese $xtar')</script>";}
  12. if ($error==0 and $idtipopublicacion==0) {$error=1; echo "<script>alert('Ingrese el Tipo de la Publicacion')</script>";}
  13. if ($error==0 and $idtipomoneda==0) {$error=1; echo "<script>alert('Ingrese el Tipo de la Moneda')</script>";}
  14. if ($error==0 and $idtipoventa==0) {$error=1; echo "<script>alert('Ingrese el Tipo de la Venta')</script>";}
  15. if ($error==0 and $idtipopago==0) {$error=1; echo "<script>alert('Ingrese el Tipo del Pago')</script>";}
  16. if ($error==0 and empty($cantidad)) {$error=1; echo "<script>alert('Ingrese la Cantidad')</script>";}
  17. if ($error==0 and empty($precioe) and empty($preciod)) {$error=1; echo "<script>alert('Ingrese el Precio')</script>";}
  18. if ($error==0 and empty($titulo)) {$error=1; echo "<script>alert('Ingrese el Titulo para el Listado')</script>";}
  19. if ($error==0 and empty($descripcion)) {$error=1; echo "<script>alert('Ingrese la Descripcion')</script>";}
  20. if ($error==0) {
  21. $dias=qtabla("tipopublicaciones","dias","idtipopub licacion",$idtipopublicacion);
  22. $fechaalta=date("Y-m-d H:i:s");
  23. $fechabaja=fechavacia();
  24. $fechavenc=date("Y-m-d H:i:s", strtotime("$fechaalta + $dias DAY"));
  25. $Publicacion=new Publicacion();
  26. $Publicacion->setidusuario($idusuario);
  27. $Publicacion->setidseccion($idseccion);
  28. $Publicacion->setidpais($idpais);
  29. $Publicacion->setidprovincia($idprovincia);
  30. $Publicacion->setidlocalidad($idlocalidad);
  31. $Publicacion->setidrubro($idrubro);
  32. $Publicacion->setidsubrubro($idsubrubro);
  33. $Publicacion->setidarticulo($idarticulo);
  34. $Publicacion->setidmarca($idmarca);
  35. $Publicacion->setidtipoventa($idtipoventa);
  36. $Publicacion->setidtipopago($idtipopago);
  37. $Publicacion->setidtipopublicacion($idtipopublicacion);
  38. $Publicacion->setidtipoarticulo($idtipoarticulo);
  39. $Publicacion->setidtipomoneda($idtipomoneda);
  40. $Publicacion->setcantidad($cantidad);
  41. $Publicacion->setprecio(($precioe+($preciod/100)));
  42. $Publicacion->settitulo($titulo);
  43. $Publicacion->setdescripcion($descripcion);
  44. $Publicacion->setadicional11(($adicional11=="on")?"1":"0");
  45. $Publicacion->setfechaalta($fechaalta);
  46. $Publicacion->setfechabaja($fechabaja);
  47. $Publicacion->setfechavenc($fechavenc);
  48. mysql_query("BEGIN") or die (mysql_error()); // Inicio de Transacción
  49. $Publicacion->insertPublicacion();
  50. $Cuentacorriente=new Cuentacorriente();
  51. $Cuentacorriente->setidusuario($idusuario);
  52. $Cuentacorriente->setreferencia($Publicacion->getidpublicacion());
  53. $Cuentacorriente->setidtipomovimiento(1);
  54. $Cuentacorriente->setimporte(qtabla("tipopublicaciones","precio","i dtipopublicacion",$idtipopublicacion));
  55. $Cuentacorriente->insertCuentacorriente();
  56.  
  57. //   mensaje($Publicacion->getafectados());
  58. //   mensaje($Cuentacorriente->getafectados());
  59.  
  60. if($Publicacion->getafectados()==1 and $Cuentacorriente->getafectados()==1) {
  61. //************************************************** ************************
  62. $foto = array();
  63. for ($i=1;$i<=$cantidad_fotos;$i++)
  64. {
  65. if (!empty($_FILES['foto'.$i]['name']))
  66. {
  67. $foto[$i]=rand(90000000,99999999).".jpg";
  68. subefoto($_FILES['foto'.$i],substr($foto[$i],0,8));
  69.  
  70. }
  71. $campo='$Publicacion->setfoto'.$i."('"."$foto[$i]"."');";
  72. eval($campo);
  73. }
  74. //************************************************** ************************
  75. $Publicacion->updatePublicacionFotos($Publicacion->getidpublicacion());
  76. mysql_query("COMMIT") or die (mysql_error()); // Confirmo la transaccion
  77. //************************************************** ************************  
  78. mensaje('Publicacion Generada');
  79. echo "<script>setTimeout(location.href='pagarsaldodeudo r.php',100);</script>";
  80. }
  81. else
  82. {
  83. mysql_query("ROLLBACK") or die (mysql_error()); // NO Confirmo la transaccion
  84. mensaje('ERROR DE TRANSACCION'.' - Publicacion:'.$Publicacion->getafectados().', CuentaCorriente:'.$Cuentacorriente->getafectados());
  85. echo "<script>setTimeout(location.href='index.php',100) ;</script>";
  86. }
  87. }
  88. }
  89. ?>

No entendí nada tu problema
  #3 (permalink)  
Antiguo 26/06/2012, 16:58
Usuario no validado
 
Fecha de Ingreso: abril-2009
Ubicación: Buenos Aires
Mensajes: 413
Antigüedad: 15 años
Puntos: 3
Respuesta: En que lugar del HTML grabo el registro

Gracias por el consejo, mi pregunta es:

si
<?php
if (isset($_POST['genera'])){ GRABO EL REGISTRO }
?>

va al principio solamente (antes de <HTML>) o lo puedo poner al final después de </HTML>

Gracias por tu tiempo
  #4 (permalink)  
Antiguo 26/06/2012, 17:04
Avatar de rodrigo791  
Fecha de Ingreso: noviembre-2009
Ubicación: Uruguay
Mensajes: 1.339
Antigüedad: 14 años, 5 meses
Puntos: 168
Respuesta: En que lugar del HTML grabo el registro

La verdad nunca intente ponerlo fuera del html, y no se porque lo haces eso la verdad, porque no metes todo eso en un archivo y lo llamas con un include? no es mas facil?
  #5 (permalink)  
Antiguo 26/06/2012, 17:15
Usuario no validado
 
Fecha de Ingreso: abril-2009
Ubicación: Buenos Aires
Mensajes: 413
Antigüedad: 15 años
Puntos: 3
Respuesta: En que lugar del HTML grabo el registro

OK, el tema es que así me funciona bien igual, pensaba que me podía traer algún problema.
Muchas Gracias por la respuesta
  #6 (permalink)  
Antiguo 26/06/2012, 17:23
Avatar de Rod_Man_mx  
Fecha de Ingreso: agosto-2009
Mensajes: 69
Antigüedad: 14 años, 8 meses
Puntos: 4
Respuesta: En que lugar del HTML grabo el registro

Cita:
Iniciado por betodaniel61 Ver Mensaje
Gracias por el consejo, mi pregunta es:

si
<?php
if (isset($_POST['genera'])){ GRABO EL REGISTRO }
?>

va al principio solamente (antes de <HTML>) o lo puedo poner al final después de </HTML>

Gracias por tu tiempo
Tendría que ser dentro del HEAD ya que estas imprimiendo alerts al por mayor.

Otra sugerencia, mete todas esas validaciones dentro de una función, incluso podría quedar :

Código PHP:
$mensaje "";
function 
setMensaje($msj) {$mensaje.= $msj."\n "}

function 
getMensaje(){return $mensaje}

function 
valida(){
  
$bandera true;
  if(isset(
$_POST["general"]) && $_POST["general"] != "" && $error 0){
      if(
$idpais==0){ setMensaje("Ingrese el Pais"); bandera false;}
      ...... 

       return 
$bandera
  
}


En tu etiqueta <head> simplemente pones esto:

Código PHP:

 
if(!valida()){
    echo 
"<script> alert("getMensaje() ."); </script>"
} else {
   
// El resto de tu código

De lo contrario bien puedes inundar el navegador de alerts, mejor manda un solo mensaje y te evitas de broncas
  #7 (permalink)  
Antiguo 26/06/2012, 17:44
Usuario no validado
 
Fecha de Ingreso: abril-2009
Ubicación: Buenos Aires
Mensajes: 413
Antigüedad: 15 años
Puntos: 3
Respuesta: En que lugar del HTML grabo el registro

Te pregunto porque inundo al navegador de broncas??, si se ejecuta solo uno cuando hay algún error.
Quizás hay algo que estoy aprendiendo.
Muchas Gracias

Etiquetas: html, lugar, mysql, registro, tabla, usuarios
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 16:00.