cambiar_foto.php (En este archivo se crea el formulario para subir fotos, hay un formulario que no se puede editar y que tiene el nombre del usuario logueado, a partir de eso mando los datos del formulario al archivo para ingresar los datos a la bd y no lo hacen. Bien aca va.
Código PHP :
Código PHP:
<?php
session_start();
include('acceso_db.php'); // incluímos los datos de acceso a la BD
// comprobamos que se haya iniciado la sesión
if(isset($_SESSION['usuario_nombre'])) { ?>
<!doctype html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>Document</title>
</head>
<body>
<?
$usuario=($_SESSION['usuario_nombre']); // string
?>
<h4>Bienvenido <?=$usuario?></h4>
<form action="subir.php" method="POST" enctype="multipart/form-data">
<label for="imagen">Imagen:</label></br>
<input type="file" name="imagen" id="imagen" /></br>
<input type="text" value="<?=$usuario?>" name="usuario" disabled /></br>
<input type="submit" name="subir" value="Subir"/></br>
</form>
</body>
</html>
<?php
}else {
echo "Estás accediendo a una página restringida, para ver su contenido debes estar registrado.<br />
<a href='index.php'>Ingresar O Registrarse</a>";
}
?>
Ahora va el archivo que se encarga de hacer la inserción de los datos en la bd y no lo hace.
Código PHP :
Código PHP:
<?php
//conexion a la base de datos
mysql_connect("mysql.myhosting.com.ar", "miuser_gen", "micontraseña") or die(mysql_error()) ;
mysql_select_db("mibd") or die(mysql_error()) ;
//comprobamos si ha ocurrido un error.
if ($_FILES["imagen"]["error"] > 0){
echo "ha ocurrido un error";
} else {
//ahora vamos a verificar si el tipo de archivo es un tipo de imagen permitido.
//y que el tamano del archivo no exceda los 100kb
$permitidos = array("image/jpg", "image/jpeg", "image/gif", "image/png");
$limite_kb = 1000000;
if (in_array($_FILES['imagen']['type'], $permitidos) && $_FILES['imagen']['size'] <= $limite_kb * 1024){
//esta es la ruta donde copiaremos la imagen
//recuerden que deben crear un directorio con este mismo nombre
//en el mismo lugar donde se encuentra el archivo subir.php
$ruta = "imagenes/" . $_FILES['imagen']['name'];
//comprobamos si este archivo existe para no volverlo a copiar.
//pero si quieren pueden obviar esto si no es necesario.
//o pueden darle otro nombre para que no sobreescriba el actual.
if (!file_exists($ruta)){
//aqui movemos el archivo desde la ruta temporal a nuestra ruta
//usamos la variable $resultado para almacenar el resultado del proceso de mover el archivo
//almacenara true o false
$resultado = @move_uploaded_file($_FILES["imagen"]["tmp_name"], $ruta);
if ($resultado){
$nombre = $_FILES['imagen']['name'];
@mysql_query("INSERT INTO imagenes (imagen,usuario) VALUES ('$nombre', '$usuario')") ;
echo "el archivo ha sido movido exitosamente";
} else {
echo "ocurrio un error al mover el archivo.";
}
} else {
echo $_FILES['imagen']['name'] . ", este archivo existe";
}
} else {
echo "archivo no permitido, es tipo de archivo prohibido o excede el tamano de $limite_kb Kilobytes";
}
}
?>
Aclaro que yo se que no se suben los datos del nombre del usuario porque al fijarme en phpmyadmin, imagen, está completo, id tambien, y solo falta usuario. Que puede ser? Gracias.