Ver Mensaje Individual
  #5 (permalink)  
Antiguo 13/08/2011, 20:34
Mago_de_Oz
 
Fecha de Ingreso: julio-2011
Mensajes: 17
Antigüedad: 12 años, 10 meses
Puntos: 0
Respuesta: formulario de registro

Código PHP:
Ver original
  1. <!DO CTYPE 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. <form action="procesar.php" enctype="multipart/form-data" method="post">
  4. <head>
  5. <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
  6. <title>Documento sin título</title>
  7. <link rel="stylesheet" type="text/css" href="css/base.css"/>
  8. </head>
  9.  
  10. <body>
  11. <p class="titulo">PUBLICAR UN NUEVO AVISO</p>
  12. <hr />
  13.  
  14. <?php
  15. // datos de conexion a la BD.
  16. $servidor ="localhost"; // host
  17. $usuario ="sionsyst_alvin";
  18. $clave ="abc";
  19. $basedatos ="sionsyst_clasificados"; // Indicar una Base de datos.
  20.  
  21. // si se ha pulsao el boton enviar ($enviado) se procesa el formulario ..
  22. // Sino, se continua con el formulario y los nuevos valores de los Select ..
  23. // OJO si se tienen mas varibles (mas <input> ) se van a perder sus valores a no ser
  24. // que los obtengamos y se les de como valor inicial en el value= de cada uno segun corresponda.
  25.  
  26. if (!empty($_POST['enviado'])){
  27.  
  28. // Procesar el formulario ...
  29. echo "Procesando formulario:<br>";
  30. echo "Recibido id_tabla_padre: ".$_POST['idCategoria']."<br>";
  31. echo "Recibido id_tabla_hija: ".$_POST['idCategoria'];
  32.  
  33. } else {
  34.  
  35. // Conexión a la BD
  36. $conexion = mysql_connect($servidor, $usuario, $clave) or die(mysql_error());
  37. mysql_select_db($basedatos, $conexion) or die(mysql_error());
  38.  
  39. // Obtener el $id_padre del envio a si mismo del formulario ..
  40. $id_padre=$_POST['idCategoria'];
  41.  
  42. // Inicio Formulario .. PHP_SELF enviamos a si mismo (a este script).
  43. echo "<form action=\"".$_SERVER['PHP_SELF']."\" method=\"POST\">\n\n";
  44.  
  45. // Formar Selec "Padre".
  46. echo "<select name=\"idCategoria\" onChange=\"this.form.submit()\">\n";
  47. echo "<option value=\"\"> Seleccione un Item </option>\n";
  48.  
  49. $SQLconsulta_padre="SELECT * FROM categorias";
  50. $consulta_padre = mysql_query($SQLconsulta_padre,$conexion) or die(mysql_error());
  51.  
  52. While ($registro_padre=mysql_fetch_assoc($consulta_padre )){
  53. // Se mira si el ID del registro es el mismo q el $id_padre q recibimos si hemos cambiado el select hijo.
  54. // Se selecciona en consecuencia (selected) la opción elegida.
  55. if ($id_padre == $registro_padre['idCategoria']){
  56. echo "<option value=\"".$registro_padre['idCategoria']."\" selected>".$registro_padre['nombre']."</option>\n";
  57. } else {
  58. echo "<option value=\"".$registro_padre['idCategoria']."\">".$registro_padre['nombre']."</option>\n";
  59. }
  60. }
  61. echo "</select>\n\n";
  62.  
  63. mysql_free_result($consulta_padre); // Liberar memoria usada por consulta.
  64.  
  65. // Formar Select "Hijo"
  66. echo "<select name=\"id_hija\">\n";
  67.  
  68. // Si $id_padre no tiene valor (caso de que no se ha seleccionado ningua opcion del select hijo
  69. // se muestra el mensaje de "seleccine un item" (del select padre).
  70. if (!empty($id_padre)){
  71.  
  72. $SQLconsulta_hija="SELECT * FROM subcategorias WHERE idCategoria='$id_padre'";
  73. $consulta_hija = mysql_query($SQLconsulta_hija,$conexion) or die(mysql_error());
  74. // se mira el total de registros de la consulta .. si es 0 se muestra mensaje en el select ..
  75. if (mysql_num_rows($consulta_hija) != 0){
  76. While ($registro_hija=mysql_fetch_assoc($consulta_hija)) {
  77. echo "<option value=\"".$registro_hija['idCategoria']."\">".$registro_hija['nombre']."</option>\n";
  78. }
  79. } else {
  80. echo "<option value=\"\"> No hay registros para este Item </option>";
  81. }
  82. } else {
  83. echo "<option value=\"\"> <-- Seleccione un Item </option>";
  84. }
  85.  
  86. mysql_free_result($consulta_hija); // Liberar memoria usada por consulta.
  87.  
  88. echo "</select>\n\n";
  89. echo "<input type=\"submit\" name=\"enviado\" value=\" Enviar \" >\n\n";
  90. echo "</form>\n";
  91. }
  92.  
  93. ?>
  94.  
  95. <span class="labels">Localización: </span><br />
  96.  
  97. <?php
  98. $con="SELECT nombre FROM localizaciones";
  99. $res=@mysql_query($con);
  100. if(!$res){
  101. echo "falló";
  102. }
  103. else{
  104. echo "<select name='select1' style='width:155px'>";
  105. while ($fila=mysql_fetch_array($res)){
  106. echo "<option>", $fila['nombre'], "</option>";
  107. }
  108. echo "</select>";
  109. }
  110. ?>
  111. <br />
  112. <span class="labels">Ciudad, provincia, estado o distrito:</span>
  113. <br />
  114. <input name="lugar" type="text" id="lugar" size="40" />
  115. <br />
  116. </p>
  117. <p><span class="labels">Título:</span><br />
  118. <input name="titulo" type="text" id="titulo" size="50" />
  119. <span class="labels">Precio:</span>
  120. <input name="precio" type="text" id="precio" size="20" />
  121. </p>
  122. <p><span class="labels">Descripción:(*)</span><br />
  123. <label for="descripcion"></label>
  124. <textarea name="descripcion" id="descripcion" cols="65 " rows="10"></textarea>
  125. </p>
  126. <p class="labels">Nombre:<br />
  127. <label for="nombre"></label>
  128. <input type="text" name="nombre" id="nombre" size="40" />
  129. <br />
  130. Email:<br />
  131. <input type="text" name="email" id="email" size="30" />
  132. (debe ser un email real para validar su anuncio)<br />
  133. Teléfono: <br />
  134. <input type="text" name="telefono" id="telefono" />
  135. </p>
  136. <p> <INPUT type="hidden" name="lim_tamano" value="65000">
  137. <label for="imagen" class="labels">Foto 1:</label>
  138. <input id="imagen" name="imagen" size="30" type="file" /><br>
  139.  
  140. <INPUT type="hidden" name="lim_tamano2" value="65000">
  141. <label for="imagen2" class="labels">Foto 2:</label>
  142. <input id="imagen2" name="imagen2" size="30" type="file" /><br>
  143.  
  144. <INPUT type="hidden" name="lim_tamano3" value="65000">
  145. <label for="imagen3" class="labels">Foto 3:</label>
  146. <input id="imagen3" name="imagen3" size="30" type="file" />
  147. <br />
  148. <span class="labels"><strong>Nota:</strong> las imágenes deben ser de tipo jpg y deben tener un tamaño máximo de 70Kb</span></p>
  149. <p class="labels">Todos los campos con deben ser llenados obligatoriamente a excepción de las imágenes puede colocar de 1 a 3 dependiendo del usuario<br>
  150. <br>
  151. <input name="submit" type="submit" value="Publicar" />&nbsp;</p>
  152. </body>
  153. </html>