• Jueves 2 de Mayo de 2024, 06:49

Mostrar Mensajes

Esta sección te permite ver todos los posts escritos por este usuario. Ten en cuenta que sólo puedes ver los posts escritos en zonas a las que tienes acceso en este momento.


Temas - tuxie

Páginas: [1]
1
PHP / Subir Varias Imágenes A Un Servidor
« en: Lunes 13 de Septiembre de 2004, 19:42 »
Hola a todos. tengo la siguiente página en la que debo dar de alta varias imágenes que el usuario elija. la desarrollé de la siguiente forma:

Código: Text
  1.  
  2. <?
  3.     if ($enviar){
  4.     if (is_uploaded_file($HTTP_POST_FILES['img']['tmp_name'])){
  5.       if((($img_type!="image/pjpeg")&&($img_type!="image/jpeg")&&($img_type!="image/gif")&&($img_type!="image/bmp"))||($img_size >= 204800)){
  6.       echo "<table width=\"269\" border=\"0\" align=\"center\" cellpadding=\"4\" cellspacing=\"4\" id=\"AutoNumber1\" style=\"border-collapse: collapse\">
  7.         <tr>
  8.         <td align=\"center\">
  9.         Error! Debe revisar que el formato de la IMAGEN sea jpg, bmp o gif y que no sea más grande de 200k<br>
  10.         <a href=\"reg_prop.php?cont=$cont\"> Haga click aquí para regresar</a>
  11.         </td>
  12.         </tr>
  13.         </table>
  14.         <br>";
  15.      
  16.       }else{
  17.  
  18.      
  19.       $fechareg= date("Y-m-d");
  20.       $cliente=mysql_query("SELECT * FROM contacto WHERE secret='$cont'");
  21.       $cli=mysql_fetch_array($cliente);
  22.       $pro=mysql_query("SELECT * FROM propiedad WHERE dir='$dir' and col='$col'");
  23.       $existe=mysql_fetch_array($pro);
  24.       if($existe){
  25.         echo "<table width=\"269\" border=\"0\" align=\"center\" cellpadding=\"4\" cellspacing=\"4\" id=\"AutoNumber1\" style=\"border-collapse: collapse\">
  26.         <tr>
  27.         <td align=\"center\">
  28.         Error! La propiedad que quiere registrar ya existe. Los datos no se pueden duplicar<br>
  29.         <a href=\"reg_prop.php?cont=$cont\"> Haga click aquí para regresar</a>
  30.         </td>
  31.         </tr>
  32.         </table>
  33.         <br>";
  34.       }else{
  35.       if(($edo!=0)&&($edo1!="")){
  36.       echo "no puede llenar los dos campos de estado";
  37.       }else if(($edo==0)&&($edo1=="")){
  38.       echo "no puede dejar vacíos los 2 campos de estado";
  39.       }else if(($edo!=0)&&($edo1=="")){
  40.       //*****aqui se mueve la imagen a la carpeta fotos y se reemplaza el url en la BD
  41.         $imagen=str_replace(' ','_',$cont.$img_name);
  42.         $destino="fotos/".$imagen;
  43.         move_uploaded_file($HTTP_POST_FILES['img']['tmp_name'], $destino);
  44.       //aqui termina la operación
  45.           $sql=mysql_query("INSERT INTO propiedad (id_prop, id_cont, pais, edo, ciudad, dir, col, id_condicion, id_desc, extension, tiempo_con, gravamen, comentarios, precio, fecha_ini, pago, fecha_pago, vendida)
  46.  
  47.             VALUES ('','$cli[id_cont]','$pais','$edo','$ciudad','$dir','$col','$condicion','$descripcion','$ext','$anios','$gravamen','$coment','$precio','$fechareg','0','0','0')");
  48.         $propiedad=mysql_query("SELECT id_prop FROM propiedad WHERE id_cont='$cli[id_cont]' AND pais='$pais' AND edo='$edo' AND ciudad='$ciudad' AND dir='$dir' AND col='$col' AND id_condicion='$condicion' AND id_desc='$descripcion' AND extension='$ext' AND tiempo_con='$anios' AND precio='$precio' AND fecha_ini='$fechareg'");
  49.         $prop=mysql_fetch_row($propiedad);
  50.         $imag=mysql_query("INSERT INTO imagenes (id_img, id_prop, imagen) VALUES ('', '$prop[0]', '$imagen')");
  51.        
  52.       }else if(($edo==0)&&($edo1!="")){
  53.         $edonuevo=mysql_query("SELECT * FROM estado WHERE estado='$edo1'");
  54.         $resedo1=mysql_fetch_row($edonuevo);
  55.         if($resedo1){
  56.         echo "el estado que escribió ya existe en la base de datos";
  57.         }else{
  58.         $conpais=mysql_query("SELECT * FROM pais where id_pais='$pais'");
  59.         $respais=mysql_fetch_array($conpais);
  60.         $altaedo=mysql_query("INSERT INTO estado (id_estado, id_pais, estado) VALUES ('','$respais[id_pais]', '$edo1' )");
  61.         $conedo=mysql_query("SELECT * FROM estado WHERE estado='$edo1'");
  62.         $redo=mysql_fetch_array($conedo);
  63.         //*****aqui se mueve la imagen a la carpeta fotos y se reemplaza el url en la BD
  64.         $imagen=str_replace(' ','_',$cont.$img_name);
  65.         $destino="fotos/".$imagen;
  66.         move_uploaded_file($HTTP_POST_FILES['img']['tmp_name'], $destino);
  67.         //aqui termina la operación  
  68.         $sql=mysql_query("INSERT INTO propiedad (id_prop, id_cont, pais, edo, ciudad, dir, col, id_condicion, id_desc, extension, tiempo_con, gravamen, comentarios, precio, fecha_ini, pago, fecha_pago, vendida)
  69.  
  70.             VALUES ('', '$cli[id_cont]', '$pais', '$edo1', '$ciudad', '$dir', '$col', '$condicion', '$descripcion', '$ext', '$anios', '$gravamen', '$coment', '$precio', '$fechareg', '0', '0', '0')");
  71.         $propiedad=mysql_query("SELECT id_prop FROM propiedad WHERE id_cont='$cli[id_cont]' AND pais='$pais' AND edo='$edo' AND ciudad='$ciudad' AND dir='$dir' AND col='$col' AND id_condicion='$condicion' AND id_desc='$descripcion' AND extension='$ext' AND tiempo_con='$anios' AND precio='$precio' AND fecha_ini='$fechareg'");
  72.         $prop=mysql_fetch_row($propiedad);
  73.         $imag=mysql_query("INSERT INTO imagenes (id_img, id_prop, imagen) VALUES ('', '$prop[0]', '$imagen')");
  74.     }//end else si edo1 no está repetido en la BD
  75.     }//end else si edo1 no esta vacío
  76.       echo "<table width=\"269\" border=\"0\" align=\"center\" cellpadding=\"4\" cellspacing=\"4\" id=\"AutoNumber1\" style=\"border-collapse: collapse\">
  77.       <tr>
  78.       <td align=\"center\">
  79.       Su inmueble ha sido dado de Alta!!!<br>
  80.       <a href=\"index2.php\"> Haga click aquí para continuar...</a>
  81.       </td>
  82.       </tr>
  83.       </table>
  84.       <br>";
  85.     //}
  86.     //}
  87.     }//end else la imagen es valida  
  88.     }//end if sube imagen
  89.     }//end else si los datos de la propiedad no existen  
  90.     else{
  91.       $fechareg= date("Y-m-d");
  92.       $cliente=mysql_query("SELECT * FROM contacto WHERE secret='$cont'");
  93.       $cli=mysql_fetch_array($cliente);
  94.       $pro=mysql_query("SELECT * FROM propiedad WHERE dir='$dir' and col='$col'");
  95.       $existe=mysql_fetch_array($pro);
  96.       if($existe){
  97.         echo "<table width=\"269\" border=\"0\" align=\"center\" cellpadding=\"4\" cellspacing=\"4\" id=\"AutoNumber1\" style=\"border-collapse: collapse\">
  98.         <tr>
  99.         <td align=\"center\">
  100.         Error! La propiedad que quiere registrar ya existe. Los datos no se pueden duplicar<br>
  101.         <a href=\"reg_prop.php?cont=$cont\"> Haga click aquí para regresar</a>
  102.         </td>
  103.         </tr>
  104.         </table>
  105.         <br>";
  106.       }else{
  107.       if(($edo!=0)&&($edo1!="")){
  108.       echo "no puede llenar los dos campos de estado";
  109.       }else if(($edo==0)&&($edo1=="")){
  110.       echo "no puede dejar vacíos los 2 campos de estado";
  111.       }else if(($edo!=0)&&($edo1=="")){
  112.      
  113.           $sql=mysql_query("INSERT INTO propiedad (id_prop, id_cont, pais, edo, ciudad, dir, col, id_condicion, id_desc, extension, tiempo_con, gravamen, comentarios, precio, fecha_ini, pago, fecha_pago, vendida)
  114.  
  115.             VALUES ('','$cli[id_cont]','$pais','$edo','$ciudad','$dir','$col','$condicion','$descripcion','$ext','$anios','$gravamen','$coment','$precio','$fechareg','0','0','0')");
  116.         $propiedad=mysql_query("SELECT id_prop FROM propiedad WHERE id_cont='$cli[id_cont]' AND pais='$pais' AND edo='$edo' AND ciudad='$ciudad' AND dir='$dir' AND col='$col' AND id_condicion='$condicion' AND id_desc='$descripcion' AND extension='$ext' AND tiempo_con='$anios' AND precio='$precio' AND fecha_ini='$fechareg'");
  117.         $prop=mysql_fetch_row($propiedad);
  118.         //$imag=mysql_query("INSERT INTO imagenes (id_img, id_prop, imagen) VALUES ('', '$prop[0]', '$imagen')");
  119.        
  120.       }else if(($edo==0)&&($edo1!="")){
  121.         $edonuevo=mysql_query("SELECT * FROM estado WHERE estado='$edo1'");
  122.         $resedo1=mysql_fetch_row($edonuevo);
  123.         if($resedo1){
  124.         echo "el estado que escribió ya existe en la base de datos";
  125.         }else{
  126.         $conpais=mysql_query("SELECT * FROM pais where id_pais='$pais'");
  127.         $respais=mysql_fetch_array($conpais);
  128.         $altaedo=mysql_query("INSERT INTO estado (id_estado, id_pais, estado) VALUES ('','$respais[id_pais]', '$edo1' )");
  129.         $conedo=mysql_query("SELECT * FROM estado WHERE estado='$edo1'");
  130.         $redo=mysql_fetch_array($conedo);
  131.        
  132.         $sql=mysql_query("INSERT INTO propiedad (id_prop, id_cont, pais, edo, ciudad, dir, col, id_condicion, id_desc, extension, tiempo_con, gravamen, comentarios, precio, fecha_ini, pago, fecha_pago, vendida)
  133.  
  134.             VALUES ('', '$cli[id_cont]', '$pais', '$edo1', '$ciudad', '$dir', '$col', '$condicion', '$descripcion', '$ext', '$anios', '$gravamen', '$coment', '$precio', '$fechareg', '0', '0', '0')");
  135.         $propiedad=mysql_query("SELECT id_prop FROM propiedad WHERE id_cont='$cli[id_cont]' AND pais='$pais' AND edo='$edo' AND ciudad='$ciudad' AND dir='$dir' AND col='$col' AND id_condicion='$condicion' AND id_desc='$descripcion' AND extension='$ext' AND tiempo_con='$anios' AND precio='$precio' AND fecha_ini='$fechareg'");
  136.         $prop=mysql_fetch_row($propiedad);
  137.         //$imag=mysql_query("INSERT INTO imagenes (id_img, id_prop, imagen) VALUES ('', '$prop[0]', '$imagen')");
  138.     }//end else si edo1 no está repetido en la BD
  139.     }//end else si edo1 no esta vacío
  140.       echo "<table width=\"269\" border=\"0\" align=\"center\" cellpadding=\"4\" cellspacing=\"4\" id=\"AutoNumber1\" style=\"border-collapse: collapse\">
  141.       <tr>
  142.       <td align=\"center\">
  143.       Su inmueble ha sido dado de Alta!!!<br>
  144.       <a href=\"index2.php\"> Haga click aquí para continuar...</a>
  145.       </td>
  146.       </tr>
  147.       </table>
  148.       <br>";
  149.     //}
  150.     //}
  151.     }//end else la imagen es valida  
  152.     }//end if sube imagen
  153.    
  154.    
  155.     }else{
  156.     ?>
  157.         <table width="53%"  border="0" align="center">
  158.           <tr>
  159.             <td><div align="center"><strong>PASO 2. REGISTRO DE INMUEBLE </strong></div></td>
  160.           </tr>
  161.         </table>          
  162.         <form name="formpro" method="post" action="reg_prop.php?cont=<? echo $cont?>" onSubmit="return verificar()" enctype="multipart/form-data">
  163.             <table border="0" cellpadding="2" style="border-collapse: collapse" id="AutoNumber2">
  164.               <tr>
  165.                 <td width="145" rowspan="33" valign="top"> <img border="0" src="images/agentes.gif" width="145" height="150"></td>
  166.                 <td colspan="2"><b>Los datos marcados con * son obligatorios</b></td>
  167.               </tr>
  168.               <tr>
  169.                 <td valign="top" colspan="2" class="mediando"><div align="center"><span lang="es"> Descripción del </span>Inmueble</div></td>
  170.               </tr>
  171.               <tr>
  172.                 <td width="96" valign="top"><span lang="es">Condición:</span></td>
  173.                 <td width="228" valign="top"><select name="condicion">
  174.                     <option selected value="0">Seleccione</option>
  175.                     <?  
  176.           $con=mysql_query("select * from condicion");
  177.           $co=mysql_fetch_array($con);
  178.           while($co){
  179.          ?>
  180.          <option value="<? echo $co[id];?>"><? echo $co[condicion];?></option>
  181.         <? $co=mysql_fetch_array($con);
  182.            }//while
  183.         ?>
  184.                   </select>
  185.                     <span lang="es">*</span></td>
  186.               </tr>
  187.               <tr>
  188.                 <td valign="top"><span lang="es">Descripción:</span></td>
  189.                 <td valign="top">
  190.                   <select name="descripcion">
  191.                     <option selected value="0">Seleccione</option>
  192.                      <?  
  193.           $des1=mysql_query("select * from descripcion");
  194.           $des=mysql_fetch_array($des1);
  195.           while($des){
  196.          ?>
  197.          <option value="<? echo $des[id_desc];?>"><? echo $des[descripcion];?></option>
  198.         <? $des=mysql_fetch_array($des1);
  199.            }//while
  200.         ?>
  201.                   </select>
  202.                   <span lang="es">*</span></td>
  203.               </tr>
  204.               <tr>
  205.                 <td valign="top">Extensión (mt2):</td>
  206.                 <td valign="top"><input id="ext" maxlength="9" size="25" name="ext">
  207.                     <span lang="es">*</span></td>
  208.               </tr>
  209.               <tr>
  210.                 <td valign="top">Años de construcción : </td>
  211.                 <td valign="top"><input id="anios" maxlength="3" size="25" name="anios">
  212.                     <span lang="es">*</span></td>
  213.               </tr>
  214.               <tr>
  215.                 <td valign="top">Su propiedad tiene gravamen?</td>
  216.                 <td valign="top"><select name="gravamen">
  217.                     <option value="0" selected>no</option>
  218.                     <option value="1">si</option>
  219.                 </select></td>
  220.               </tr>
  221.               <tr>
  222.                 <td valign="top"><span lang="es">Comentarios (si su inmueble cuenta con agua, luz, gas, alberca, gimnasio, etc.):</span></td>
  223.                 <td valign="top"> <span lang="es">
  224.                   <textarea name="coment" rows="3" cols="35"></textarea>
  225.                 </span></td>
  226.               </tr>
  227.               <tr>
  228.                 <td valign="top"><span lang="es">País:</span></td>
  229.                 <td valign="top">
  230.                   <select name="pais" onChange="OnChange()">
  231.                     <option value="0" selected>seleccione</option>
  232.                     <?  
  233.           $pai=mysql_query("select * from pais");
  234.           $pa=mysql_fetch_array($pai);
  235.           while($pa){
  236.          ?>
  237.          <option value="<? echo $pa[id_pais];?>"><? echo $pa[pais];?></option>
  238.         <? $pa=mysql_fetch_array($pai);
  239.            }//while
  240.         ?>
  241.                   </select>
  242.                   <span lang="es">*</span></td>
  243.               </tr>
  244.               <tr>
  245.                 <td valign="top"><span lang="es">Estado/Provincia:</span></td>
  246.                 <td valign="top"> <font face="verdana" size="1">
  247.                   <select name="edo" onChange="deshabilita()">
  248.                     <option value="0" selected>Seleccione</option>
  249.                     </select>
  250.                   <span lang="es">*</span></font></td>
  251.               </tr>
  252.               <tr>
  253.                 <td valign="top">Provincia (si no se encuentra en la lista de arriba) :</td>
  254.                 <td valign="top"><br>
  255.                   <font face="verdana" size="1">
  256.                   <input id="edo1" maxlength="40" size="25" name="edo1">
  257.                   </font></td>
  258.               </tr>
  259.               <tr>
  260.                 <td valign="top"><span lang="es">Ciudad:</span></td>
  261.                 <td valign="top"> <font face="verdana" size="1">
  262.                   <input id="ciudad" maxlength="40" size="25" name="ciudad">
  263.                   <span lang="es">*</span></font></td>
  264.               </tr>
  265.               <tr>
  266.                 <td valign="top"><span lang="es">Dirección:</span></td>
  267.                 <td valign="top"><font face="verdana" size="1">
  268.                   <input id="dir" maxlength="50" size="25" name="dir">
  269.                   <span lang="es">*</span></font></td>
  270.               </tr>
  271.               <tr>
  272.                 <td valign="top">Colonia:</td>
  273.                 <td valign="top"> <font face="verdana" size="1">
  274.                   <input id="col" maxlength="20" size="25" name="col">
  275.                   <span lang="es">*</span>
  276.                   </font></td>
  277.               </tr>
  278.               <tr>
  279.                 <td valign="top">Precio:$</td>
  280.                 <td valign="top"><input id="precio" maxlength="15" size="25" name="precio">
  281.                     <span lang="es">*</span></td>
  282.               </tr>
  283.               <tr>
  284.                 <td colspan="2" valign="top" class="mediando"><div align="center"><span lang="es">Fotos del inmueble (opcionales) </span></div></td>
  285.               </tr>
  286.               <tr>
  287.                 <td valign="top">imagen1</td>
  288.                 <td valign="top"><p>
  289.                   <input id="img" type="file" name="img" size="20">
  290. </p>
  291.                   </td>
  292.               </tr>
  293.               <tr>
  294.                 <td valign="top">imagen2</td>
  295.                 <td valign="top"><input id="img2" type="file" name="img2" size="20"></td>
  296.               </tr>
  297.               <tr>
  298.                 <td valign="top">imagen3</td>
  299.                 <td valign="top"><input id="img3" type="file" name="img3" size="20"></td>
  300.               </tr>
  301.               <tr>
  302.                 <td valign="top">imagen4</td>
  303.                 <td valign="top"><input id="img4" type="file" name="img4" size="20"></td>
  304.               </tr>
  305.               <tr>
  306.                 <td valign="top">imagen5</td>
  307.                 <td valign="top"><input id="img5" type="file" name="img5" size="20"></td>
  308.               </tr>
  309.               <tr>
  310.                 <td valign="top">imagen6</td>
  311.                 <td valign="top"><input id="img6" type="file" name="img6" size="20"></td>
  312.               </tr>
  313.               <tr>
  314.                 <td valign="top">imagen7</td>
  315.                 <td valign="top"><input id="img7" type="file" name="img7" size="20"></td>
  316.               </tr>
  317.               <tr>
  318.                 <td valign="top">imagen8</td>
  319.                 <td valign="top"><input id="img8" type="file" name="img8" size="20"></td>
  320.               </tr>
  321.               <tr>
  322.                 <td valign="top">imagen9</td>
  323.                 <td valign="top"><input id="img9" type="file" name="img9" size="20"></td>
  324.               </tr>
  325.               <tr>
  326.                 <td valign="top">imagen10</td>
  327.                 <td valign="top"><input id="img10" type="file" name="img10" size="20"></td>
  328.               </tr>
  329.               <tr>
  330.                 <td valign="top">imagen11...</td>
  331.                 <td valign="top"><input id="img11" type="file" name="img11" size="20"></td>
  332.               </tr>
  333.               <tr>
  334.                 <td valign="top"> </td>
  335.                 <td valign="top"> </td>
  336.               </tr>
  337.               <tr>
  338.                 <td valign="top"> </td>
  339.                 <td valign="top"> </td>
  340.               </tr>
  341.  
  342.                 <tr>
  343.                   <td valign="top" colspan="3"><div align="center"><span class="Estilo1">nota: las imagenes deben ser de 200k c/u como máximo</span></div></td>
  344.                 </tr>
  345.                 <td valign="top" colspan="3">
  346.                   <p align="center"> <a href="#"> </a>
  347.                     <input name="enviar" type="submit" id="enviar" value="Enviar">
  348.                   </td>
  349.                 </tr>
  350.             </table>
  351.           </form>
  352. <?
  353. }//end else if enviar
  354. ?>
  355.         </center>
  356.       </div>
  357.  
  358.  
  359.  

Como ven, ya validé el código para que la primera imagen se guarde y lo inserté con un if por que se supone que la inserción de imágenes debe ser opcional, o sea que el usuario puede subir 3 de las 11 imágenes que deben ser, o ninguna o todas y el sistema debe guardar el registro. El problema es que necesito que me ayuden a validar las otras diez imágenes sin necesidad de escribir tantas líneas, por que si lo hago con puros if 's, creo que no voy a acabar. bueno...les agradezco mucho su atención y su ayuda. hasta luego. :hola:

2
PHP / Php Y Los Lectores De Cods. De Barras
« en: Martes 20 de Julio de 2004, 17:52 »
:hola: hola a todos . he estado pensando en un sistema de administracion que tome un valor de un codigo de barras o de una tarjeta que se guarde en el servidor junto con otros datos dentro de un formulario. Segun he investigado, los lectores de códigos de barras toman el código, y la computadora lo lee como si fuera cualquier entrada de teclado, es decir, que lo puede uno guardar en un archivo .txt o algo similar y desde ahi leer el valor con php para que me llene el espacio del formulario donde debe ir. aun no tengo una idea clara de como funcionaría con un dispositivo que lee tarjetas, pero bueno; el problema es que me dicen que es muy inseguro trabajar de esa forma del lado del cliente (usando los archivos txt) y que lo ideal es que tome el valor directamente y lo ponga en el form y asi lo envie al servidor sin escalas. ¿Como me recomiendan hacer esto? muchas gracias por su atención y por cualquiera de sus colaboraciones u opiniones.  hasta luego

3
PHP / Menus Desplegables Dinamicos
« en: Miércoles 7 de Julio de 2004, 01:09 »
:huh: Hola a todos.

Tengo que hacer un formulario de registro de usuarios con ciertos datos y con 3 menus desplegables, uno de pais, otro de estado (o provincia) y otro de ciudad, en el cual si cambio el pais, me cambie el menu desplegable de estado y si elijo un estado de ese pais me cambie el menu desplegable a las ciudades correspondientes a dicho estado. debido a que se manejan todos los paises y es mucha información, guarde los nombres en una BD en mysql con las siguientes tablas y campos:

tabla pais:
campos: id_pais, nombre_pais

tabla estado:
campos: id_estado, id_pais, nombre_estado

tabla ciudad:
campos: id_ciudad, id_estado, nombre_ciudad

como hago esto mezclando php, mysql y javascript?

agradezco de antemano cualquier colaboracion que se me brinde para resolver este problema. :unsure:

4
JavaScript / Menu Desplegable De Paises Y Ciudades
« en: Miércoles 30 de Junio de 2004, 18:29 »
:huh: Hola. hace tiempo que programo en php, pero apenas estoyaprendiendo java script y tengo un problema: sucede que me pidieron hacer un formulario de registro de usuarios de diferentes paises y se quieren incluir dos o tres menus desplegables con la informacion de pais, estado y ciudad, respectivamente. el problema es que tengo que hacer que con javascript, a la hora de elegir un pais, el menu desplegable de estado muestre los nombres de los estados de ese pais y asi sucesivamente. debido a que es mucha información, voy a guardar los nombres en una base de datos y desde ahi voy a cargarlos a la pagina del formulario, pero como hago lo de javascript? les agradezco de antemano la ayuda proporcionada.

Páginas: [1]