Hola, disculpen que vuelva a molestar, lo que pasa que deseo agregar una imagen en mi pagina web y guardar la url en la base de datos, pero me muestra este error, ayuda porfis. :-(
if(isset($_POST['enviar'])){
if(!empty($_POST['imagen'])){
//solo si no esta vacio $_POST['imagen'] pasa esto:
$rutaEnServidor = '../imagenes';
$rutaTemporal = $_FILES['imagen']['tmp_name'];
$nombreImagen = $_FILES['imagen']['name'];
$rutaDestino = $rutaEnServidor.'/'.$nombreImagen;
move_uploaded_file($rutaTemporal,$rutaDestino);
$nombre=$_POST['nombre'];
$apellidopat=$_POST['apellidopat'];
$apellidomat=$_POST['apellidomat'];
$institucion=$_POST['institucion'];
$pagina=$_POST['pagina'];
$direccion=$_POST['direccion'];
$sql = "INSERT INTO investigador VALUES ('NULL','$nombre','$apellidopat','$apellidomat','$institucion','$pagina','$rutaDestino','NULL','$direccion')";
$res = mysql_query($sql) or die(mysql_error());
if ($res){
echo 'inserción con exito';
}
}
else{
echo 'no se puedo insertar';
}
}
Notice: Undefined index: imagen in
Imagino que es por el html del form, es decir, debes de tener así!
<form action="TuFormPost.php" method="post" enctype="multipart/form-data">
Ya verifique eso y aun así me sigue mostrando el mismo error.
Notice: Undefined index: imagen in
hola... modifica tu post principal y coloca el codigo entre etiquetas GeSHi...
sobre el tema
usa
if(isset($_POST['imagen'])&&$_POST['imagen'])
en lugar de
if(!empty($_POST['imagen']))
si aún sigue dando el error vas a colocar solo en el archivo
var_dump($_POST);
y nos muestras la salida
Eso me muestra
array
'imagen' => string 'DSCN7758.JPG' (length=12)
'nombre' => string '' (length=0)
'apellidopat' => string '' (length=0)
'apellidomat' => string '' (length=0)
'institucion' => string '' (length=0)
'pagina' => string '' (length=0)
'direccion' => string '' (length=0)
'enviar' => string 'Enviar' (length=6)
y me sigue
Notice: Undefined index: imagen in
mostrando el primer error
el mensaje te sale así cortado?
CitarNotice: Undefined index: imagen in
has un
var_dump($_FILES)
si puedes publica el codigo del form que usas para el upload
Linea 4 de tu código, compruebas si esta definida $_POST['imagen'] cuando tienes que comprobar si esta definida $_FILES['imagen']....
Saludos
Ya corregi el error, ahora no me muestra la imagen en la ventana que quiero que aparezca, no me muestra un error. Pero cuando hago la consulta con mysql no me muestra la imagen. Cabe mencionar que si me guarda la url en la base de datos y asi mismo la foto en la carpeta que he creado.
este es mi codigo para hacer la consulta.
$consulta2=mysql_query("SELECT * FROM investigador where id_inv='$id'");//codigo para hacer la consulta a la DB
while($row=mysql_fetch_array($consulta2)){
echo'<div align="center"><img src="'.$row['ruta_img'].'" align="center" width="100px" height="100px"/></div><br/>';
Pues mira el código fuente de la pagina en ejecución y mira que dato te esta dando en la imagen, de allí miras la url a la que direcciona la imagen
para futuras referencias y otras personas con la duda, por favor explica tu manera de resolver el problema
Este código utilice para subir la imagen y guardar la url en la base de datos.
<?php
session_start();
include('../dbredhistal/conexion.php');//manda a traer la conexion.php donde se encuentra el codigo de la conexion del servidor y la base de datos
$ruta="C:/wamp/www/proyecto_redhistal/imagenes";
$nameimagen=$_FILES['imagen']['name'];
$tmpimagen=$_FILES['imagen']['tmp_name'];
move_uploaded_file($tmpimagen,$ruta."/".$nameimagen);
$ruta=$ruta."/".$nameimagen;
$nombre=$_POST['nombre'];
$apellidopat=$_POST['apellidopat'];
$apellidomat=$_POST['apellidomat'];
$institucion=$_POST['institucion'];
$pagina=$_POST['pagina'];
$direccion=$_POST['direccion'];
$sql = "INSERT INTO investigador VALUES ('NULL','$nombre','$apellidopat','$apellidomat','$institucion','$pagina','$ruta','NULL','$direccion')";
$res = mysql_query($sql) or die(mysql_error());
if ($res){
echo'<script language="javascript" type="text/javascript">
alert("Inserccion con exito.");
</script><a href="../investigadores.php">Investigadores</a>';
}
else{
echo'<script language="javascript" type="text/javascript">
alert("Error, vuelva a insertar sus datos.");
</script><a href="../agregar_investigador.php">Vuelva a insertar los datos correspondientes.</a>';
}?>
Cita de: Shell Root en 21 Noviembre 2014, 18:05 PM
Pues mira el código fuente de la pagina en ejecución y mira que dato te esta dando en la imagen, de allí miras la url a la que direcciona la imagen
??
Estas usando la ruta C:/wamp/www/proyecto_redhistal/imagenes en el html, por eso no te muestra las imágenes.
Ya le quite la ruta C:/wamp/www/proyecto_redhistal/imagenes
y la deje asi, pero aun asi no me muestra la imagen
$ruta="imagenes/";
Si guarda la imagen en la carpeta.
Cuál es la ruta base del php que muestra la imágenes www o proyecto_redhistal
$ruta="imagenes/".$nameimagen;
Podrias por favor colocar todo el codigo de subir la imagen, tengo el mismo problema y ya lo revise una y otra vez gracias!
O solo es problema de la variable Ruta?
Cita de: amycita88 en 5 Enero 2015, 16:32 PM
Podrias por favor colocar todo el codigo de subir la imagen, tengo el mismo problema y ya lo revise una y otra vez gracias!
O solo es problema de la variable Ruta?
Mejor abre un nuevo tema con tu código completo y error en cuestión. El problema puede ser muy diferente.
es el mismo error, y he buscado en el inter y no hay muchas soluciones disponibles, y esta es la unica en la cual agrego : enctype="multipart/form-data al form y siguio con el problema.
A mi me pasa lo mismo. :-(
Cita de: amycita88 en 6 Enero 2015, 02:55 AM
es el mismo error, y he buscado en el inter y no hay muchas soluciones disponibles, y esta es la unica en la cual agrego : enctype="multipart/form-data al form y siguio con el problema.
A mi me pasa lo mismo. :-(
El error que muestra es generico, si a caso lo único que dice es que no encuentra un indice 'imagen' en el arreglo. Así que lo único que te puedo decir si es que no pones tu código en un nuevo thread con el error completo, es que tienes una llamada tipo $arreglo['imagen'] en alguna parte de tu código que no es correcta.
Insisto, haz un nuevo thread, pon tu código ahí y el error completo.
CitarInsisto, haz un nuevo thread, pon tu código ahí y el error completo.
Tema cerrado.Saludos