entre Desarrolladores

Recibe ayuda de expertos

Registrate y pregunta

Es gratis y fácil

Recibe respuestas

Respuestas, votos y comentarios

Vota y selecciona respuestas

Recibe puntos, vota y da la solución

Pregunta

1voto

actualizar imagen en ruta con un enlace en diferente tablas php mysql

hola buenas tardes disculpe tengo duda como actualizar con un enlace la imagen que esta en la tabla foto y que se actualice en la tabla alumnos campo imagen en php y mysql , con ruta la imagen alguien me podria ayudar

2votos

Peter comentado

¿Y tu código es?

2votos

numero2222 comentado

este es el codigo lo que quiero ser es con ajax el proceso pero no se como es la cosa

<?php

    # conectare la base de datos
    $con=@mysqli_connect('localhost', 'root', '', 'webcam');
    if(!$con){
        die("imposible conectarse: ".mysqli_error($con));
    }
    if (@mysqli_connect_errno()) {
        die("Connect failed: ".mysqli_connect_errno()." : ". mysqli_connect_error());
    }
    $action = (isset($_REQUEST['action'])&& $_REQUEST['action'] !=NULL)?$_REQUEST['action']:'';
    if($action == 'ajax'){
        include 'pagination.php'; //incluir el archivo de paginación
        //las variables de paginación
        $page = (isset($_REQUEST['page']) && !empty($_REQUEST['page']))?$_REQUEST['page']:1;
        $per_page = 10; //la cantidad de registros que desea mostrar
        $adjacents  = 6; //brecha entre páginas después de varios adyacentes
        $offset = ($page - 1) * $per_page;
        //Cuenta el número total de filas de la tabla*/
        $count_query   = mysqli_query($con,"SELECT count(*) AS numrows FROM alumnos ");
        if ($row= mysqli_fetch_array($count_query)){$numrows = $row['numrows'];}
        $total_pages = ceil($numrows/$per_page);
        $reload = 'Consulta_Alumnos.php';
        //consulta principal para recuperar los datos
        $query = mysqli_query($con,"SELECT * FROM alumnos  LIMIT $offset,$per_page");

        if ($numrows>0){
            ?>
        <table class="table table-bordered table-condensed table-responsive order-table " style="background:#FFFFFF;">
              <thead>
                <tr>
                  <th><div align="center">Matricula</div></th>
                  <th><div align="center">Nombre</div></th>
                   <th><div align="center">Grado</div></th>
                  <th><div align="center">Grupo</div></th>
                  <th><div align="center">Imagen</div></th>
                  <th><div align="center">Credencial</div></th>
                  <th><div align="center">Acciones</div></th>
                  <th><div align="center">Acciones</div></th>
                </tr>
            </thead>
            <tbody>
            <?php
            while($row = mysqli_fetch_array($query)){
            $url=$row['imagen'];
                ?>
                <tr>
                    <td><div align="center"><?php echo $row['matricula'];?></div></td>
                    <td><div align="center"><?php echo $row['nombre'];?></div></td>
                    <td><div align="center"><?php echo $row['grado'];?></div></td>
                    <td><div align="center"><?php echo $row['grupo'];?></div></td>
                    <td>
                    <?php 
                    echo

                    "<div align='center'>
                    <a href=\"../Tomar_Foto/fotos/".$url.".jpg\" >
                    <img src=\"../Tomar_Foto/fotos/".$url.".jpg\" width=\"50\" height=\"50\" alt=\"\" >
                    </a>
                    </div>" ?>
                    </td>
                    <td>
                    <div align="center">
    <button type="button" class="btn btn-info"> <i class='glyphicon glyphicon-credit-card
'></i></button></div></td>
                    <td>
                    <div align="center">
    <button type="button" class="btn btn-info" data-toggle="modal" data-target="#dataUpdate" data-id="<?php echo $row['id']?>" data-matricula="<?php echo $row['matricula']?>" data-nombre="<?php echo $row['nombre']?>" data-grupo="<?php echo $row['grupo']?>" data-grado="<?php echo $row['grado']?>" data-imagen="<?php echo $row['imagen']?>" style=" margin-bottom:1em;"> <i class='glyphicon glyphicon-edit'></i> Modificar</button></div></td>

                        <td><div align="center"><button type="button" class="btn btn-danger" style="margin-left:3px;" data-toggle="modal" data-target="#dataDelete" data-id="<?php echo $row['id']?>"><i class='glyphicon glyphicon-trash'></i> Eliminar</button>
                    </div>
                    </td>
              </tr>
                <?php
            }
            ?>
            </tbody>
        </table>
        <div class="table-pagination pull-right">
            <?php echo paginate($reload, $page, $total_pages, $adjacents);?>
        </div>

            <?php

        } else {
            ?>
            <div class="alert alert-warning alert-dismissable">
              <button type="button" class="close" data-dismiss="alert" aria-hidden="true">×</button>
              <h4>Aviso!!!</h4> No hay datos para mostrar
            </div>
            <?php
        }
    }
?>
<script>$('a[rel=popover]').popover({ html: true, trigger: 'hover', content: function () { return '<img src="'+$(this).data('img') + '" >'; } });$(document).ready(function(){  $('[data-toggle="popover"]').popove();});</script>

    <script type="text/javascript">
(function(document) {
  'use strict';

  var LightTableFilter = (function(Arr) {

    var _input;

    function _onInputEvent(e) {
      _input = e.target;
      var tables = document.getElementsByClassName(_input.getAttribute('data-table'));
      Arr.forEach.call(tables, function(table) {
        Arr.forEach.call(table.tBodies, function(tbody) {
          Arr.forEach.call(tbody.rows, _filter);
        });
      });
    }

    function _filter(row) {
      var text = row.textContent.toLowerCase(), val = _input.value.toLowerCase();
      row.style.display = text.indexOf(val) === -1 ? 'none' : 'table-row';
    }

    return {
      init: function() {
        var inputs = document.getElementsByClassName('light-table-filter');
        Arr.forEach.call(inputs, function(input) {
          input.oninput = _onInputEvent;
        });
      }
    };
  })(Array.prototype);

  document.addEventListener('readystatechange', function() {
    if (document.readyState === 'complete') {
      LightTableFilter.init();
    }
  });

})(document);
</script>

2votos

numero2222 comentado

este es el codgio que pasa las variables en ajax

<?php
    # conectare la base de datos
    $con=@mysqli_connect('localhost', 'root', '', 'webcam');
    if(!$con){
        die("imposible conectarse: ".mysqli_error($con));
    }
    if (@mysqli_connect_errno()) {
        die("Connect failed: ".mysqli_connect_errno()." : ". mysqli_connect_error());
    }
    /*Inicia validacion del lado del servidor*/
    if (empty($_POST['matricula'])) {
           $errors[] = "Matricula vacío";
        } else if (empty($_POST['nombre'])){
            $errors[] = "Nombre vacío";
        } else if (empty($_POST['grupo'])){
            $errors[] = "Grupo vacío";
        } else if (empty($_POST['grado'])){
            $errors[] = "Grado vacío";
        }   else if (
            !empty($_POST['matricula']) &&
            !empty($_POST['nombre']) && 
            !empty($_POST['grupo']) &&
            !empty($_POST['grado'])

        ){

        // escaping, additionally removing everything that could be (html/javascript-) code
        $matricula=mysqli_real_escape_string($con,(strip_tags($_POST["matricula"],ENT_QUOTES)));
        $nombre=mysqli_real_escape_string($con,(strip_tags($_POST["nombre"],ENT_QUOTES)));
        $grupo=mysqli_real_escape_string($con,(strip_tags($_POST["grupo"],ENT_QUOTES)));
        $grado=mysqli_real_escape_string($con,(strip_tags($_POST["grado"],ENT_QUOTES)));
        $id=intval($_POST['id']);
        $sql="UPDATE alumnos SET  matricula='".$matricula."', nombre='".$nombre."', grupo='".$grupo."', grado='".$grado."' WHERE id='".$id."'" ;
        $query_update = mysqli_query($con,$sql);
            if ($query_update){
                $messages[] = "Los datos han sido actualizados 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
            }

?>  

2votos

numero2222 comentado

aqui el javascript

    function load(page){
        var parametros = {"action":"ajax","page":page};
        $("#loader").fadeIn('slow');
        $.ajax({
            url:'paises_ajax.php',
            data: parametros,
             beforeSend: function(objeto){
            $("#loader").html("<img src='loader.gif'>");
            },
            success:function(data){
                $(".outer_div").html(data).fadeIn('slow');
                $("#loader").html("");
            }
        })
    }

        $('#dataUpdate').on('show.bs.modal', function (event) {
          var button = $(event.relatedTarget) // Botón que activó el modal
          var matricula = button.data('matricula') // Extraer la información de atributos de datos
          var nombre = button.data('nombre') // Extraer la información de atributos de datos
          var id = button.data('id') // Extraer la información de atributos de datos
          var grupo = button.data('grupo') // Extraer la información de atributos de datos
          var grado = button.data('grado') // Extraer la información de atributos de datos
          var modal = $(this)
          modal.find('.modal-title').text('Modificar Alumno: '+nombre)
          modal.find('.modal-body #id').val(id)
          modal.find('.modal-body #matricula').val(matricula)
          modal.find('.modal-body #nombre').val(nombre)
          modal.find('.modal-body #grupo').val(grupo)
          modal.find('.modal-body #grado').val(grado)
          $('.alert').hide();//Oculto alert
        })

        $('#dataDelete').on('show.bs.modal', function (event) {
          var button = $(event.relatedTarget) // Botón que activó el modal
          var id = button.data('id') // Extraer la información de atributos de datos
          var modal = $(this)
          modal.find('#id').val(id)
        })

    $( "#actualidarDatos" ).submit(function( event ) {
        var parametros = $(this).serialize();
             $.ajax({
                    type: "POST",
                    url: "modificar.php",
                    data: parametros,
                     beforeSend: function(objeto){
                        $("#datos_ajax").html("Mensaje: Cargando...");
                      },
                    success: function(datos){
                    $("#datos_ajax").html(datos);

                    load(1);
                  }
            });
          event.preventDefault();
        });

        $( "#guardarDatos" ).submit(function( event ) {
        var parametros = $(this).serialize();
             $.ajax({
                    type: "POST",
                    url: "agregar.php",
                    data: parametros,
                     beforeSend: function(objeto){
                        $("#datos_ajax_register").html("Mensaje: Cargando...");
                      },
                    success: function(datos){
                    $("#datos_ajax_register").html(datos);

                    load(1);
                  }
            });
          event.preventDefault();
        });

        $( "#eliminarDatos" ).submit(function( event ) {
        var parametros = $(this).serialize();
             $.ajax({
                    type: "POST",
                    url: "eliminar.php",
                    data: parametros,
                     beforeSend: function(objeto){
                        $(".datos_ajax_delete").html("Mensaje: Cargando...");
                      },
                    success: function(datos){
                    $(".datos_ajax_delete").html(datos);

                    $('#dataDelete').modal('hide');
                    load(1);
                  }
            });
          event.preventDefault();
        });
$('a[rel=popover]').popover({
  html: true,
  trigger: 'hover',
  content: function () {
    return '<img src="Consul_Emple/'+$(this).data('img') + '">';
  }
});

$(document).ready(function(){
    $('[data-toggle="popover"]').popover();
});

1voto

numero2222 comentado

pero solo quiero modificar la imagen con ruta en ajax que esta en la tabla fotos en el campo imagen y se actualice en la tabla alumnos en el campo imagen

1voto

numero2222 comentado

pero lo quiero hacer con un selecion que muestre todas las imagenes de fotos y que esa imagen de la ruta se modifique en imagen campo alumnos

Por favor, accede o regístrate para responder a esta pregunta.

Otras Preguntas y Respuestas


...

Bienvenido a entre Desarrolladores, donde puedes realizar preguntas y recibir respuestas de otros miembros de la comunidad.

Conecta