Foros del Web » Programando para Internet » PHP »

Pantalla en Blanco

Estas en el tema de Pantalla en Blanco en el foro de PHP en Foros del Web. Hola Muchachos como están? Es bueno escribirles nuevamente a pesar de que sea por inconvenientes. Estoy editando y combinando varios script para hacer un registro ...
  #1 (permalink)  
Antiguo 03/07/2011, 18:17
Avatar de luismarcos  
Fecha de Ingreso: mayo-2007
Ubicación: Mérida, VE
Mensajes: 48
Antigüedad: 17 años
Puntos: 1
Pregunta Pantalla en Blanco

Hola Muchachos como están? Es bueno escribirles nuevamente a pesar de que sea por inconvenientes. Estoy editando y combinando varios script para hacer un registro de usuarios y este es el motor del formulario, al enviar el formulario me sale una pantalla en blanco ya no se que hacer. Les pego el Script a ver si alguien me hecha una mano.

Saludos!

Código PHP:
<?php
function include ("conex.php");

if      (
trim($HTTP_POST_VARS["cedula"]) != ""
      
&& trim($HTTP_POST_VARS["nombre"]) != "")
      && 
trim($HTTP_POST_VARS["apellido"]) != "")
      && 
trim($HTTP_POST_VARS["email"]) != "")
      && 
trim($HTTP_POST_VARS["telefono"]) != "")
      && 
trim($HTTP_POST_VARS["password"]) != "")
      && 
trim($HTTP_POST_VARS["cpassword"]) != "")
      && 
trim($HTTP_POST_VARS["m1"]) != "")
      && 
trim($HTTP_POST_VARS["m2"]) != "")
      && 
trim($HTTP_POST_VARS["m3"]) != "")
      && 
trim($HTTP_POST_VARS["m4"]) != "")
      && 
trim($HTTP_POST_VARS["m5"]) != "")
      {
$sql "SELECT cedula FROM usuarios WHERE cedula='".quitar($HTTP_POST_VARS["cedula"])."'";
$result mysql_query($sql);
if(
$row mysql_fetch_array($result))
{
echo 
"Error, Cedula Existente en el Sistema!";
}
if(
$password!=$cpassword) {
echo 
"Las contrase&ntilde;as no coinciden";
}
else
{
$query “INSERT INTO users (cedula,nombre,apellido,email,telefono,password,m1,m2,m3,m4,m5,obsVALUES('$cedula','$nombre','$apellido','$email','$telefono','$password','$m1','$m2','$m3','$m4','$m5','obs');
mysql_query($query) or die(mysql_error());
echo 
“El usuario '$nombre' '$apellido' ha sido registrado de manera satisfactoria.;
}
mysql_free_result($result);
}
else
{
echo 
"Todos los datos, excepto las observaciones son obligatorios";
}
mysql_close();
?>
  #2 (permalink)  
Antiguo 03/07/2011, 19:03
Avatar de ebe
ebe
 
Fecha de Ingreso: marzo-2004
Ubicación: Guatemala
Mensajes: 363
Antigüedad: 20 años, 1 mes
Puntos: 11
Respuesta: Pantalla en Blanco

Lo que puedes hacer es activar los errores en tu servidor ya sea por medio de que configures tu php.ini o bien los actives en tiempo de ejecución utilizando

error_reporting(E_ALL);
ini_set('display_errors','On');


y ver cual es tu error, puede ser de sql.
__________________
http://dev.wsnetcorp.com
  #3 (permalink)  
Antiguo 03/07/2011, 19:15
 
Fecha de Ingreso: junio-2010
Ubicación: Venezuela, Zulia
Mensajes: 686
Antigüedad: 13 años, 10 meses
Puntos: 55
Respuesta: Pantalla en Blanco

bueno primero ya esto

$HTTP_POST_VARS

cambio por

$_POST

por otro lado esto esta malo
function include ("conex.php");

si ya tienes un archivo conex.php basta con llamarlo sin colocar function
include_once('conex.php');
__________________
<?php echo "No te metas a lo hondo del Mar si no sabes nadar, primero aprende a nadar" ?>
...Error en linea: 1 o.O
  #4 (permalink)  
Antiguo 03/07/2011, 20:20
Avatar de luismarcos  
Fecha de Ingreso: mayo-2007
Ubicación: Mérida, VE
Mensajes: 48
Antigüedad: 17 años
Puntos: 1
Pregunta Respuesta: Pantalla en Blanco

Gracias por sus consejos muchachos!

Ya hice los cambios, coloque:
Código PHP:
error_reporting(E_ALL);
ini_set('display_errors','On'); 
Y todavía nada, el formulario se envía en POST a registro.php que es el susodicho script y en vez de darme algún error me lanza una pantalla en blanco y más nada.
Coloco nuevamente el script modificado:
Código PHP:
<?php
error_reporting
(E_ALL);
ini_set('display_errors','On');
include_once(
'conex.php');

if      (
trim($_POST["cedula"]) != ""
      
&& trim($_POST["nombre"]) != ""
      
&& trim($_POST["apellido"]) != ""
      
&& trim($_POST["email"]) != ""
      
&& trim($_POST["telefono"]) != ""
      
&& trim($_POST["password"]) != ""
      
&& trim($_POST["cpassword"]) != ""
      
&& trim($_POST["m1"]) != ""
      
&& trim($_POST["m2"]) != ""
      
&& trim($_POST["m3"]) != ""
      
&& trim($_POST["m4"]) != ""
      
&& trim($_POST["m5"]) != "")
      {
$sql "SELECT cedula FROM usuarios WHERE cedula='"($_POST["cedula"])."'";
$result mysql_query($sql);
if(
$row mysql_fetch_array($result))
{
echo 
"Error, Cedula Existente en el Sistema!";
}
if(
$password!=$cpassword) {
echo 
"Las contrase&ntilde;as no coinciden";
}
else
{
$query = &#8220;INSERT INTO users (cedula,nombre,apellido,email,telefono,password,m1,m2,m3,m4,m5,obs) VALUES('$cedula','$nombre','$apellido','$email','$telefono','$password','$m1','$m2','$m3','$m4','$m5','obs')”;
mysql_query($query) or die(mysql_error());
echo &
#8220;El usuario '$nombre' '$apellido' ha sido registrado de manera satisfactoria.”;
}
mysql_free_result($result);
}
else
{
echo 
"Todos los datos, excepto las observaciones son obligatorios";
}
mysql_close();
?>
Por cierto probe el conex.php y funciona bien!

Última edición por luismarcos; 03/07/2011 a las 20:27 Razón: agregar info
  #5 (permalink)  
Antiguo 03/07/2011, 20:51
Avatar de carlos_belisario
Colaborador
 
Fecha de Ingreso: abril-2010
Ubicación: Venezuela Maracay Aragua
Mensajes: 3.156
Antigüedad: 14 años
Puntos: 461
Respuesta: Pantalla en Blanco

creo que tienes bastantes errores de entendimiento del lenguaje, primero cuando haces una comparacion debes a si es igual un valor lo haces con == no con = ya que de esa manera solo estarias asignando, ahora en esta linea
Código PHP:
Ver original
  1. if($row = mysql_fetch_array($result))
suponiendo que lo que quieres saber es si existe la cedula en la db solo deberias de hacer un mysql_num_rows que te daria un valor y no esto que hiciste donde de verdad no estas comparando nada
Código PHP:
Ver original
  1. if(mysql_num_rows($result) > 0){
  2. // la validacion
  3. }else{
  4. // lo que haces si cumple con la validacion
  5. }
aca
Código PHP:
Ver original
  1. if($password!=$cpassword) {
  2.         echo "Las contrase&ntilde;as no coinciden";
  3.     }
ninguna de las dos variables que estas comparando existen, si lo que deseas es comparar los campos debiste hacerlo con el $_POST['password'] y $_POST['cpassword'] o asignar estos valores a la variable que indicas.
prueba haciendo esto y ve si te da algun resultado
__________________
aprende d tus errores e incrementa tu conocimientos
it's not a bug, it's an undocumented feature By @David
php the right way
  #6 (permalink)  
Antiguo 04/07/2011, 11:43
Avatar de luismarcos  
Fecha de Ingreso: mayo-2007
Ubicación: Mérida, VE
Mensajes: 48
Antigüedad: 17 años
Puntos: 1
Pregunta Respuesta: Pantalla en Blanco

Excelente Carlos!! Un millón de gracias, ya el script funciono! la verdad es que esto del php es complicado, pero sin embargo es muy envolvente y cada vez me gusta más, por cierto tengo otra duda, se puede sacar HTML en un ECHO? Es decir algo así por poner un ejemplo:

Código PHP:
ECHO "<p>TEXTO</p>"
Gracias por toda su ayuda.
  #7 (permalink)  
Antiguo 04/07/2011, 13:23
Avatar de carlos_belisario
Colaborador
 
Fecha de Ingreso: abril-2010
Ubicación: Venezuela Maracay Aragua
Mensajes: 3.156
Antigüedad: 14 años
Puntos: 461
Respuesta: Pantalla en Blanco

eso es correcto, te sugiero que hagas algunos tutoriales de PHP, personalmente me gusta http://phpya.com.ar, saludos
__________________
aprende d tus errores e incrementa tu conocimientos
it's not a bug, it's an undocumented feature By @David
php the right way

Etiquetas: blanco, pantalla, registro, 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 05:42.