Foros del Web » Programando para Internet » PHP »

Problema con este codigo

Estas en el tema de Problema con este codigo en el foro de PHP en Foros del Web. Hola gente: Tengo un formulario en donde ingreso los campos para insertar en una tabla mysql. Código PHP: if ( $_POST [ type_new ] ==  "Filiales" ) { ...
  #1 (permalink)  
Antiguo 16/02/2005, 15:49
Avatar de FuLaNo_  
Fecha de Ingreso: mayo-2003
Ubicación: Don Torcuato, Buenos Aires, Argentina
Mensajes: 1.250
Antigüedad: 14 años, 6 meses
Puntos: 2
Problema con este codigo

Hola gente:

Tengo un formulario en donde ingreso los campos para insertar en una tabla mysql.
Código PHP:
if ($_POST[type_new] == "Filiales") {
 
$q=mysql_query("SELECT * FROM noticias_filiales");
 
$t=mysql_num_rows($q);
 
$t=$t+1;
$directorio '/home/pf000304/public_html/news/filiales/img/new_'.$t.'.jpg';
  if (
move_uploaded_file($_FILES['archivo_usuario']['tmp_name'], $directorio)) {
      
$img 'new_'.$t.'.jpg';
      
$sql "INSERT INTO noticias_filiales (autor, fecha, titulo, cuerpo, imagen, img_alt)";
      
$sql .= "VALUES ('$autor', '$_POST[fecha]', '$_POST[titulo]', '$replace_cuerpo', '$img', '$_POST[img_alt]')";
      
$result mysql_query($sql); 
      echo 
'
      <p align="center"><b><font face="Verdana" size="2"><center><b>Upload Exitoso!</b><br>
      </b><p align="center"><font face="Verdana" size="1">La noticia se ha guardado en nuestra Base de Datos</center>
      <META HTTP-EQUIV="Refresh" content = "3; URL=../index.php">
      '
;
      }
        else {
  echo 
'
  Hubo un error! la noticia fue rechazada!
  <META HTTP-EQUIV="Refresh" content = "3; URL=javascript:history.back();">
  '
;
  }

El codigo lo uso en otros archivos y funciona correctamente, pero aqui no.

No me envia ningun error, la imagen es guardada correctamente, pero no inserta ningun campo en la base de datos.

Alguien sabe cual puede ser el problema?, como dije, este mismo codigo lo uso para subir noticias en otras tablas y funciona perfecto...

PD: todas las variables llegan al archivo de forma correcta... puede ser algun problema con los tiempos de ejecución? (no creo ya que es bastante rapido)
__________________
I Love Programming...

Última edición por FuLaNo_; 16/02/2005 a las 15:51
  #2 (permalink)  
Antiguo 16/02/2005, 16:10
Ex Colaborador
 
Fecha de Ingreso: junio-2002
Mensajes: 9.091
Antigüedad: 15 años, 5 meses
Puntos: 16
Hola,

Usa mysql_error() (www.php.net/mysql_error)
Código PHP:
$result mysql_query($sql) or die("Error $sql <br>MySQL dice: ".mysql_error()); 
Saludos.
__________________
Josemi

Aprendiz de mucho, maestro de poco.
  #3 (permalink)  
Antiguo 16/02/2005, 18:26
Avatar de braulito  
Fecha de Ingreso: abril-2004
Ubicación: Cusco - Perú
Mensajes: 597
Antigüedad: 13 años, 7 meses
Puntos: 8
No parece ser error de base de datos, pero usa también
Código PHP:
error_reporting(E_ALL); 
Para ver cuál es tu error.
__________________
Braulio Soncco
braulio at buayacorp dot com
Buayacorp - Programación y Diseño
  #4 (permalink)  
Antiguo 16/02/2005, 18:45
O_O
 
Fecha de Ingreso: enero-2002
Ubicación: Santiago - Chile
Mensajes: 34.417
Antigüedad: 15 años, 11 meses
Puntos: 126
Pero .. el problema concreto es:

1) no se crea el registro (no entra tu còdigo a tu parte del if() donde haces el INSERT) ..
2) Se crea el registro pero algùn campo de los que se le dà valor no tiene el valor esperado.

Por otro lado .. existe la funciòn is_uploaded_file() para comprobar si efectivamente subiò el archivo completo .. en lugar de esperar el "false" (con su mensaje de error) si no se puede ejecutar move_uploaded_file() ... De hecho esa funciòn se usa para "preguntar" si subiò el archivo y si es "true" .. entonces lo mueves con move_uploaded_file() por ejemplo.

www.php.net/is_uploaded_file

Un saludo,
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 12:21.