Ver Mensaje Individual
  #1 (permalink)  
Antiguo 15/12/2010, 15:16
rafaxusirati
 
Fecha de Ingreso: julio-2010
Ubicación: Cerca Sitges (Barcelona)
Mensajes: 98
Antigüedad: 13 años, 10 meses
Puntos: 4
Código inserción multifotos

Perdonar por la parrafada de código, pero ando bastante desesperado, lo intenté simplificar al máximo, pero no soy muy experto en el tema y no me gustaría omitir campos importantes.

¿Tengo la impresión que me estoy complicando bastante con estos códigos, me podéis echar una mano con otro código?

Me interesaría un código de ejemplo práctico, ¿alguna sugerencia?

Me gustaría adjuntar datos y fotos (5 fotos).

Utilizo este código para las fotos (formulario 2):
Código PHP:
Ver original
  1. <input type="file" class="multi" maxlength="5"/> <br />

En el formulario 1 adjunto la dirección de la foto que cargaré por defecto, por si el usuario no completa la inserción de las 5 fotos.

Código PHP:
Ver original
  1. $editFormAction = $_SERVER['PHP_SELF'];
  2. if (isset($_SERVER['QUERY_STRING'])) {
  3.   $editFormAction .= "?" . htmlentities($_SERVER['QUERY_STRING']);
  4. }
  5.  
  6. if ((isset($_POST["MM_insert"])) && ($_POST["MM_insert"] == "formulario_usuario")) {
  7.   $insertSQL = sprintf("INSERT INTO contactos (`nombre usuario`, password, mail, mailcontacto, telefono, telefono2, nombre, apellido, web, fechaentrada, titulozapateria, descripcionzapateria, Pais, comunidad, ciudad, provincia, km, euros, ano_adquisicion, m2, foto1, foto2, foto3, foto4, foto5, categoria_zapateria) VALUES (%s, %s, %s, %s, %s, %s, %s, %s, %s, %s, %s, %s, %s, %s, %s, %s, %s, %s, %s, %s, %s, %s, %s, %s, %s, %s)",
  8.                        GetSQLValueString($_POST['nombre_usuario'], "text"),
  9.                        GetSQLValueString($_POST['password'], "text"),
  10.                        GetSQLValueString($_POST['mail'], "text"),
  11.                              ...
  12.                        GetSQLValueString($_POST['ano_adquisicion'], "int"),
  13.                        GetSQLValueString($_POST['m2'], "int"),
  14.                        GetSQLValueString($_POST['foto1'], "text"),
  15.                        GetSQLValueString($_POST['foto2'], "text"),
  16.                        GetSQLValueString($_POST['foto3'], "text"),
  17.                        GetSQLValueString($_POST['foto4'], "text"),
  18.                        GetSQLValueString($_POST['foto5'], "text"),
  19.                        GetSQLValueString($_POST['categoria_zapateria'], "text"));
  20.  
  21.   mysql_select_db($database_contactos, $contactos);
  22.   $Result1 = mysql_query($insertSQL, $contactos) or die(mysql_error());
  23.  
  24.   $insertGoTo = "adjuntar foto BORRAR.php";
  25.   if (isset($_SERVER['QUERY_STRING'])) {
  26.     $insertGoTo .= (strpos($insertGoTo, '?')) ? "&" : "?";
  27.     $insertGoTo .= $_SERVER['QUERY_STRING'];
  28.   }
  29.   header(sprintf("Location: %s", $insertGoTo));
  30. }
  31. ?>
  32. -----
  33.             <td height="39" colspan="2" align="right" valign="baseline"><div align="center"><strong>
  34.               <input name="foto1" type="text" value="/datos internos/fotos/ico_sin_foto.gif" size="1" readonly="readonly" />
  35.               </strong><strong>
  36.               <input name="foto2" type="text" value="/datos internos/fotos/ico_sin_foto.gif" size="1" readonly="readonly" />
  37.               </strong><strong>
  38.               <input name="foto3" type="text" value="/datos internos/fotos/ico_sin_foto.gif" size="1" readonly="readonly" />
  39.               </strong><strong>
  40.               <input name="foto4" type="text" value="/datos internos/fotos/ico_sin_foto.gif" size="1" readonly="readonly" />
  41.               </strong><strong>
  42.               <input name="foto5" type="text" value="/datos internos/fotos/ico_sin_foto.gif" size="1" readonly="readonly" />
  43.             </strong></div></td>
  44.           </tr>
  45.         </table>
  46.       </div>
  47.       <input type="hidden" name="MM_insert" value="formulario_usuario" />

formulario 2
Código PHP:
Ver original
  1. <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
  2. <html xmlns="http://www.w3.org/1999/xhtml">
  3. <head>
  4. <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
  5. <title>Upload</title>
  6.  
  7. <script src="jquery.js" type="text/javascript"></script>
  8. <script src="jquery.MultiFile.js" type="text/javascript"></script>
  9.  
  10. </head>
  11. <?php
  12. $directorio = '../../imagenes/';
  13.  
  14. if(isset($_FILES['archivo'])){
  15.         foreach ($_FILES['archivo']['error'] as $key => $error) {
  16.            if ($error == UPLOAD_ERR_OK) {
  17.                    echo "$error_codes[$error]";
  18.                    move_uploaded_file($_FILES["archivo"]["tmp_name"][$key],$directorio.$_FILES["archivo"]["name"][$key]) or die("Ocurrio un problema al intentar subir el archivo.");
  19.            }
  20.         }
  21. }
  22.  
  23. ?>
  24. </div>
  25. <div id="mainContent">
  26.     <h1><?
  27. $db=mysql_connect("????","????","????",$db);
  28.     mysql_select_db("????",$db);
  29.  
  30. $nombre=$_POST[nombre];
  31.     $apellido=$_POST[apellido];
  32.     $ciudad=$_POST[ciudad];
  33.     $provincia=$_POST[provincia];
  34.     $web=$_POST[web];
  35.     $titulozapateria=$_POST[tituloanuncio];
  36.     $precio=$_POST[precio];
  37.     $foto1 = $_FILES['foto1']['name'];
  38.     $foto2 = $_FILES['foto2']['name'];
  39.     $foto3 = $_FILES['foto3']['name'];
  40.     $foto4 = $_FILES['foto4']['name'];
  41.     $foto5 = $_FILES['foto5']['name'];
  42.     $prefijo = substr(md5(uniqid(rand())),0,6);
  43.    
  44.  
  45. $uniqueID = substr(md5(uniqid(rand())),0,6);
  46. $foto1 = $uniqueID.$_FILES['foto1']['name'];
  47. $foto2 = $uniqueID.$_FILES['foto2']['name'];
  48. $foto3 = $uniqueID.$_FILES['foto3']['name'];
  49. $foto4 = $uniqueID.$_FILES['foto4']['name'];
  50. $foto5 = $uniqueID.$_FILES['foto5']['name'];
  51.    
  52. // "directorio" es el directorio donde vas a subir la imagen.
  53. mysql_query("insert into contactos(foto1 , foto2 , foto3 , foto4 , foto5 , nombre , apellido , ciudad , provincia , web , titulozapateria , precio)
  54. values('/imagenes/$foto1','/imagenes/$foto2','/imagenes/$foto3','/imagenes/$foto4','/imagenes/$foto5','$nombre','$apellido','$ciudad','$provincia','$web','$titulozapateria','$precio')",$db) or die("La clave introducida, ya existe. Elige otra");
  55.  
  56. //ahora subamos la imagen, "directorio" es el directorio donde la vas a subir.
  57. $copy = copy($_FILES['foto1']['tmp_name'], "../../imagenes/" . $uniqueID.$_FILES['foto1']['name']);
  58. $copy = copy($_FILES['foto2']['tmp_name'], "../../imagenes/" . $uniqueID.$_FILES['foto2']['name']);
  59. $copy = copy($_FILES['foto3']['tmp_name'], "../../imagenes/" . $uniqueID.$_FILES['foto3']['name']);
  60. $copy = copy($_FILES['foto4']['tmp_name'], "../../imagenes/" . $uniqueID.$_FILES['foto4']['name']);
  61. $copy = copy($_FILES['foto5']['tmp_name'], "../../imagenes/" . $uniqueID.$_FILES['foto5']['name']);
  62.  
  63. ?>&nbsp;</h1>
  64. <!-- end #mainContent --></div>
  65. <div align="center"></div>
  66. <blockquote>
  67.   <h2 align="center"><a href="upload_international.php"></a><a href="http://zapater">Regresar s&iacute;n a&ntilde;adir fotos--&gt;</a> </h2>
  68.   <h2 align="center">Insertar foto, m&aacute;x. 60Kb. (300 Kb 5 fotos).</h2>
  69. </blockquote>
  70. <form action="adjuntar foto2.php" method="post" enctype="multipart/form-data">
  71.   <blockquote>
  72.     <h3 align="center">Puede insertar un m&aacute;ximo de 5 fotos
  73.    
  74.     Seleccionar archivo:</p>
  75.       <p>
  76.          <input type="file" class="multi" maxlength="5"/> <br />
  77.          
  78.           <input type="submit" value="Subir archivo" />
  79.        
  80.       *    </h3>
  81.     <p align="center">&nbsp;</p>
  82.   </blockquote>
  83. </form>
  84. <p align="center">&nbsp;</p>