Mantener imagen en el post php
Publicado por Rafael (2 intervenciones) el 06/03/2019 17:33:15
Como mantengo una imagen en el post, primero tengo que validar el formulario con los datos personales del que se inscribe, si el formulario tuvo errores entonces no debería de guardarse la imagen pero tampoco tendría que volver a subirla ya que la tendría en el una variable y la mostraría en una vista previa y luego poder volver a validar los datos, si son correctos hasta ese instante guardar la imagen.
Adjunto una captura de donde es que cargo la imagen
Mi codigo:
Adjunto una captura de donde es que cargo la imagen
Mi codigo:
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
//con este codigo capturo la imagen
<input type="file" name="fileToUpload" id="fileToUpload" src="imagenes/monigote.jpg">
<br />
<img id="imgSalida" width="304" src="imagenes/monigote.jpg" />
//codigo de javascript que uso para vista previa
<script>$(window).load(function(){
$(function() {
$('#fileToUpload').change(function(e) {
addImage(e);
});
function addImage(e){
var file = e.target.files[0],
imageType = /image.*/;
if (!file.type.match(imageType))
return;
var reader = new FileReader();
reader.onload = fileOnload;
reader.readAsDataURL(file);
}
function fileOnload(e) {
var result=e.target.result;
$('#imgSalida').attr("src",result);
}
});
});</script>
//cuando recibo el post intento validar la imagen
$target_dir = "../../fotomentor/";
$target_file = $target_dir . basename($_FILES["fileToUpload"]["name"]);
$imageFileType = strtolower(pathinfo($target_file,PATHINFO_EXTENSION));
$check = getimagesize($_FILES["fileToUpload"]["tmp_name"]);
if($check !== false) {
$textoerror.= "File is an image - " . $check["mime"] . ".";
$textoerror.="Nombre: " . $_FILES["fileToUpload"]["name"] . "<br />";
$textoerror.= "Tipo: " . $_FILES["fileToUpload"]["type"] . "<br />";
$textoerror.= "Tamaño: ". $_FILES["fileToUpload"]["size"] . "<br />";
$textoerror.= "Ruta: " . $_FILES["fileToUpload"]["tmp_name"];
$fotoErr= '<i class="img-circle fa fa-check bg-green" aria-hidden="true"></i>';
} else {
$fotoErr= '<span class="badge bg-red">Tiene que subir una foto.</span>';
$error=+1;
$textoerror.=" foto.";
}
#-------------------------------------
#-Una validación de los datos de usuarios que valido*
#-------------------------------------
if (($_SERVER["REQUEST_METHOD"]== "POST") )
{
//validación de Nombre
if (empty($_POST["nombre"]))
{
$nombreErr= '<span class="badge bg-red">Su nombre es requerido.</span>';
$error=+1;
$textoerror.=" Nombre.";
}
else
{
$nombre= test_input($_POST["nombre"]);
if (!validaRequerido($nombre))
{
$nombreErr= ' <span class="badge bg-red">Su nombre es un campo obligatorio.</span>';
$error=+1;
$textoerror.=" Nombre.";
}
if (!validatexto($nombre))
{
$nombreErr= '<span class="badge bg-red">Solamente se permiten letras y espacios vacíos.</span>';
$error=+1;
$textoerror.=" Nombre.";
}
else
{
$nombreErr= '<i class="img-circle fa fa-check bg-green" aria-hidden="true"></i>';
}
}
}
#fin nombre
- Captura.rar(22,6 KB)
Valora esta pregunta


1