PHP - Subir archivo y guardar filename en DB

 
Vista:
sin imagen de perfil
Val: 11
Ha aumentado su posición en 16 puestos en PHP (en relación al último mes)
Gráfica de PHP

Subir archivo y guardar filename en DB

Publicado por César (3 intervenciones) el 10/04/2019 18:45:02
Buen día. Soy nuevo en el foro. Necesito ayuda con un sitio web.
Estoy editando un proyecto de un sistema de archivos pero es demasiado pesado, con demasiadas condicionales y funciones que no le quiero agregar, como peso máximo de archivo, tipos de formato, resize en imágenes, etc... y para no eliminar todos esos parámetros que me dañan el código simplemente elimino ese archivo y le agrego la función de subir archivos y guardar el filename en la DB pero llevo un buen sin practicar y he olvidado casi todo. Siento que es una minucia lo que me está matando tiempo. Espero puedan ayudarme. De antemano muchas gracias.
Les dejo el código abajo.


1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
<?php
	session_start();
 
	include "../config/config.php";
 
	//print_r($_SESSION);
if(!empty($_POST) && isset($_SESSION["user_id"])){
 
	$alphabeth ="abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWYZ1234567890_-";
	$code = "";
	for($i=0;$i<12;$i  ){
	    $code .= $alphabeth[rand(0,strlen($alphabeth)-1)];
	}
 
	$code= $code;
	$is_public = isset($_POST["is_public"])?1:0;
	$folder_id = $_POST["folder_id"]!="" ? $_POST["folder_id"]:"NULL";
	$folder_id;
 
	$user_id=$_SESSION["user_id"];
	$description = $_POST["description"];
	$created_at = "NOW()";
		$sql = "INSERT INTO file (code, filename, description, is_public, user_id, is_folder, folder_id, created_at) VALUES (\"$code\",\"$filename\",\"$description\", $is_public, $user_id, 0, $folder_id, NOW());";
 
		$query=mysqli_query($con, $sql);
		if ($query) {
			// echo "archivo agregado con exito";
			// $success=sha1(md5("exito"));
			header("location: ../newfile.php?success");
		}else{
			// echo "no se pudo, subir hubo un error".mysqli_error($con)."<br>.".mysqli_errno($con);
 
			header("location: ../newfile.php?error");
		}
 
	}
?>
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
1
Responder
Imágen de perfil de joel
Val: 3.828
Oro
Ha mantenido su posición en PHP (en relación al último mes)
Gráfica de PHP

Subir archivo y guardar filename en DB

Publicado por joel (1269 intervenciones) el 10/04/2019 20:50:14
Hola Cesar, aquí tienes variables que no veo donde se definen...
De donde sale la variable $filename??
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
1
Comentar
sin imagen de perfil
Val: 11
Ha aumentado su posición en 16 puestos en PHP (en relación al último mes)
Gráfica de PHP

Subir archivo y guardar filename en DB

Publicado por César (3 intervenciones) el 11/04/2019 03:28:57
.La variable $filename no está definida, ya que es precisamente una de las dudas que tengo, ya que no sé con qué definirla.

Supongo $filename sería el nombre del archivo junto a su extensión pasado a texto a la DB, pero no recuerdo cómo se define.

La otra duda es sobre la acción del input file. En mi input todo está bien, pero en el "action.php" (el de arriba) no me explico cómo guardar ese archivo a la carpeta del usuario.

La idea sería $path = '/storage/data/$_SESSION["user_id"]/'
Pero de la manera que sea me marca error.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
1
Comentar
Imágen de perfil de italo_pm
Val: 920
Bronce
Ha mantenido su posición en PHP (en relación al último mes)
Gráfica de PHP

Subir archivo y guardar filename en DB

Publicado por italo_pm (193 intervenciones) el 11/04/2019 13:14:10
Hola

Solo veo el nombre del file, pero no que hagas el upload en una directory es correcto?

salud2
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
1
Comentar
sin imagen de perfil
Val: 11
Ha aumentado su posición en 16 puestos en PHP (en relación al último mes)
Gráfica de PHP

Subir archivo y guardar filename en DB

Publicado por César (3 intervenciones) el 11/04/2019 15:20:34
Sólo está la variable $filename pero en el valor que recibe la DB. En sí la variable no está definida.

El upload del archivo tampoco lo está, ya que no sé cómo asociar el nombre de archivo con su extensión a la DB.

Muchas gracias a ambos por sus respuestas.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
1
Comentar