Error: no guarda en la ruta en mysql
Publicado por jeinner (2 intervenciones) el 19/07/2017 15:14:06
Buen dia, Amigos LWP
Estoy tratando de resolver el siguiente problema:
Registrando una nueva categoria en mi db de mysql el codigo me guarda los datos pero me guarda la imagen en la carpeta img del proyecto, tampoco en la bd y mucho menos la puedo mostrar, he realizado varias acciones pero sigue sin funcionar. Los archivos son los siguientes:
*registro_categorias.php
*nueva_categoria.php
*categorias.php
*categorias.js
*editar_categoria.php
*editar_categorias.php
*buscar categorias.php
Registro_categorias.php
nueva_categoria.php
categorias.php
categorias.js
editar_categoria
editar_categorias
No coloco el archivo buscar categorias por limitacion del sitio. Gracias
Este es todo el codigo, antes de insertar el campo imagen podia editar los datos de la categoria ahora no se puede editar ni eliminar. No guarda la imagen en la carpeta del servidor y la ruta en la bd ni la muestra.
adjunto imagen que evidencia el error.
Espero me puedan orientar y agradezco por su colaboracion

Estoy tratando de resolver el siguiente problema:
Registrando una nueva categoria en mi db de mysql el codigo me guarda los datos pero me guarda la imagen en la carpeta img del proyecto, tampoco en la bd y mucho menos la puedo mostrar, he realizado varias acciones pero sigue sin funcionar. Los archivos son los siguientes:
*registro_categorias.php
*nueva_categoria.php
*categorias.php
*categorias.js
*editar_categoria.php
*editar_categorias.php
*buscar categorias.php
Registro_categorias.php
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
38
<?php
if (isset($con))
{
?>
<!-- Modal -->
<div class="modal fade" id="nuevoCliente" tabindex="-1" role="dialog" aria-labelledby="myModalLabel">
<div class="modal-dialog" role="document">
<div class="modal-content">
<div class="modal-header">
<button type="button" class="close" data-dismiss="modal" aria-label="Close"><span aria-hidden="true">×</span></button>
<h4 class="modal-title" id="myModalLabel"><i class='glyphicon glyphicon-edit'></i> Agregar nuevo catalogo</h4>
</div>
<div class="modal-body">
<form class="form-horizontal" method="post" id="guardar_categoria" name="guardar_categoria" enctype="multipart/form-data">
<div id="resultados_ajax"></div>
<div class="form-group">
<label for="foto" class="col-sm-3 control-label">Foto</label>
<div class="col-sm-8">
<input type="file" class="form-control" id="foto" name="foto">
</div>
</div>
<div class="form-group">
<label for="nombre" class="col-sm-3 control-label">Nombre</label>
<div class="col-sm-8">
<input type="text" class="form-control" id="nombre" name="nombre" required>
</div>
</div>
<div class="form-group">
<label for="descripcion" class="col-sm-3 control-label">Descripción</label>
<div class="col-sm-8">
<textarea class="form-control" id="descripcion" name="descripcion" maxlength="255" ></textarea>
</div>
</div>
nueva_categoria.php
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
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
<?php
include('is_logged.php');//Archivo verifica que el usario que intenta acceder a la URL esta logueado
/*Inicia validacion del lado del servidor*/
if (isset($_FILES["foto"]))
{
$file = $_FILES["file"];
$nombre = $file["name"];
$tipo = $file["type"];
$ruta_provisional = $file["tmp_name"];
$size = $file["size"];
$dimensiones = getimagesize($ruta_provisional);
$width = $dimensiones[0];
$height = $dimensiones[1];
$carpeta = "../img".$nombre;
if ($tipo != 'image/jpg' && $tipo != 'image/jpeg' && $tipo != 'image/png' && $tipo != 'image/gif')
{
echo "Error, el archivo no es una imagen";
}
else if ($size > 1024*1024)
{
echo "Error, el tamaño máximo permitido es un 1MB";
}
else if ($width > 500 || $height > 500)
{
echo "Error la anchura y la altura maxima permitida es 500px";
}
else if($width < 60 || $height < 60)
{
echo "Error la anchura y la altura mínima permitida es 60px";
}
else
{
$src = $carpeta.$nombre;
move_uploaded_file($ruta_provisional, $src);
echo "<img src='$src'>";
}
}
if(empty($_POST['nombre'])) {
$errors[] = "Nombre vacío";
} else if (!empty($_POST['nombre'])){
/* Connect To Database*/
require_once ("../config/db.php");//Contiene las variables de configuracion para conectar a la base de datos
require_once ("../config/conexion.php");//Contiene funcion que conecta a la base de datos
// escaping, additionally removing everything that could be (html/javascript-) code
$foto=mysqli_real_escape_string($con,(strip_tags($_POST["src"],ENT_QUOTES)));
$nombre=mysqli_real_escape_string($con,(strip_tags($_POST["nombre"],ENT_QUOTES)));
$descripcion=mysqli_real_escape_string($con,(strip_tags($_POST["descripcion"],ENT_QUOTES)));
$date_added=date("Y-m-d H:i:s");
$sql="INSERT INTO categorias (foto, nombre_categoria, descripcion_categoria,date_added) VALUES ('$foto','$nombre','$descripcion','$date_added')";
$query_new_insert = mysqli_query($con,$sql);
if ($query_new_insert){
$messages[] = "El catalogo ha sido ingresada satisfactoriamente.";
} else{
$errors []= "Lo siento algo ha salido mal intenta nuevamente.".mysqli_error($con);
}
} else {
$errors []= "Error desconocido.";
}
if (isset($errors)){
?>
<div class="alert alert-danger" role="alert">
<button type="button" class="close" data-dismiss="alert">×</button>
<strong>Error!</strong>
<?php
foreach ($errors as $error) {
echo $error;
}
?>
</div>
<?php
}
if (isset($messages)){
?>
<div class="alert alert-success" role="alert">
<button type="button" class="close" data-dismiss="alert">×</button>
<strong>¡Bien hecho!</strong>
<?php
foreach ($messages as $message) {
echo $message;
}
?>
</div>
<?php
}
?>
categorias.php
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
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
<?php
/*-------------------------
---------------------------*/
session_start();
if (!isset($_SESSION['user_login_status']) AND $_SESSION['user_login_status'] != 1) {
header("location: login.php");
exit;
}
/* Connect To Database*/
require_once ("config/db.php");//Contiene las variables de configuracion para conectar a la base de datos
require_once ("config/conexion.php");//Contiene funcion que conecta a la base de datos
$active_categoria="active";
$title="Categorías | Simple Invoice";
?>
<!DOCTYPE html>
<html lang="en">
<head>
<?php include("head.php");?>
</head>
<body>
<?php
include("navbar.php");
?>
<div class="container">
<div class="panel panel-success">
<div class="panel-heading">
<div class="btn-group pull-right">
<button type='button' class="btn btn-success" data-toggle="modal" data-target="#nuevoCliente"><span class="glyphicon glyphicon-plus" ></span> Nuevo Catalogo</button>
</div>
<h4><i class='glyphicon glyphicon-search'></i> Buscar Catalogos</h4>
</div>
<div class="panel-body">
<?php
include("modal/registro_categorias.php");
include("modal/editar_categorias.php");
?>
<form class="form-horizontal" role="form" id="datos_cotizacion">
<div class="form-group row">
<label for="q" class="col-md-2 control-label">Nombre</label>
<div class="col-md-5">
<input type="text" class="form-control" id="q" placeholder="Nombre del catalogo" onkeyup='load(1);'>
</div>
<div class="col-md-3">
<button type="button" class="btn btn-default" onclick='load(1);'>
<span class="glyphicon glyphicon-search" ></span> Buscar</button>
<span id="loader"></span>
</div>
</div>
</form>
<div id="resultados"></div><!-- Carga los datos ajax -->
<div class='outer_div'></div><!-- Carga los datos ajax -->
</div>
</div>
</div>
<hr>
<?php
include("footer.php");
?>
<script type="text/javascript" src="js/categorias.js"></script>
</body>
</html>
categorias.js
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
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
$(document).ready(function(){
load(1);
});
function load(page){
var q= $("#q").val();
$("#loader").fadeIn('slow');
$.ajax({
url:'./ajax/buscar_categorias.php?action=ajax&page='+page+'&q='+q,
beforeSend: function(objeto){
$('#loader').html('<img src="./img/ajax-loader.gif"> Cargando...');
},
success:function(data){
$(".outer_div").html(data).fadeIn('slow');
$('#loader').html('');
}
})
}
function eliminar (id)
{
var q= $("#q").val();
if (confirm("Realmente deseas eliminar la categoría")){
$.ajax({
type: "GET",
url: "./ajax/buscar_categorias.php",
data: "id="+id,"q":q,
beforeSend: function(objeto){
$("#resultados").html("Mensaje: Cargando...");
},
success: function(datos){
$("#resultados").html(datos);
load(1);
}
});
}
}
$( "#guardar_categoria" ).submit(function( event ) {
$('#guardar_datos').attr("disabled", true);
var parametros = $(this).serialize();
$.ajax({
type: "POST",
url: "ajax/nueva_categoria.php",
data: parametros,
beforeSend: function(objeto){
$("#resultados_ajax").html("Mensaje: Cargando...");
},
success: function(datos){
$("#resultados_ajax").html(datos);
$('#guardar_datos').attr("disabled", false);
load(1);
}
});
event.preventDefault();
})
$( "#editar_categoria" ).submit(function( event ) {
$('#actualizar_datos').attr("disabled", true);
var parametros = $(this).serialize();
$.ajax({
type: "POST",
url: "ajax/editar_categoria.php",
data: parametros,
beforeSend: function(objeto){
$("#resultados_ajax2").html("Mensaje: Cargando...");
},
success: function(datos){
$("#resultados_ajax2").html(datos);
$('#actualizar_datos').attr("disabled", false);
load(1);
}
});
event.preventDefault();
})
$('#myModal2').on('show.bs.modal', function (event) {
var button = $(event.relatedTarget) // Button that triggered the modal
var foto = button.data('foto')
var nombre = button.data('nombre')
var descripcion = button.data('descripcion')
var id = button.data('id')
var modal = $(this)
modal.find('.modal-body #mod_foto').val(foto)
modal.find('.modal-body #mod_nombre').val(nombre)
modal.find('.modal-body #mod_descripcion').val(descripcion)
modal.find('.modal-body #mod_id').val(id)
})
editar_categoria
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
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
<?php
include('is_logged.php');//Archivo verifica que el usario que intenta acceder a la URL esta logueado
/*Inicia validacion del lado del servidor*/
if (empty($_POST['mod_id'])) {
$errors[] = "ID vacío";
}else if (empty($_POST['mod_nombre'])) {
$errors[] = "Nombre vacío";
} else if (
!empty($_POST['mod_id']) &&
!empty($_POST['mod_nombre'])
){
/* Connect To Database*/
require_once ("../config/db.php");//Contiene las variables de configuracion para conectar a la base de datos
require_once ("../config/conexion.php");//Contiene funcion que conecta a la base de datos
// escaping, additionally removing everything that could be (html/javascript-) code
$foto=isset($_FILES["mod_foto"]);
$nombre=mysqli_real_escape_string($con,(strip_tags($_POST["mod_nombre"],ENT_QUOTES)));
$descripcion=mysqli_real_escape_string($con,(strip_tags($_POST["mod_descripcion"],ENT_QUOTES)));
$id_categoria=intval($_POST['mod_id']);
$sql="UPDATE categorias SET foto='".$foto."', nombre_categoria='".$nombre."', descripcion_categoria='".$descripcion."' WHERE id_categoria='".$id_categoria."'";
$query_update = mysqli_query($con,$sql);
if ($query_update){
$messages[] = "Categoría ha sido actualizada satisfactoriamente.";
} else{
$errors []= "Lo siento algo ha salido mal intenta nuevamente.".mysqli_error($con);
}
} else {
$errors []= "Error desconocido.";
}
if (isset($errors)){
?>
<div class="alert alert-danger" role="alert">
<button type="button" class="close" data-dismiss="alert">×</button>
<strong>Error!</strong>
<?php
foreach ($errors as $error) {
echo $error;
}
?>
</div>
<?php
}
if (isset($messages)){
?>
<div class="alert alert-success" role="alert">
<button type="button" class="close" data-dismiss="alert">×</button>
<strong>¡Bien hecho!</strong>
<?php
foreach ($messages as $message) {
echo $message;
}
?>
</div>
<?php
}
?>
editar_categorias
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
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
<?php
if (isset($con))
{
?>
<!-- Modal -->
<div class="modal fade" id="myModal2" tabindex="-1" role="dialog" aria-labelledby="myModalLabel">
<div class="modal-dialog" role="document">
<div class="modal-content">
<div class="modal-header">
<button type="button" class="close" data-dismiss="modal" aria-label="Close"><span aria-hidden="true">×</span></button>
<h4 class="modal-title" id="myModalLabel"><i class='glyphicon glyphicon-edit'></i> Editar catalogo</h4>
</div>
<div class="modal-body">
<form class="form-horizontal" method="post" id="editar_categoria" name="editar_categoria">
<div id="resultados_ajax2"></div>
<div class="form-group">
<label for="foto" class="col-sm-3 control-label">Foto</label>
<div class="col-sm-8">
<input type="file" class="form-control" id="foto" name="foto">
</div>
</div>
<div class="form-group">
<label for="mod_nombre" class="col-sm-3 control-label">Nombre</label>
<div class="col-sm-8">
<input type="text" class="form-control" id="mod_nombre" name="mod_nombre" required>
<input type="hidden" name="mod_id" id="mod_id">
</div>
</div>
<div class="form-group">
<label for="mod_descripcion" class="col-sm-3 control-label">Descripción</label>
<div class="col-sm-8">
<textarea class="form-control" id="mod_descripcion" name="mod_descripcion" ></textarea>
</div>
</div>
</div>
<div class="modal-footer">
<button type="button" class="btn btn-default" data-dismiss="modal">Cerrar</button>
<button type="submit" class="btn btn-primary" id="actualizar_datos">Actualizar datos</button>
</div>
</form>
</div>
</div>
</div>
<?php
}
?>
No coloco el archivo buscar categorias por limitacion del sitio. Gracias
Este es todo el codigo, antes de insertar el campo imagen podia editar los datos de la categoria ahora no se puede editar ni eliminar. No guarda la imagen en la carpeta del servidor y la ruta en la bd ni la muestra.
adjunto imagen que evidencia el error.
Espero me puedan orientar y agradezco por su colaboracion

Valora esta pregunta


0