Ver Mensaje Individual
  #1 (permalink)  
Antiguo 09/08/2017, 18:59
tayran8
 
Fecha de Ingreso: enero-2014
Ubicación: USA
Mensajes: 50
Antigüedad: 10 años, 4 meses
Puntos: 0
Pregunta Actualizar foto con PHP en MYSQL

Buenas noches,


LLevo ya bastante tiempo tratando de resolver este asunto y no le encuentro la vuelta. Tengo un formulario muy sencillo que tiene diferentes campos incluidos una imagen. La imagen la guardo en un folder en el servidor mientras la ruta la guardo en la base de datos. Todo eso funciona a la perfeccion. Sin embargo, cuando quiero actualizar la foto con la informacion no me funciona y me desaparece la foto que estaba previanmente. Lo que hago es poblar todos los datos con la consulta a la base de datos, luego hago el envio a un archivo update.php que deberia actualizar los registros que se han modificado incluyendo la foto, pero eso no pasa. Adjunto el formulario que envia los datos al archivo update.php. Si tiene alguna sugerencia les estaré altamente agradecidos.

FORMULARIO


Código PHP:

<?php
session_start
();
if (!
$_SESSION['username']) {
    
header("location:landmarklogin1.html?problem=No ha iniciado sesion");
    exit;
} else {
    
$encabezadodeusuario "Welcome: ".$_SESSION['username'];
}
$encabezadodesalida "<a href='logout.php'>Log out</a>";
$name $_SESSION['name'];

include 
"navbar.php";

?>
<head>
  <link rel="stylesheet" href="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.7/css/bootstrap.min.css">
  <link rel="stylesheet" href="jquery-ui-1.12.1.custom/jquery-ui.css" />
  <link href="landmarkstyles.css" rel="stylesheet" type="text/css" />
  <script src="jquery-ui-1.12.1.custom/external/jquery/jquery.js"></script>
  <!--Agrega Jquery -->
  <script src="jquery-ui-1.12.1.custom/jquery-ui.min.js"></script>
  <script>
  $(function() {
    $("#membersince").datepicker();
    $("#birthday").datepicker();
  })

  function confirmMessage () {

    return confirm("Are you sure you want to delete this member?");
  }

  </script>

</head>

<body>

  <?php
  
include "conexiondb.php";
  
$path photos;
  if (!isset(
$_POST['update'])) {
      
$id mysqli_real_escape_string($con$_GET['id']);
      
$qry"SELECT * FROM members  WHERE id = '$_GET[id]'";
      
$result mysqli_query($con$qry);
      
$person=$result->fetch_array();
  }
  
?>





  <div class="container-fluid">
    <!--FORMULARIO-->

    <div class="memberentry ">
      <form method="POST" action = "updatemember.php" enctype="multipart/form-data">
        <script>
        $('#birthday', '#membersince').datepicker();
        </script>

        <p>

            <h4 style="text-align:center; color:white; padding-top:20px;">Member Personal Information<h4>
              <img class = "img-responsive memberimage" src= "<?php echo $path.'/'.$person['photo'];?>">
              <input type="hidden" name="id" value="<?php echo $_GET['id'];?>"/>


              <div class = "row">
                <div class = "col-md-12 col-md-offset-5">
                  <input type="hidden" name="size" value="350000">
                  <input type="file" name="image">  <!--name es el nombre de lo que se pasa por el metodo POST -->
                </div>
              </div>



              <p>
                <p>

              <div class="row">
               <div class="form-group col-md-4 col-sm-4">
                <label for = "member"> First Name</label>
                <input type="text" name="name" id = "name" class = "form-control" size = "30" placeholder = "Name" value = "<?php echo $person['name']; ?>" />
              </div>

              <div class="form-group col-md-4 col-sm-4">
                <label for = "address"> Last Name</label>
                <input type="text" name="lastname" class = "form-control" size ="30" placeholder = "Home Address" value = "<?php echo $person['lastname']; ?>"  >
              </div>

              <div class="form-group col-md-4 col-sm-4">
                <label for = "birthday"> Birthday </label>
                <input type="text" name="birthday" class = "form-control" size ="30" placeholder = "Birthday" id = "birthday" value = "<?php echo $person['birthday']; ?>"  >
              </div>

            </div>


            <div class = "row">

              <div class="form-group col-md-4 col-sm-4">
                <label for = "address"> Home address </label>
                <input type="text" name="address" class = "form-control" size ="30" placeholder = "Home Address" value = "<?php echo $person['address']; ?>"  >
              </div>

              <div class = "form-group col-md-4  col-sm-4">
                <label for = "cellphone"> Cellphone </label>
                <input type="text" name="cellphone" id="cellphone" class = "form-control"  placeholder = "Cellphone" value = "<?php echo $person['cellphone']; ?>" >
              </div>

              <div class = "form-group col-md-4 col-sm-4 ">
                <label for = "phone"> Phone </label>
                <input type="text" name="phone" id="phone" class = "form-control"  placeholder = "Phone" value = "<?php echo $person['phone']; ?>"/>
              </div>

            </div>


            <div class = "row">
              <div class = "form-group col-md-4 col-sm-4">
                <label for = "town"> Town </label>
                <input type="text" name="town" class = "form-control"  placeholder = "Town" value = "<?php echo $person['town']; ?>" >
              </div>

              <div class = "form-group col-md-4 col-sm-4">
                <label for = "zipcode"> Zipcode</label>
                <input type="text" name="zip" class = "form-control"  placeholder = "Zip Code" value = "<?php echo $person['zip']; ?>" >
              </div>

              <div class = "form-group col-md-4 col-sm-4 ">
                <label for = "email"> Email </label>
                <input type="text" name="email" size="30" class = "form-control"  placeholder = "Email" value = "<?php echo $person['email']; ?>" >
              </div>
            </div>

            <div class = "row">

            <div class = "form-group col-md-4 col-sm-4">
              <label for = "birthday"> Member Since</label>
              <input type="text" name="membersince" size="30" id="membersince" class = "form-control"  placeholder = "Member Since" value = "<?php echo $person['membersince']; ?>" >
            </div>

            <div class = "form-group col-md-4 col-sm-4">
              <label for = "birthday"> Allergies </label>
              <input type="text" name="allergies" size="30" class = "form-control"  placeholder = "Allergies" value = "<?php echo $person['allergies']; ?>" >
            </div>

            <div class = "form-group col-md-4 col-sm-4">
              <label for = "birthday">Ministry</label>
              <input type="text" name="ministry" size="30" class = "form-control"  placeholder = "Ministry" value = "<?php echo $person['ministry']; ?>" >
            </div>



          </div>

            <div class = "row">
              <div class = "col-md-4 col-sm-4 ">
                <input href= "searchmember.php" type="submit" name="" title="Return to Search" value="Return to search" class = "form-control btn-primary" />
              </div>

              <div class = "col-md-4 col-sm-4 ">
                <input type="submit" name="update" title="Update Register" value="Update Member" class = "form-control btn-warning" />
              </div>


              <div class = "col-md-4 col-sm-4 ">
                <?php echo "<a class = 'form-control btn-danger' onclick = 'return confirmMessage ()' href=\"deletemember.php?id=".$person['id']."\">Delete Member</a> " ?>
              </div>

            </div>

            <script>

            function confirmMessage () {

              return confirm("Are you sure you want to delete this member?");
            }

            </script>
          </div>
        </form>
      </div>
    </div>
  </div>
</body>

ARCHIVO DE ACTUALIZACION

UPDATE.PHP


Código PHP:
<?php
include "conexiondb.php";

       
$photo $_FILES['image'];  // PONER AQUI POST EN
       
$name $_POST['name'];
       
$lastname $_POST['lastname'];
       
$address $_POST['address'];
       
$birthday$_POST['birthday'];
       
$cellphone $_POST['cellphone'];
       
$phone $_POST['phone'];
       
$town $_POST['town'];
       
$zip $_POST['zip'];
       
$email $_POST['email'];
       
$membersince $_POST['membersince'];
       
$ministry $_POST['ministry'];
       
$allergies $_POST['allergies'];
       
$id $_POST['id'];


$photo="photos/".($_FILE['image']); //"photos" es el directorio donde se guardan las fotos //

echo($phone);

$members"UPDATE members
 SET
       photo = '$photo',
       name = '$name',
       lastname = '$lastname',
       address = '$address',
       birthday = '$birthday',
       cellphone = '$cellphone',
       phone = '$phone',
       town = '$town',
       zip = '$zip',
       email = '$email',
       membersince = '$membersince',
       ministry = '$ministry',
       allergies = '$allergies'
 WHERE id = '$id'"
;

mysqli_query($con$members);

header('location: membersearch.php');