Foros del Web » Programando para Internet » PHP »

no os engaño

Estas en el tema de no os engaño en el foro de PHP en Foros del Web. Hola, no os voy a mentir, pero no tengo ni idea de php. Bien tengo que presentar un proyecto nuevo de registro y demas, bien ...
  #1 (permalink)  
Antiguo 24/08/2008, 07:55
 
Fecha de Ingreso: mayo-2008
Mensajes: 253
Antigüedad: 15 años, 10 meses
Puntos: 8
no os engaño

Hola, no os voy a mentir, pero no tengo ni idea de php. Bien tengo que presentar un proyecto nuevo de registro y demas, bien tengo este codigo:

Código PHP:
<?php 
include('conexion.php'); //conectamos con la base de datos 
$link Conectarse(); 
function 
quitar($mensaje//elimina símbolos indeseados 
{
$mensaje str_replace("<","&lt;",$mensaje); 
$mensaje str_replace(">","&gt;",$mensaje); 
$mensaje str_replace("\'","'",$mensaje); 
$mensaje str_replace('\"',"&quot;",$mensaje); 
$mensaje str_replace("\\\\","\",$mensaje); 
return $mensaje; 
}
//comprobamos con esta función que la dirección de email escrita es correcta 
function comprobar_email($email){ 
$mail_correcto = 0; 
//Hacemos una primera comprobación 
if ((strlen($email) >= 6) && (substr_count($email,"
@") == 1) && (substr($email,0,1) != "@") && 
(substr($email,strlen($email)-1,1) != "
@")){ 
if ((!strstr($email,"'")) && (!strstr($email,"\"")) && (!strstr($email,"\\")) && (!strstr($email,"\$")) && 
(!strstr($email," "))) { 
//miro si tiene caracter . 
if (substr_count($email,".")>= 1){ 
//obtengo la terminacion del dominio 
$term_dom = substr(strrchr ($email, '
.'),1); 
//compruebo que la terminación del dominio sea correcta 
if (strlen($term_dom)>1 && strlen($term_dom)<5 && (!strstr($term_dom,"@")) ){ 
//compruebo que lo de antes del dominio sea correcto 
$antes_dom = substr($email,0,strlen($email) - strlen($term_dom) - 1); 
$caracter_ult = substr($antes_dom,strlen($antes_dom)-1,1); 
if ($caracter_ult != "@" && $caracter_ult != "."){ 
$mail_correcto = 1; 
}}}}} 
if ($mail_correcto) 
return 1; //mail correcto 
else 
return 0; //mail incorrecto 
}
$comp_email = quitar($HTTP_POST_VARS["mailL"]); 
$i = comprobar_email($comp_email); //llamamos a la función 
if ($i != 0) //si la dirección de email es correcta... 
{
$sql = "SELECT id FROM usuarios WHERE nick='".quitar($HTTP_POST_VARS["
usuL"])."'"; 
$result = mysql_query($sql); 
if($row = mysql_fetch_array($result)) 


{
echo "&estatus=ocupado&"; //nick ocupado 
}
else 
{
//insertamos los datos en nuestra base de datos 
$sql = "INSERT INTO usuarios (nick, password, email, nombre, ciudad, edad) VALUES ("; 
$sql .= "'".quitar($HTTP_POST_VARS["
usuL"])."'"; 
$sql .= ",'".quitar($HTTP_POST_VARS["
passL"])."'"; 
$sql .= ",'".quitar($HTTP_POST_VARS["
mailL"])."'"; 
$sql .= ",'".quitar($HTTP_POST_VARS["
nombreL"])."'"; 
$sql .= ",'".quitar($HTTP_POST_VARS["
ciudadL"])."'"; 
$sql .= ",'".quitar($HTTP_POST_VARS["
edadL"])."";
$sql .= "
)"; 
mysql_query($sql); 
echo "
&estatus=ok&"; //registro exitoso 
}
mysql_free_result($result); 
mysql_close(); 
}
else 
{
echo "
&estatus=nomail&"; //mail incorrecto 
}
?>
Tengo el flash hecho y todo me funciona pero me falta un detalle y es que necesito que la fecha se grabe en la base de datos, tengo el campo creado "Fecha" Datatime. He buscado, pero lo que encuentro o no se ponerlo o no se. Aunque no os lo creais llevo 2 dias para esto, ¡¡ SIIII necesito ayuda por diossss !!! , que alguien me lo diga, estoy reventada con esto.

Gracias gracias

Última edición por gomminola; 24/08/2008 a las 08:30
  #2 (permalink)  
Antiguo 24/08/2008, 08:25
Avatar de NUCKLEAR
Moderador radioactivo
 
Fecha de Ingreso: octubre-2005
Ubicación: Cordoba-Argentina
Mensajes: 5.688
Antigüedad: 18 años, 5 meses
Puntos: 890
Respuesta: no os engaño

Esto, en teoria es un formulario de registro..? Con el codigo que pusiste te funciona bien.? y solo quieres agregar un campo fecha? si es asi solo tienes que agregar un campo nuevo a tu formulario, recuerda que las fechas en mysql(date) se almacena asi aaaa-mm-dd si envias los datos de manera incorrecta no se almacenara.
__________________
Drupal Argentina
  #3 (permalink)  
Antiguo 24/08/2008, 08:28
 
Fecha de Ingreso: mayo-2008
Mensajes: 253
Antigüedad: 15 años, 10 meses
Puntos: 8
Respuesta: no os engaño

Hola nuklear, si es un formulario de registro y si me funciona bien, ¿hay algo que deba saber?
El problema mio al tener el nivel 0 en php, no se donde va ese campo, he probado algunos y codigos y ahi si que me falla, ni fecha, ni registro ni nada, la pregunta es ¿Cual codigo es el bueno para que vaya?, lo unico que quiero es que el usuario al mandar el formulario, la fecha se grabe en la base de datos en su campo. Gracias Gracias
  #4 (permalink)  
Antiguo 24/08/2008, 08:31
 
Fecha de Ingreso: mayo-2008
Mensajes: 253
Antigüedad: 15 años, 10 meses
Puntos: 8
Respuesta: no os engaño

Lo cierto es que el codigo en el dreamwever se ve de otra manera no tantas letras amarillas
  #5 (permalink)  
Antiguo 24/08/2008, 08:44
 
Fecha de Ingreso: mayo-2008
Mensajes: 253
Antigüedad: 15 años, 10 meses
Puntos: 8
Respuesta: no os engaño

En la funcion de la base de datos hay que añadir algo

La tabla es asi.

Fecha - tipo date - funcion no he puesto nada -
  #6 (permalink)  
Antiguo 24/08/2008, 09:28
 
Fecha de Ingreso: mayo-2008
Mensajes: 253
Antigüedad: 15 años, 10 meses
Puntos: 8
Respuesta: no os engaño

Nadie sabe algo? una ayuditaaa......
  #7 (permalink)  
Antiguo 24/08/2008, 09:58
 
Fecha de Ingreso: mayo-2008
Mensajes: 253
Antigüedad: 15 años, 10 meses
Puntos: 8
Respuesta: no os engaño

Bueno algo creo que he averiguado, el codigo de la fecha deberia de ir por aqui?

Cita:
$sql = "SELECT id FROM usuarios WHERE nick='".quitar($HTTP_POST_VARS["usuL"])."'";
$result = mysql_query($sql);

if($row = mysql_fetch_array($result))



{
echo "&estatus=ocupado&"; //nick ocupado
}
else
{
//insertamos los datos en nuestra base de datos
$sql = "INSERT INTO usuarios (nick, password, email, nombre, ciudad, edad) VALUES (";
$sql .= "'".quitar($HTTP_POST_VARS["usuL"])."'";
$sql .= ",'".quitar($HTTP_POST_VARS["passL"])."'";
$sql .= ",'".quitar($HTTP_POST_VARS["mailL"])."'";
$sql .= ",'".quitar($HTTP_POST_VARS["nombreL"])."'";
$sql .= ",'".quitar($HTTP_POST_VARS["ciudadL"])."'";
$sql .= ",'".quitar($HTTP_POST_VARS["edadL"])."'";
$sql .= ")";
mysql_query($sql);
echo "&estatus=ok&"; //registro exitoso
}
mysql_free_result($result);
mysql_close();
}
else
{
echo "&estatus=nomail&"; //mail incorrecto
}
?>
  #8 (permalink)  
Antiguo 24/08/2008, 10:01
Avatar de Ronruby  
Fecha de Ingreso: julio-2008
Ubicación: 18°30'N, 69°59'W
Mensajes: 4.879
Antigüedad: 15 años, 9 meses
Puntos: 416
Respuesta: no os engaño

Tienes un pequeño error de sintaxis, por eso salen todas esas letras "rojas"

Código PHP:
function quitar($mensaje//elimina símbolos indeseados 
{
$mensaje str_replace("<","&lt;",$mensaje); 
$mensaje str_replace(">","&gt;",$mensaje); 
$mensaje str_replace("\'","'",$mensaje); 
$mensaje str_replace('\"',"&quot;",$mensaje); 
$mensaje str_replace("\\\\","\"",$mensaje); 
return 
$mensaje

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 15:57.