PHP - Formulario

 
Vista:
sin imagen de perfil

Formulario

Publicado por Amelia (9 intervenciones) el 30/10/2014 20:29:39
Hola estoy realizando un formulario donde indica que si alguno de los campos estan vacíos no ingresa a la base de datos... A pesar de que lleno todos los campos el campo de la imagen no lee el valor por lo cual siempre aparece como si el campo imagen estuviera vacío y por ello no puede continuar con las demás indicaciones este es mi formulario:
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
<head>
  <meta charset="utf-8">
  <title></title>
  <style>
 .subtitulos {
	color: #000000;
	text-align: left;
	font-family:Helvetica;
	}
.box {
	border-radius: 15px;
	background: linear-gradient(#ffffff 20%, #007953)
}
p {
	color: #000000;
}
  </style>
</head>
<body>
	<table border="4" class="box">
    <form "formulario" action="uploader.php" method='post' target="">
      <tr><td>
      	<table>
        	<a> <br>
        	<img src="imagenes/logotipo.png"aling="left"width="230"height="130"></a>
        	<div align=center font-family="Helvetica"><h1>Datos de la Aplicación</h1></div> <br>
			<td align="left" name='tipoapp'size="400" class="subtitulos">Plataforma:&nbsp;
		<select name="tipoapp">
			<option value="android">Android</option>
			<option value="bb">BlackBerry</option>
			<option value="ios">iOS</option>
			<option value="wp">Windows Phone</option></select> </td>
         </tr>
          <tr>
    		<td align="left" name='nombreapp' class="subtitulos"><br>Nombre:&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
    		<input align="left" type='text' name='nombreapp' size="15" ></input></td>
         </tr>
         <tr>
    		<td align="left" name='urlapp' class="subtitulos"><br>Store URL:&nbsp;
    		<input align="left" type='url' name='urlapp' size="15" ></input></td>
         </tr>
          <tr>
          	<td class="subtitulos"> <br>Imagen:&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; <label enctype="multipart/form-data"> </label>
			<input type="file" name="foto[]" id="foto" size="15"/></input></td> </tr>
          <tr>
          <td colspan="1" align="center"><input type="submit" value="Enviar"></input></td>
          </tr>
          <td> <footer>
     <p><br> &copy; Copyright  by abelen</p>
    </footer> </td>
        </table>
      </td></tr>
    </table>
    </form>
</body>
</html>

y aquí se envían los datos:



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
<?php
 
	$tipoapp = $_POST['tipoapp'];
	$nombreapp = $_POST['nombreapp'];
	$urlapp = $_POST['urlapp'];
	$foto = $_POST['foto'];
	$i=0;
	# definimos la carpeta destino
	$carpetaDestino="imagenes/";
 
	# si hay algun archivo que subir
	if($_FILES["foto"]["name"][0])
	{
 
	# recorremos todos los arhivos que se han subido
	for($i=0;$i<count($_FILES["foto"]["name"]);$i++)
	{
 
			# si es un formato de imagen
		if($_FILES["foto"]["type"][$i]=="image/jpeg" || $_FILES["foto"]["type"][$i]=="image/pjpeg" || $_FILES["foto"]["type"][$i]=="image/gif" || $_FILES["foto"]["type"][$i]=="image/png")
		{
 
			# si exsite la carpeta o se ha creado
			if(file_exists($carpetaDestino) || @mkdir($carpetaDestino))
			{
			$origen=$_FILES["foto"]["tmp_name"][$i];
			$destino=$carpetaDestino.$_FILES["foto"]["name"][$i];
 
			# movemos el archivo
			if(@move_uploaded_file($origen, $destino))
			{
			echo "<br>".$_FILES["foto"]["name"][$i]." movido correctamente";
			}else{
			echo "<br>No se ha podido mover el archivo: ".$_FILES["foto"]["name"][$i];
			}
			}else{
			echo "<br>No se ha podido crear la carpeta: up/".$user;
			}
			}else{
				echo "<br>".$_FILES["foto"]["name"][$i]." - NO es imagen jpg";
			}
			}
			}else{
			echo "<br>No se ha subido ninguna imagen";
    }
 
	$response = array();
 
	if($tipoapp == "" or $nombreapp == "" or $urlapp == "" or  $_FILES["foto"]["name"][$i] == ""){
		$response[] = "Debes completar todos los campos";
	}
 
	else {
 
		$serverName = "vfojzqf9mx.database.windows.net, 1433";
		$connectionInfo = array( "Database"=>"nombre", "UID"=>"usuario", "PWD"=>"123");
		$conn = sqlsrv_connect( $serverName, $connectionInfo);
 
		if( $conn ) {
			echo "Conexión establecida.<br />";
		} else {
			echo "Conexión no se pudo establecer.<br />";
			die( print_r( sqlsrv_errors(), true));
		}
 
		//Almacenar datos
 
		$sql = "INSERT INTO datos (nombre, url, imagen) VALUES (?,?,?)";
 
		$nombre= $nombreapp; $url =urlapp; $imagen=$_FILES["foto"]["name"][$i];
		$stmt = sqlsrv_prepare( $conn, $sql, array( &$nombre, &$url, &$imagen));
		if( !$stmt ) {
			die( print_r( sqlsrv_errors(), true));
		}
		if( sqlsrv_execute( $stmt ) === false ) {
			die( print_r( sqlsrv_errors(), true));
		}
		echo "Los datos son validos";
	}
?>

si alguien me pudiera ayudar con lo del error se los agradecería.
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder
Imágen de perfil de xve
Val: 3.943
Oro
Ha mantenido su posición en PHP (en relación al último mes)
Gráfica de PHP

Formulario

Publicado por xve (6935 intervenciones) el 30/10/2014 22:26:08
Hola Amelia, creo que el input lo tienes mal...

Creo que deberia de ser así si solo quieres que pueda subir un archivo:
1
<input type="file" name="foto" id="foto" size="15"/>

o así si quieres que pueda subir mas de un archivo:
1
<input type="file" name="foto" id="foto" size="15" multiple="multiple"/>

No hay que cerrar el input con </input>

Coméntanos, ok?
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
sin imagen de perfil

Formulario

Publicado por Amelia (9 intervenciones) el 31/10/2014 15:11:47
Holaaa!! Modifique eso y aún no me sube la imagen
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
sin imagen de perfil

Formulario

Publicado por Amelia (9 intervenciones) el 31/10/2014 15:50:26
Ya solucione el problema es que
1
enctype="multipart/form-data"
debe ir en obligatoriamente en el

1
<form "formulario" action="uploader.php" method='post'>

quedaria asi
1
<form name"banescostore" action="uploader.php" method='post'enctype="multipart/form-data">

Muchas gracias de todos modos
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
Imágen de perfil de xve
Val: 3.943
Oro
Ha mantenido su posición en PHP (en relación al último mes)
Gráfica de PHP

Formulario

Publicado por xve (6935 intervenciones) el 31/10/2014 19:11:41
Gracias por comentarlo Amelia!!!
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar