Foros del Web » Programando para Internet » PHP »

no me funcionan las funciones date()

Estas en el tema de no me funcionan las funciones date() en el foro de PHP en Foros del Web. buenas, mi problema es q intento guardar la fecha actual automaticamente en la bd, en la bd tengo la columna FECHA y en el query ...
  #1 (permalink)  
Antiguo 31/10/2012, 07:58
 
Fecha de Ingreso: septiembre-2012
Ubicación: santo domingo
Mensajes: 53
Antigüedad: 11 años, 6 meses
Puntos: 0
Pregunta no me funcionan las funciones date()

buenas, mi problema es q intento guardar la fecha actual automaticamente en la bd,
en la bd tengo la columna FECHA y en el query en fecha guardo la variable $fecha q es igual a date("Y-m-d"), tengo un form q sube noticias a la bd y quiero q al subir las noticias tambn se guarde la fecha automaticamente, pero cuando subo las noticias el campo de fecha sale en 0000-00-00 e intentado diferentes formas, pero ninguna me ha funcionado aqui dejo el codigo para q les sea mas facil entender:

Código:
$conexion = mysql_connect($host,$user,$pw) or die("No se pudo realizar la conexion con el servidor.");
	mysql_select_db($db,$conexion) or die("No se puede seleccionar BD"); // tu_bd es el nombre de la Base de datos .. por siaca.
        mysql_set_charset("utf-8",$connexion);
	$titulo = $_POST['titulo'];
	$contenido = $_POST['contenido'];
	$fecha = date("Y-m-d");
	
$dir = "../content_imagenes/"; 
$ext = array('image/jpeg', 'image/gif', 'image/png', 'image/bmp', 'image/tiff'); 
    
        $attachtmp  = $_FILES['file']['tmp_name'];
        $attachtype = $_FILES['file']['type'];
        $attachname = $_FILES['file']['name'];
        if(file_exists($attachtmp)) {
            if(is_uploaded_file($attachtmp)) {
                if(in_array($attachtype,$ext) && $ruta = move_uploaded_file($attachtmp, "$dir$attachname) && $_POST['submit']){
		
$consulta_insertar = "INSERT INTO cms_frontpage(ID, file_path, file_nombre, file_tmp, TITULO, CONTENIDO, FECHA) VALUES ('','$dir$attachname', '$attachname', '$attachtmp', '$titulo','$contenido', '$fecha')";
		mysql_query($consulta_insertar,$conexion) or die("No se pudo insertar los datos en la base de datos.");
                mysql_set_charset("utf-8",$connexion);
                    header("location: http://gobernacionsd.comyr.com/form_php/formulario.php");
                } 

                        elseif( isset($titulo) && empty($titulo) or
			isset($contenido) && empty($contenido)) {

                    echo '<script type="text/javascript">alert("no puede dejar campos en blanco y el formato de las imagenes debe ser: jpg, png, tiff o bmp unicamente.")</script>';
                }
            }
        }
  #2 (permalink)  
Antiguo 31/10/2012, 08:09
Avatar de gersveo  
Fecha de Ingreso: julio-2008
Mensajes: 145
Antigüedad: 15 años, 9 meses
Puntos: 5
Respuesta: no me funcionan las funciones date()

Prueba con esto...
Código PHP:
$consulta_insertar "INSERT INTO cms_frontpage(ID, file_path, file_nombre, file_tmp, TITULO, CONTENIDO, FECHA) VALUES ('','$dir$attachname', '$attachname', '$attachtmp', '$titulo','$contenido', CURRENT_DATE)"
CURRENT_DATE: fecha del servidor de base de datos.

esta línea tienes que agregarle una coma (") o concatenarlos sin comillas sino con punto (.)
Código PHP:
if(in_array($attachtype,$ext) && $ruta move_uploaded_file($attachtmp"$dir$attachname") && $_POST['submit']){ 
Código PHP:
if(in_array($attachtype,$ext) && $ruta move_uploaded_file($attachtmp$dir.$attachname) && $_POST['submit']){ 
  #3 (permalink)  
Antiguo 31/10/2012, 08:14
Avatar de djaevi  
Fecha de Ingreso: marzo-2007
Ubicación: Moreno, Buenos Aires
Mensajes: 400
Antigüedad: 17 años, 1 mes
Puntos: 47
Respuesta: no me funcionan las funciones date()

Como te recomendo gersveo te conviene usar fechas propias de SQL yo uso curDate() y curTime() las cuales devuelven la fecha en formato 2012-10-31 y la hora 11:15:00.

Salu2
  #4 (permalink)  
Antiguo 31/10/2012, 08:29
 
Fecha de Ingreso: octubre-2010
Ubicación: España
Mensajes: 1.007
Antigüedad: 13 años, 6 meses
Puntos: 123
Respuesta: no me funcionan las funciones date()

declara $fecha como $fecha=date("Y/n/d"); y no como $fecha=date("Y-n-d");

si solo con eso no funciona pon tambien la query asi {$fecha1}

ejemplo:
$consulta_insertar = "INSERT INTO cms_frontpage(ID, file_path, file_nombre, file_tmp, TITULO, CONTENIDO, FECHA) VALUES ('','$dir$attachname', '$attachname', '$attachtmp', '$titulo','$contenido', '{$fecha}')";


pruebalo y me cuentas.
  #5 (permalink)  
Antiguo 31/10/2012, 12:57
 
Fecha de Ingreso: septiembre-2012
Ubicación: santo domingo
Mensajes: 53
Antigüedad: 11 años, 6 meses
Puntos: 0
Pregunta Respuesta: no me funcionan las funciones date()

he intentado las formas q me dicen pero aun asi en la bd el campo fecha sale con: 0000-00-00 :/ puse current_date y '{$fecha}' arreglandole la variable poniendola como me dijo xerifandtomas $fecha = date("Y/n/d"), pero nada :s aalguna idea?
  #6 (permalink)  
Antiguo 31/10/2012, 15:56
Avatar de djaevi  
Fecha de Ingreso: marzo-2007
Ubicación: Moreno, Buenos Aires
Mensajes: 400
Antigüedad: 17 años, 1 mes
Puntos: 47
Respuesta: no me funcionan las funciones date()

Código PHP:
Ver original
  1. "INSERT INTO cms_frontpage(ID, file_path, file_nombre, file_tmp, TITULO, CONTENIDO, FECHA) VALUES (NULL,'$dir$attachname', '$attachname', '$attachtmp', '$titulo','$contenido', curDate())";
  #7 (permalink)  
Antiguo 01/11/2012, 22:08
 
Fecha de Ingreso: septiembre-2012
Ubicación: santo domingo
Mensajes: 53
Antigüedad: 11 años, 6 meses
Puntos: 0
Pregunta Respuesta: no me funcionan las funciones date()

nada, lo pongo y no pasa nada, el campo date se queda en 0000-00-00, noc porq pasa esto ayudaaa! x_X
  #8 (permalink)  
Antiguo 02/11/2012, 07:20
erchavalin
Invitado
 
Mensajes: n/a
Puntos:
Respuesta: no me funcionan las funciones date()

Has probado a modificar tu php.ini? Comprueba que haya un date.timezone definido, a mí me paso algo similar y así lo pude solucionar
  #9 (permalink)  
Antiguo 04/11/2012, 14:05
 
Fecha de Ingreso: septiembre-2012
Ubicación: santo domingo
Mensajes: 53
Antigüedad: 11 años, 6 meses
Puntos: 0
Pregunta Respuesta: no me funcionan las funciones date()

Cita:
Iniciado por erchavalin Ver Mensaje
Has probado a modificar tu php.ini? Comprueba que haya un date.timezone definido, a mí me paso algo similar y así lo pude solucionar
podria probar pero para eso me tendrias q decir donde esta el php.ini xD, alguna idea?
  #10 (permalink)  
Antiguo 04/11/2012, 17:29
Avatar de gnzsoloyo
Moderador criollo
 
Fecha de Ingreso: noviembre-2007
Ubicación: Actualmente en Buenos Aires (el enemigo ancestral)
Mensajes: 23.324
Antigüedad: 16 años, 4 meses
Puntos: 2658
Respuesta: no me funcionan las funciones date()

Empecemos con el principio: Este es el foro d MySQL, y como subforo de PHP, no se permiten códigos de programación, ni temas ajenos al SQL o las bases de datos.

Al margen de eso, todo lo que describen hace suponer que hay algún error en una de dos partes:
1) En la definición del campo de la tabla, o 2) En la forma de armar la sentencia INSERT en el PHP.
EN el primer caso, deberíamos asegurarnos de cómo está hecho ese CREATE TABLE, para verificar que no haya un tipo erroneo de dato.
En el segundo caso, la única forma de verificar si la sentencia está bien construida cuando pones los datos es que puedas capturarla antes de enviarla a ejecutar.
Si la sentencia está bien creada, entonces el tema es asunto de programación, y te paso el post al Foro de PHP para que lo sigan con los mejores en ese lenguaje.
__________________
¿A quién le enseñan sus aciertos?, si yo aprendo de mis errores constantemente...
"El problema es la interfase silla-teclado." (Gillermo Luque)
  #11 (permalink)  
Antiguo 04/11/2012, 19:24
 
Fecha de Ingreso: septiembre-2012
Ubicación: santo domingo
Mensajes: 53
Antigüedad: 11 años, 6 meses
Puntos: 0
Pregunta Respuesta: no me funcionan las funciones date()

Cita:
Iniciado por gnzsoloyo Ver Mensaje
Empecemos con el principio: Este es el foro d MySQL, y como subforo de PHP, no se permiten códigos de programación, ni temas ajenos al SQL o las bases de datos.

Al margen de eso, todo lo que describen hace suponer que hay algún error en una de dos partes:
1) En la definición del campo de la tabla, o 2) En la forma de armar la sentencia INSERT en el PHP.
EN el primer caso, deberíamos asegurarnos de cómo está hecho ese CREATE TABLE, para verificar que no haya un tipo erroneo de dato.
En el segundo caso, la única forma de verificar si la sentencia está bien construida cuando pones los datos es que puedas capturarla antes de enviarla a ejecutar.
Si la sentencia está bien creada, entonces el tema es asunto de programación, y te paso el post al Foro de PHP para que lo sigan con los mejores en ese lenguaje.
como hago para capturar la fecha e insertarla en la tabla :s no creo q con una variable q contenga el date() para luego poner esa variable en el valor a insertar funcione o si?
  #12 (permalink)  
Antiguo 04/11/2012, 19:36
Avatar de gnzsoloyo
Moderador criollo
 
Fecha de Ingreso: noviembre-2007
Ubicación: Actualmente en Buenos Aires (el enemigo ancestral)
Mensajes: 23.324
Antigüedad: 16 años, 4 meses
Puntos: 2658
Respuesta: no me funcionan las funciones date()

Cita:
como hago para capturar la fecha e insertarla en la tabla :s no creo q con una variable q contenga el date() para luego poner esa variable en el valor a insertar funcione o si?
¿Te ha quedado claro que eso no es tema de MySQL, sino de PHP?
Las variables de PHP no existen para MySQL. MySQL y PHP son entidades separadas.
Lo que MySQL recibe es una cadena de texto conteniendo la sentencia SQL donde están embebidos también los datos (y no las variables), pero el cómo generes esa cadena, es tema del lenguaje de programación (y eso es off-topic).
Así que, con tu permiso, paso el post al Foro de PHP para que te digan cómo hacer con ese lenguaje para crear la cadena correctamente.
__________________
¿A quién le enseñan sus aciertos?, si yo aprendo de mis errores constantemente...
"El problema es la interfase silla-teclado." (Gillermo Luque)
  #13 (permalink)  
Antiguo 05/11/2012, 11:51
 
Fecha de Ingreso: septiembre-2012
Ubicación: santo domingo
Mensajes: 53
Antigüedad: 11 años, 6 meses
Puntos: 0
Respuesta: no me funcionan las funciones date()

si lo entiendo, no prob :)

Etiquetas: formulario, funcionan, funciones, imagenes, mysql, variables
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 13:10.