Ver Mensaje Individual
  #1 (permalink)  
Antiguo 11/11/2013, 09:57
all7
Invitado
 
Mensajes: n/a
Puntos:
foto de perfil de usuarios registrados

como pueden los usuarios de mi web anadir una foto de perfil
tengo un login de rejestro pero le falta anadir un formulario para que los usuarios pueden agregar foto de perfil que hago una tabla a parte de la tabla de usuarios
o hago solo una columna para fotos de perfil en la tabla de usuarios estoy perdido
este es el registro de usuarios

<?php
include('acceso_db.php'); // incluimos el archivo de conexión a la Base de Datos
if(isset($_POST['enviar'])) { // comprobamos que se han enviado los datos desde el formulario
// creamos una función que nos parmita validar el email
function valida_email($correo) {
if (eregi("^[_.0-9a-z-]+@[0-9a-z._-]+.[a-z]{2,4}$", $correo)) return true;
else return false;
}
// Procedemos a comprobar que los campos del formulario no estén vacíos
$sin_espacios = count_chars($_POST['usuario_nombre'], 1);
if(!empty($sin_espacios[32])) { // comprobamos que el campo usuario_nombre no tenga espacios en blanco
echo "El campo <em>usuario_nombre</em> no debe contener espacios en blanco. <a href='javascript:history.back();'>Reintentar</a>";
}elseif(empty($_POST['usuario_nombre'])) { // comprobamos que el campo usuario_nombre no esté vacío
echo "No haz ingresado tu usuario ._.<a href='javascript:history.back();'>Reintentar</a>";
}elseif(empty($_POST['usuario_clave'])) { // comprobamos que el campo usuario_clave no esté vacío
echo "No haz ingresado contraseña. <a href='javascript:history.back();'>Reintentar</a>";
}elseif($_POST['usuario_clave'] != $_POST['usuario_clave_conf']) { // comprobamos que las contraseñas ingresadas coincidan
echo "Las contraseñas ingresadas no coinciden. <a href='javascript:history.back();'>Reintentar</a>";
}elseif(!valida_email($_POST['usuario_email'])) { // validamos que el email ingresado sea correcto
echo "El email ingresado no es válido. <a href='javascript:history.back();'>Reintentar</a>";
}else {
// "limpiamos" los campos del formulario de posibles códigos maliciosos
$usuario_nombre = mysql_real_escape_string($_POST['usuario_nombre']);
$usuario_clave = mysql_real_escape_string($_POST['usuario_clave']);
$usuario_email = mysql_real_escape_string($_POST['usuario_email']);
// comprobamos que el usuario ingresado no haya sido registrado antes
$sql = mysql_query("SELECT usuario_nombre FROM usuarios WHERE usuario_nombre='".$usuario_nombre."'");
if(mysql_num_rows($sql) > 0) {
echo "El nombre usuario elegido ya ha sido registrado anteriormente. <a href='javascript:history.back();'>Reintentar</a>";
}else {
$usuario_clave = md5($usuario_clave); // encriptamos la contraseña ingresada con md5
// ingresamos los datos a la BD
$reg = mysql_query("INSERT INTO usuarios (usuario_nombre, usuario_clave, usuario_email, usuario_freg) VALUES ('".$usuario_nombre."', '".$usuario_clave."', '".$usuario_email."', NOW())");
if($reg) {
echo "Datos ingresados correctamente.";
}else {
echo "ha ocurrido un error y no se registraron los datos.";
}
}
}
}else {
?>

<html>

<head>

<title>Registro de Usuarios</title>



</head>

<body>

<h1>Formulario de Registro!</h1>

<form action="<?=$_SERVER['PHP_SELF']?>" method="post">
<label>Usuario:</label><br />
<input type="text" name="usuario_nombre" maxlength="15" /><br />
<label>Contraseña:</label><br />
<input type="password" name="usuario_clave" maxlength="15" /><br />
<label>Confirmar Contraseña:</label><br />
<input type="password" name="usuario_clave_conf" maxlength="15" /><br />
<label>Email:</label><br />
<input type="text" name="usuario_email" maxlength="50" /><br

<input type="submit" name="enviar" value="Registrar" />
<input type="reset" value="Borrar" />
</form>
<br />
<br />
<br />
<?php
}
?>

</body>

</html>










<?php


//conexion a la base de datos
require 'acceso_db.php';

//comprobamos si ha ocurrido un error.
if ( ! isset($_FILES["imagen"]) || $_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 16mb
$permitidos = array("image/jpg", "image/jpeg", "image/gif", "image/png");
$limite_kb = 16384; //16mb es el limite de medium blob

if (in_array($_FILES['imagen']['type'], $permitidos) && $_FILES['imagen']['size'] <= $limite_kb * 1024){

//este es el archivo temporal
$imagen_temporal = $_FILES['imagen']['tmp_name'];
//este es el tipo de archivo
$tipo = $_FILES['imagen']['type'];
//leer el archivo temporal en binario
$fp = fopen($imagen_temporal, 'r+b');
$data = fread($fp, filesize($imagen_temporal));
fclose($fp);
//escapar los caracteres
$data = mysql_escape_string($data);

$resultado = mysql_query("INSERT INTO imagenes (imagen, tipo_imagen) VALUES ('$data', '$tipo')");
if ($resultado){
echo "el archivo ha sido copiado exitosamente";
} else {
echo "ocurrio un error al copiar el archivo.";
}
} else {
echo "archivo no permitido, es tipo de archivo prohibido o excede el tamano de $limite_kb Kilobytes";
}
}
?>




gracias pot todo