Foros del Web » Programando para Internet » PHP »

[SOLUCIONADO] como hago para guardar en la carpeta del servidor

Estas en el tema de como hago para guardar en la carpeta del servidor en el foro de PHP en Foros del Web. hola a todos este es mi codigo que puedo guardar imagenes en base de datos como hago para anadir que se guarde en una carpeta ...
  #1 (permalink)  
Antiguo 06/05/2013, 05:26
all7
Invitado
 
Mensajes: n/a
Puntos:
como hago para guardar en la carpeta del servidor

hola a todos este es mi codigo que puedo guardar imagenes en base de datos como hago para anadir que se guarde en una carpeta tambien
gracias
este es mi codigo

<?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])) {
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'])) {
echo "No haz ingresado tu usuario ._.<a href='javascript:history.back();'>Reintentar</a>";
}elseif(empty($_POST['usuario_clave'])) {
echo "No haz ingresado contraseña. <a href='javascript:history.back();'>Reintentar</a>";
}elseif($_POST['usuario_clave'] != $_POST['usuario_clave_conf']) {
echo "Las contraseñas ingresadas no coinciden. <a href='javascript:history.back();'>Reintentar</a>";
}elseif(!valida_email($_POST['usuario_email'])) {
echo "El email ingresado no es válido. <a href='javascript:history.back();'>Reintentar</a>";


}elseif(empty($_POST['avatar'])) {
echo "No haz ingresado tuavatar ._.<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']);
$avatar = mysql_real_escape_string($_POST['avatar']);







// 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, avatar , usuario_freg) VALUES ('".$usuario_nombre."', '".$usuario_clave."', '".$usuario_email."','".$avatar."', 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 />





<label>avatar:</label><br />

<INPUT type="file" name="avatar" maxlength="1" /><br />








<input type="submit" name="enviar" value="Registrar" />

<input type="reset" value="Borrar" />
</form>
<br />
<br />
<br />
<?php
}
?>

</body>

</html>
  #2 (permalink)  
Antiguo 06/05/2013, 06:31
Avatar de repara2  
Fecha de Ingreso: septiembre-2010
Ubicación: München
Mensajes: 2.445
Antigüedad: 14 años, 2 meses
Puntos: 331
Respuesta: como hago para guardar en la carpeta del servidor

http://www.google.de/search?client=u...BKin4gTH54HYAw
__________________
Fere libenter homines, id quod volunt, credunt.
  #3 (permalink)  
Antiguo 06/05/2013, 06:56
all7
Invitado
 
Mensajes: n/a
Puntos:
Respuesta: como hago para guardar en la carpeta del servidor

me envias a buscar en google si fuera asi porqur entre en este foro para que me ayudan menuda ayuda busca en google
gracias de toda manera
  #4 (permalink)  
Antiguo 06/05/2013, 08:27
 
Fecha de Ingreso: noviembre-2011
Mensajes: 117
Antigüedad: 13 años
Puntos: 2
Respuesta: como hago para guardar en la carpeta del servidor

cuando pegues código mételo entre las etiquetas-->
Código PHP:
tu código php 
Código HTML:
tu código html
porque sino no hay quien lo entienda


necesitas que enctype sea multipart/form-data y luego puedes usar cURL para subirlo

mírate esta explicación:
http://notasweb.com/articulo/php/sub...hp-y-curl.html
  #5 (permalink)  
Antiguo 07/05/2013, 07:50
 
Fecha de Ingreso: abril-2013
Mensajes: 32
Antigüedad: 11 años, 7 meses
Puntos: 5
Respuesta: como hago para guardar en la carpeta del servidor

Como dijo el colega tenes que agregar el enctype.

solo quiero agregar que te asegures QUE LA CARPETA DE SUBIDA TIENE PERMISOS DE ESCRITURA. Esto es causa de los dolores de cabeza de mas de uno a la hora de subir archivos.
  #6 (permalink)  
Antiguo 07/05/2013, 13:58
Avatar de Nemutagk
Colaborador
 
Fecha de Ingreso: marzo-2004
Ubicación: México
Mensajes: 2.633
Antigüedad: 20 años, 7 meses
Puntos: 406
Respuesta: como hago para guardar en la carpeta del servidor

Cita:
Iniciado por eamanesims Ver Mensaje
necesitas que enctype sea multipart/form-data y luego puedes usar cURL para subirlo

mírate esta explicación:
http://notasweb.com/articulo/php/sub...hp-y-curl.html
Que tiene que ver cURL aquí?, con el simple hecho de usar el enctype correcto el archivo ya se sube solo al servidor, solo queda con PHP validarlo y guardarlo, cURL esta demás...

Para @all7 ya te había dejado que estudiaras sobre como subir archivos, ya que aun tienes muy poca idea sobre PHP, lo que tienes no guarda nada que no sea el nombre del archivo en tu base de datos, pero nada mas, como ya te lo había dicho en el otro post y aquí te lo han vuelto a decir, es necesario primero usar en enctype correcto en el formulario y posteriormente usar is_uploaded_file() y move_uploaded_file() para validar y guardar el archivo en el servidor, pero, te recomiendo que leas mas sobre el tema, ya que no tienes idea de que es lo que estas haciendo
__________________
Listo?, tendría que tener 60 puntos menos de IQ para considerarme listo!!!
-- Sheldon Cooper
http://twitter.com/nemutagk
PD: No contestaré temas vía mensaje personal =)
  #7 (permalink)  
Antiguo 08/05/2013, 05:50
 
Fecha de Ingreso: noviembre-2011
Mensajes: 117
Antigüedad: 13 años
Puntos: 2
Respuesta: como hago para guardar en la carpeta del servidor

Cita:
Iniciado por Nemutagk Ver Mensaje
Que tiene que ver cURL aquí?, con el simple hecho de usar el enctype correcto el archivo ya se sube solo al servidor
Se lo dije porque yo los subo así y me va bien, aunque supongo que es más sencillo:

Cita:
Iniciado por Nemutagk Ver Mensaje
usar is_uploaded_file() y move_uploaded_file() para validar y guardar el archivo en el servidor
Creo que no está de más, es una forma de subirlos y guardarlos en el servidor... no obstante llevo poco tiempo usándolo y es posible que tenga desventajas que no conozco o dependiendo de los casos es mejor una forma u otra, en tal caso me gustaría saber cuáles son, nunca está de más saber estas cosas y usar la mejor forma.

Última edición por eamanesims; 08/05/2013 a las 06:01
  #8 (permalink)  
Antiguo 08/05/2013, 07:30
Avatar de Nemutagk
Colaborador
 
Fecha de Ingreso: marzo-2004
Ubicación: México
Mensajes: 2.633
Antigüedad: 20 años, 7 meses
Puntos: 406
Respuesta: como hago para guardar en la carpeta del servidor

Cita:
Iniciado por eamanesims Ver Mensaje
Se lo dije porque yo los subo así y me va bien, aunque supongo que es más sencillo:



Creo que no está de más, es una forma de subirlos y guardarlos en el servidor... no obstante llevo poco tiempo usándolo y es posible que tenga desventajas que no conozco o dependiendo de los casos es mejor una forma u otra, en tal caso me gustaría saber cuáles son, nunca está de más saber estas cosas y usar la mejor forma.
Te equivocas, por medio de HTTP solo hay una forma, cuando pones un input:file y el enctype:multipart/form-data el navegador es el que sube el archivo al servidor y lo coloca en la carpeta temporal, lo que tu usas con curl para colocarlo es solo para mover el archivo de la carpeta temporal a la carpeta final, PERO, lo haces mas complicado, para eso existe move_uploaded_file(), curl ya no hace nada mas, mas que complicar el código, no necesitas una conexión ftp porque el archivo ya esta en el servidor....
__________________
Listo?, tendría que tener 60 puntos menos de IQ para considerarme listo!!!
-- Sheldon Cooper
http://twitter.com/nemutagk
PD: No contestaré temas vía mensaje personal =)

Última edición por Nemutagk; 08/05/2013 a las 07:42
  #9 (permalink)  
Antiguo 08/05/2013, 08:12
 
Fecha de Ingreso: noviembre-2011
Mensajes: 117
Antigüedad: 13 años
Puntos: 2
Respuesta: como hago para guardar en la carpeta del servidor

Tienes razón, estaba equivocada la verdad, curl no es necesario para esto. gracias por la explicación

Etiquetas: carpeta, formulario, html, mysql, registro, select, servidor, sql, usuarios
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:11.