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.


Mensajes - dongo

Páginas: 1 2 [3] 4 5 6 7 8 9
41
Claro, como te comento lo mas importante para aprender a programar:
  • te debe gustar.
  • Hay que ser constante.
  • No te quedes con dudas. Pregunta...

Y bueno, cuando tengas dudas, por aquí por el foro seguro que siempre hay alguien dispuesto a echar una mano.

Y nada tio, un saludo y espero que te salga todo way. Hasta pronto!! 

42
Aprender a programar desde cero / Re:ayuda urgente
« en: 03 de Septiembre 2014, 12:22 »
Hola buenos días! Bueno voy a darte mi opinión sobre este tema, ya que al igual que tu llevo unos meses estudiando todo lo que rodea al entorno java EE.

Bueno, lo primero es comentarte que si has estudiado java SE y te han quedado cosas sin comprender, vuelvas a dar un repaso y intentar comprender esos conceptos, no se cuales serán pero si intentas hacer ejercicios en los que te piden hacer cosas que no sabes, muy probablemente ese ejercicio no estará a tu nivel y te costará mucho trabajo. Siempre puedes preguntar por aquí esos conceptos que no entiendes y te podamos intentar ayudar.

Java SE es un lenguaje extenso, y si ya lo mezclas con java EE entonces ni acabamos...Sinceramente si no sabes ni por donde empezar, te recomiendo que empieces con teoría, sobre lo que es un servlet, un contenedor de aplicaciones(tomcat, glassfish, ...), que es una pagina jsp, como se compone, como se crean scriptlets jsp, las etiquetas jsp, jstl, jsf. También te recomiendo que estudies el modelo MVC(ModeloVistaControlador), esto requiere estudiar teoría, y ser capaz de aplicarlo después en una aplicación sencilla. Y bueno esto es una visión general de cosas que debes mirar antes de poder meterle mano una aplicación java EE. 

Ahora hablemos sobre el ejercicio, lo primero es que te comentan que preferentemente uses un patrón de diseño MVC, sino sabes que es, imposible aplicarlo.

Segundo punto usar strut1 o strut2, jejejej, perdona que me ria, pero ejk mas de una vez he intentado coger este framework para hacer algo y he acabado dejándolo por que es complejo de entender... En mi opinión si no sabes ni JSP(java server pages), ni JSTL(java standard tag library), ni JSF(java server faces), ni spring, olvídate de struts... empieza con los 4 que te nombro primero para llevar una progresión adecuada.

Sobre el enunciado del ejercicio, bueno, lo que te solicitan es una aplicación que se suele denominar CRUD(create, read, update, delete). Normalmente esta funcionalidad se desarrolla mediante un framework de persistencia, véase Hibernate, top link, ... aunque tambien se pueden realizar con jdbc a pelo. Estos frameworks se denominan frameworks ORM(object relational mapping). Aunque tambien se puede realizar con jdbc, no es lo adecuado... Por tanto te recomiendo que si ya controlas jdbc(java database conection) empieces a trabajar con algun framework de persistencia de estos que te comento, el mas utilizado a nivel empresarial me arriesgo a decir que es hibernate, por tanto yo empezaría con ese framework ORM.

Y bueno, sobre lo que te solicitan no es nada complicado siempre y cuando tengas los conceptos claros(servlet, scriptlet, managed beans, ...) y las herramientas disponibles(jdbc, hibernate, odbc, ...) para llevar a cabo el desarrollo de la aplicación.

Todo tiene 1000 maneras de hacerlo, cuéntanos que sabes... para poder guiarte en como meterle mano a tu ejercicio. Bueno un saludo!!

Y nada esperamos a que nos cuentes que sabes y que no para poder guiarte.

Un saludo!!

P.D. Como comenta el compañero cuando abras un post intenta poner un titulo más adecuado a sobre lo que trata el post.

43
Eso es un warning avisándote de qu la extensión mysql está obsoleta y que en futuras versiones de php será eliminada, para evitar ese warning usa la extension mysqli:

Manual oficial-->http://php.net/manual/es/book.mysqli.php

échale un ojo y si tienes problemas o lo que sea por aquí andamos. Un saludo!!

44
Te equivocas en las comillas, Si tu haces:
Código: [Seleccionar]
<?php
         
echo "<div style="background-color:yellow">
               Curso php de aprenderaprogramar.com usando la instrucción echo
             </div>"
;
         
?>


Si te fijas las comillas de la propiedad style, estan haciendo que la cadena del echo del php se rompa, para arreglarlo ai muchas soluciones, una de ellas es usar caracter de escape \ como te muestro en este ejemplo:

Código: [Seleccionar]
<?php
         
echo "<div style=\"background-color:yellow;\">
               Curso php de aprenderaprogramar.com usando la instrucción echo
             </div>"
;
         
?>


Otra solución es usar comillas simples dentro de las dobles, como el siguiente ejemplo:

Código: [Seleccionar]
<?php
         
echo "<div style='background-color:yellow;'>
               Curso php de aprenderaprogramar.com usando la instrucción echo
             </div>"
;
         
?>


Una tercera solución es poner el estilo en la cabecera, como el siguiente ejemplo:

Código: [Seleccionar]
<html>
   <head>
      <title>Cursos aprenderaprogramar.com</title>
      <meta charset="ulf-8">
       <style type="text/css">
                 div{
                     background-color:yellow;
                 }
        </style>
   </head>
   <body>
      <h1>Cursos aprenderaprogramar.com</h1>
      <h2>Curso php desde cero</h2>
         <?php
         
echo "<div>
               Curso php de aprenderaprogramar.com usando la instrucción echo
             </div>"
;
         
?>

   </body>
</html>

Y bueno supongo que mas adelante te explicaran lo del caracter de escape y esas cositas.

Bueno y cndo vayas a escribir codigo usa el boton # del editor y encierra el codigo entre las etiquetas code ... /code

Y bueno ante cualquier duda pregunta sin problemas. Un saludo!!

45
Aprender a programar desde cero / Re:pregunta CU00643
« en: 02 de Septiembre 2014, 12:26 »
Si que te dará error, eso que intentas supongo que lo habrás deducido por php o javascript, donde los métodos y funciones, permiten tener parámetros opcionales con valores por defecto.

Eso no ocurre en java, en java si un constructor o un método, tiene 4 parámetros, obligatóriamente, tienes que pasarle los 4 parámetros.

Si tu tienes un constructor  con 3 parámetros, y quieres la posibilidad de crear objetos pasando solo 2 parámetros, pues deberás crearte otro constructor que solo reciba 2 parámetros.

En java para el problema de los parámetros por defecto en métodos y constructores, se resuelve mediante la sobrecarga.

Bueno un saludo, si no entiendes algo, nos cuentas.

46
Hola amigo, pues la verdad que no conozco ninguno de esos libros soy pobre y no me puedo permitir libros, yo como primera opción para empezar te recomendaría el curso ubicado en la pagina principal de aprenderaprogramar.com:

https://www.aprenderaprogramar.com/index.php?option=com_content&view=category&id=70&Itemid=193

Para empezar con cosas básicas y demás esta muy bien.

La verdad que yo con php se lo justo, y siempre que quiero hacer algo busco algun manual de como hacer esa cosa concreta y así voy aprendiendo php, tengo experiencia en otros lenguajes, lo que me facilita mucho el saber usar php, pero como te digo no es mi lenguaje preferido.

Sore el libro, creo que deberías echar un ojo a los indices y ver si es un libro orientado como curso o es un libro de referencia. Por otro lado hoy con la red, tenemos miles de manuales sin tener que movernos.

Pienso que el libro no es importante para aprender, lo importante es siempre empezar con una lógica.
Estudiar algo de fundamentos de la programación:

Aqui -> https://www.aprenderaprogramar.com/index.php?option=com_content&view=category&id=28&Itemid=59

Entender los conceptos básicos que rodean a un lenguaje de programación. Una vez que se tiene una base, se puede comenzar a elegir algún lenguaje concreto, en este caso php.

Y después lo mas importantísimo de todo es la constancia, ser constante en programación es importante, y despues ya no tanto pero al principio recomiendo programar todos los días al menos un rato, porque si programas 1 dia y te vas 4 a la playa, cuando vuelves no te acuerdas de nada. Hombre que te puedes pegar tus 4 dias, o 6 o 8, pero no hacerlo todos las semanas porque entonces te aseguro que se te olvidarán mas cosas de las que vayas aprendiendo...

Otra cosa que puedes optar es un curso tutorizado, en el que un maestro te guié y te mande ejercicios y te los corrija.

Y bueno y ahi quedan mis consejos, la verdad es que saber php en un diseñador web nunca viene mal...

Un saludo!!

47
Estupendo, ahora si estas aplicando el polimorfismo correctamente en la clase ListaDeProductosParaEnviar.

Sobre si crear una clase padre cuando hay atributos en común entre varias clases, has llegado a una buena conclusión, esto como bien has concluido es circunstancial y dependerá de la forma en que te indiquen hacerlo o de la manera que tu creas mas conveniente, y creas que te resultara mas fácil, si es cierto que ahora que estas aprendiendo conviene que lo apliques siempre que tengas ocasión, para aprender a trabajar con herencia.
Como práctica y aprendizaje pues no te viene mal usar la herencia cuando tengas oportunidad. Normalmente en ejercicios de este tipo pues no se puede exigir mucho y de hay que una herencia para dos clases(ProdRefrigeradoOCongelado) este bien como didáctica.
Pero en mi opinión(ya que tengo poca experiencia profesional) normalmente la herencia 
se suele usar para crear sistemas mas complejos, o por ejemplo  la escalabilidad del código(un sistema que se prevee que va a ser ampliable)... 

te voy a contar un cuento(por supuesto inventado...) de esto que te hablo:

Imagina que te contrata la universidad de biología, y te dice, queremos un programa para manejar anfibios, que me permita tener una base de datos de anfibios, poder añadir, poder consultar, etc... y te acaban diciendo y si nos gusta, quizá te contratemos para uno de mamíferos.

Caso del Programador inexperto(No piensa, no reflexiona)

Entonces tu como programador inexperto, llegas a tu casa y piensas... Jummm, me piden un programa para manejar anfibios, y directamente empiezas a crear una clase Anfibios, creas otra clase llamada ListaAnfibios, creas los jframes(ventanas) para manejar los anfibios, y te pegas 2 meses trabajando en el programa de anfibios.
Cuando lo terminas y lo entregas resulta que te dicen a pues nos encanta, haznos ahora el de mamíferos. Y el programador inexperto se tira otros 2 meses creando un programa "exactamente igual" al anterior.

Caso del Programador inteligente(piensa, reflexiona)

Entonces tu como programador inteligente, llegas a tu casa y piensas... Jummm, me piden un programa para manejar anfibios, pero también cabe la posibilidad de que me soliciten uno para mamíferos.... Pero estos tios...quizá con el tiempo también quieras uno para peces, y para aves, y quien sabe, quizá insectos...
Y piensas, pues voy a crear una clase abstracta Animales que recoja todos los datos comunes a un animal(nombre, nombre latín, procedencia, paraje, alimentación, etc) y de aquí podré ir extendiendo todos los subreinos, anfibios, mamíferos, peces, insectos, aves, por lo que si hoy me piden para anfibios, y trabajo un poco mas, si mañana me piden mamíferos tendré la mitad del trabajo echo, solo tendré que extender de la clase Animal y listo. Este me llevará tres meses pero si me piden el de mamíferos solo me llevará medio....

El programador inexperto se tiro 1 año y medio haciendo los programas para todos los reinos animales.

Y el programador inteligente hizo todos los reinos en 6 meses.

Y nada FIN! XDD

La moraleja de esto es, que a veces pensar y reflexionar antes de liarse a picar código puede mejorar mucho el diseño de nuestra aplicación.

Y bueno esto iba por lo de la herencia XDD, como ves el programador inteligente, previno una posible escalabilidad del código y el inexperto sin embargo ni penso en eso, esta es una de las mayores funciones(escalabilidad del código) que yo le veo a la herencia, entre otras mas... que si me pongo a contar como ves me engancho y no termino...

En cambio tu de una clase ProductoRefrigeradoOCongelado, es o blanco o negro, la herencia pues como didáctica si, aunque como habrás sacado también del cuento, todo depende de quien lo coja, como lo quiera enfocar, y lo que pretenda hacer.

Yo por ejemplo si tengo 2 clases que tienen en común 20 atributos y 7 métodos... pues esta claro que voy a crear una clase padre para las dos...

Sobre tu código, bueno lo de las fechas tienes razón, estaban mal, pero vamos te aseguro que las fechas fue algo que es que ni miré XDD Bien visto!

Eso si en el método main del TestHerencia me encontrado algo raro:

Código: [Seleccionar]
while(copia.hasNext())
    {
      switch(i)
       {
         case 1: tipoDeProd = "Producto fresco"; break;
         case 2: tipoDeProd = "Producto fresco"; break;
         case 3: tipoDeProd = "Producto refrigerado"; break;
         case 4: tipoDeProd = "Producto refrigerado"; break;
         case 5: tipoDeProd = "Producto refrigerado"; break;
         case 6: tipoDeProd = "Producto congelado por agua"; break;
         case 7: tipoDeProd = "Producto congelado por agua"; break;
         case 8: tipoDeProd = "Producto congelado por aire"; break;
         case 9: tipoDeProd = "Producto congelado por aire"; break;
         case 10: tipoDeProd = "Producto congelado por nitrogeno"; break;
         default: tipoDeProd = tipoDeProd; break;
       }
      System.out.println("____________________________________________");
      System.out.println("\n" + i++ + ": " + tipoDeProd );
      System.out.println("____________________________________________");
      //System.out.println("\n\t\t" + i++);
      copia.next().verInfoDelProducto();
    }

         

Ese while con ese switch tan repetitivo que duele a la vista... y si tuvieras 3.000.000 de productos en la lista?? XDDDD

Mira te paso una alternativa con el operador "instanceof", no es muy complicado, échale el ojo y si no entiendes algo ya nos comentas.

Código: [Seleccionar]
while(copia.hasNext()){
        Producto aux=copia.next();
        if(aux instanceof ProdFresco ){
            tipoDeProd = "Producto fresco";
        }
        else if(aux instanceof ProdRefrigerado){
            tipoDeProd = "Producto refrigerado";
        }
        else if(aux instanceof PCongeladoPorAgua){
            tipoDeProd = "Producto congelado por agua";
        }
        else if(aux instanceof PCongeladoPorAire ){
            tipoDeProd = "Producto congelado por aire";
        }
         else if(aux instanceof PCongeladoPorNitrogeno ){
            tipoDeProd = "Producto congelado por nitrogeno";
        }
      System.out.println("____________________________________________");
      System.out.println("\n" + i++ + ": " + tipoDeProd );
      System.out.println("____________________________________________");
      //System.out.println("\n\t\t" + i++);
      aux.verInfoDelProducto();
    }

Y nada, pos a seguir para adelante.

Un saludo!

48
De todo un poco... / Re:Igual a cero
« en: 02 de Septiembre 2014, 10:41 »
Suponiendo que tu objeto JTextField se llamara campoTexto, la forma de saber si contiene texto o no sería así:

Código: [Seleccionar]
if(campoTexto.getText().length()==0){
     System.out.println("No hay texto");
}
else{
     System.out.println("Si hay texto");
}

Osea cogemos el texto del jtextfield y después miramos su tamaño, si es 0 esta claro que no ai texto, el problema es que si se pulsa el espacio, ya se considera como que ahi texto. Para evitar eso, usar esta version, que elimina los espacios....

Código: [Seleccionar]
String texto=campoTexto.getText();
        texto=texto.replaceAll(" ", "");
        if(texto.length()==0){
            System.out.println("no ai texto");
           
        }
        else
        {
            System.out.println("si lo ai ");
        }

Un saludo!

49
Yo sigo sin entender lo que quiere hacer... pero si le pones al elemento #bloque un margin-left  y un margin-right negativos... entonces se sale por los lados, pero no le veo sentido a esto... en fin intenta ser mas especifico, un saludo!!

sabes hacer una imagen con paint? Sería mucho mas ilustrativo....Un saludo!!

perdón: pero mande el mensaje a la vez creo y por eso no vi el post de la imagen....

50
El error esta en que la clase Taxi no tiene un constructor por defecto(Sin parámetros) que es el que estas intentando usar tu.

El que tienes creado es de la forma Taxi(String, String, int).

Osea que el constructor que hay en la clase taxi recibe tres parámetros de esos tipos anteriores.

Fíjate en el mensaje en la captura de pantalla que nos pasas....

Un saludo!!

51
Hola, eso ocurre porque el proceso de instalacion esta intentando sustituir un fichero que esta en uso, algún proceso o algo lo esta usando.

Podrías intentar averiguar de que fichero se trata, y averiguar el proceso o servicio que lo usa para intentar detenerlo y despues volver a intentarlo.

También puedes ignorar ese fichero, simplemente se saltaria ese archivo y dejaría el que ya tienes, que sería mucha casualidad que fuera ese fichero el que te fastidio la instalación la primera vez.

Otra cosa es intentar arrancar en modo a prueba de errores y intentar desistalar el wamp por ai.

Y como ultima recomendación, te recomendaría te crearas una maquina virtual e instalaras ahi el wamp, ya que instalarlo en la maquina principal puede romperte por alguna causa tu sistema.... eso una makina virtual con xp es lo mejor. Aunque claro también depende para que usas el wamp....
También se puede instalar un linux, ee(debian, centos o alguna de esas...)
así aprendemos un pokito linux...XDD

En fin intenta esas cosas a ver si te es posible. Un saludo!!

52
Aprender a programar desde cero / Re:ENTREGA:CU00641B
« en: 01 de Septiembre 2014, 12:30 »
Pues te comento, están completamente correctas!! Enhorabuena, empiezas a controlar el consenso sobre nombres de variables, atributos, métodos y clases.

A seguir para adelante poco a poco. Un saludo!!

53
Aprender a programar desde cero / Re:Respuesta Ejercicio CU00636B
« en: 01 de Septiembre 2014, 12:15 »
Esta todo correcto.

Sobre los doubles y los floats, no es necesario poner 0.00, con que pongas 0 ya se lo traga.

Un consejito por claridad, intenta poner la llave de cierre( } ) en una nueva linea. No te quedarás sin folio!! y el código será mucho mas claro. Te hablo de tu método  comprobarDimenciones que por cierto es dimensiones... Eres andaluz?? jeje

Bueno para que veas te pongo como quedaría y veras como se ve el código más claro:

Código: [Seleccionar]
public void comprobarDimenciones() {
        if (diametro > 1.4) {
            System.out.println("La rueda es para un vehiculo grande");
        }
        else if (diametro <= 1.4 && diametro > 0.8) {
            System.out.println("La rueda es para un vehiculo mediano");
        }
        else {
            System.out.println("La rueda es para un vehiculo chico");
        }
        if (diametro > 1.4 && grosor < 0.4 || diametro <= 1.4 && diametro > 0.8 && grosor < 0.25) {
            System.out.println("El grosor para esta arueda es inferior al recomendado");
        }
}

Si te fijas se puede observar con mas claridad donde empieza un bloque if y donde acaba, ya que la llave de cierre esta a la misma altura que la instrucción que la abre(en este caso los ifs).

Y bueno esto no es importante ahora porque es poco código y no es complicado de seguir, pero cuando tienes 3000(Yo también soy andaluz) lineas de código en un mismo fichero, pues  las indentaciones, las aperturas de bloques los cierres, etc, son importantes ya que aclaran mucho donde empiezan las cosas y donde acaban.

Como te digo no es importante, pero es recomendable.

Bueno un saludo!

54
Aprender a programar desde cero / Re:Ejercicio! entrega CU00688B
« en: 01 de Septiembre 2014, 11:51 »
Hola he estado mirando tu ejercicio y en cuanto a funcionamiento, declaración de variables, atributos métodos, los nombres, etc, esta todo bien, pero te señalare un par de cosas que veo extrañas.

Por ejemplo la clase ProdRefrigeradoOcongelado, yo creo que esta clase es totalmente innecesaria, a ver si tenemos una clase producto y después 3 tipos de productos Fresco, congelado y refrigerado, tendriamos la siguiente jerarquía:

             /- ProductoFresco
Producto |- ProductoRefrigerado
             \- Producto congelado

tu has creado la siguiente jerarquía:

             /-ProdFresco
Producto                                          /- ProdCongelado
             \-ProdRefrigeradoOcongelado
                                                      \- ProdRefrigerado

Lo primero comentarte que ni tu esquema, ni tu forma de llevarlo a cabo  están mal, pero creo que las características comunes entre un producto Refrigerado y uno congelado son tan mínimas que no merece la pena crear una clase para que solo 2 objetos hereden de ella, si hubiera la posibilidad alomejor de que fueran 40, entonces si, merecería la pena crear esta clase. Esto solo es mi opinión, pero esto también dependerá mucho de lo que quieras hacer y de lo que te pidan.

Por otro lado otra cosa que he visto es que pienso que te has complicado en la clase ListaDeProductosParaEnviar pues has creado métodos específicos para añadir cada producto, dejando a un lado la cantidad de parámetros(XDD), cuando el objetivo del ejercicio es usar el polimorfismo(capacidad de los objetos para pertenecer a múltiples tipos ).

Todo esos add de la clase ListaDeProductosParaEnviar se hubiera arreglado simplemente con un método de este tipo:

Código: [Seleccionar]
//método añadir un producto a la lista para enviar
public boolean addProducto(Producto paramProducto){
    boolean insertado;
    insertado=listaDeProdParaEnviar.add(paramProducto);
    return insertado;
}

Y esto creo que es lo mas importante que tenia el ejercicio, que al tener tres tipos de productos(ProdRefrigerado, ProdCongelado y ProdFresco), los cuales heredan de una clase padre llamada Producto, en la clase ListaDeProductosParaEnviar podríamos haberlos tratado mediante polimorfismo como si fueran Productos de forma general Y no especificando métodos para cada tipo como has echo tu.

Así que yo te recomendaría que repitieras la clase ListaDeProductosParaEnviar haciendo uso de esta capacidad polimórfica que tienen los objetos en java.

Y bueno, no se si me dejare algo detrás, pero vamos dado que como quien dice estas empezando a gatear con java, el ejercicio esta bastante bien.

Si tienes dudas o lo que sea, ya sabes. Bueno un saludo!! 

55
pues no es difícil compi, te pongo como seria el código:

Código: [Seleccionar]
<section id="contenedor_buscador">
    <aside id="izquierda">
<h4>Buscar Propiedades de Nuevo Le&oacute;n</h4><br>
<form name="form1" method="post" action="busca_grand_nl.php">
<label>B&uacute;squeda por Colonia:</label>
<input type="text" name="txtBusqueda" id="txtBusqueda">
<label>Elija Municipio*:</label>
<select name="selCiudad" id="selCiudad">
<option value="-1" selected>Ver todas las Propiedades</option>
<?php
$tablaciudades mysql_query("SELECT * FROM municipios_monterrey ORDER BY nombre_mun ASC"); // Seleccionamos las ciudades de la tabla ciudades
while ($registrociudad mysql_fetch_array($tablaciudades)) { // Vamos a repetir una Option (opcion), de la Lista Desplegable, por cada ciudad en la tabla
?>

<option value="<?php echo $registrociudad['id_mun']; ?>"><?php echo $registrociudad['nombre_mun']; ?></option>
<?php
// termina la zona de repeticion
mysql_free_result($tablaciudades); // se libera la memoria usada por la tabla
?>

</select>

<input type="submit" name="cmdBuscar" id="cmdBuscar" value="&nbsp;Buscar&nbsp;">
</form>

<h5>Los campos marcados con (*) son obligatorios</h5>
</aside>
<article id="derecha">
<h2>Resultados de su b&uacute;squeda</h2>
<?php
$sql "SELECT propiedades.*, municipios_monterrey.* FROM propiedades, municipios_monterrey WHERE propiedades.id_mun = municipios_monterrey.id_mun ";
if (isset($_POST['txtBusqueda'])) {
$sql .= " AND propiedades.colonia LIKE '%" $_POST['txtBusqueda'] . "%' ";
if (intval($_POST['selCiudad']) > 0) {
$sql .= " AND propiedades.id_mun = '" intval($_POST['selCiudad']) . "'";
}
}
$sql .= " ORDER BY municipios_monterrey.nombre_mun ASC";
$tabla mysql_query($sql);
$numFilas=mysql_num_rows($tabla); 
if($numFilas==0){
echo "<h3>No hay Resultados</h3>";
}
else{
while ($registro mysql_fetch_array($tabla)) 
{
?>


<div class="propiedades">
<img id="img_array"src="<?php echo $registro['imagen'];?>"/><br><br>
<label>Direccion:<?php echo $registro['direccion']; ?></label><br>
<label>Colonia:<?php echo $registro['colonia']; ?></label><br>
<label>Municipio:<?php echo $registro['municipio']; ?></label><br>
<label>Estado:<?php echo $registro['estado']; ?></label><br>
<label>Plantas:<?php echo $registro['plantas']; ?></label><br>
<label>Rec&aacute;maras:<?php echo $registro['recamaras']; ?></label><br>
<label>Ba&ntilde;os:<?php echo $registro['banos']; ?></label><br>
<label>Precio:<?php echo $registro['precio']; ?></label>
</div>

<?php
}
mysql_free_result($tabla);
mysql_close($conexion);
}

?>


</article>
</section>

Fíjate que uso la función   mysql_num_rows($tabla) esta función me dirá cuantas filas hay en la variable $tabla, si es 0, entonces no hay resultados, si es diferente de 0 entonces si los hay. Entonces se actúa en consecuencia en cada caso.

Bueno un saludo!

56
Aprender a programar desde cero / Re:ENTREGA:CU00640B
« en: 31 de Agosto 2014, 20:17 »
Lo que nos presentas esta totalmente correcto por indicarte alguna cosa, yo en el constructor con parámetros le hubiera incluido todos los parámetros quedando de esta manera:

Código: [Seleccionar]

     public Profesor(String nombreProfesor,String apellidoProfesor,int edadProfesor,boolean casadoProfesor, boolean especialistaProfesor)
     {
         nombre=nombreProfesor;
         apellido=apellidoProfesor;
         edad=edadProfesor;
         casado=casadoProfesor;
         especialista=especialistaProfesor;
         
     }


Pero vamos estos son simples detalles que con el tiempo lo harás de forma automática.

Un saludo!!

57
Aprender a programar desde cero / Re:ENTREGA:CU00638B
« en: 31 de Agosto 2014, 11:25 »
Hola en cuanto a sintáctica esta totalmente correcto.

Por otro lado, en la semántica fallas en algunos puntos, por ejemplo:

  • La variable motorparaagua -> Para que estuviera de acuerdo al consenso entre desarrolladores, debería ser: motorParaAgua

Después en los métodos getters y setters fallas en la definición del nombre también fallas.

A ver tu a los atributos los has llamado tipoBomba y tipoFluido, hasta aquí bien. Pero cuando creas los getter y setters, nombras a estos getBomba, getFluido, setBomba, setFluido. Esto no se adapta a la especificación que java y desarrolladores avanzados recomiendan.

La recomendación es que los métodos getter y setter se llamen igual que el atributo al cual están asociados, precedidos por la palabra set o get según sea el caso y utilizando camel case(Primera letra en mayúsculas de cada palabra).

Por lo tanto si tu has llamado a los atributos  tipoBomba y tipoFluido, para que tu código se adapte a los estándares, sus métodos getters y setters respectivos, deberían llamarse getTipoBomba(), getTipoFluido(), setTipoBomba(...), setTipoFluido(...).

Esto ahora mismo a tu nivel no tiene mucha importancia, pero en el futuro, si te metes a trabajar con algún framework(hibernate, jsf, spring, ...) te van a exigir que tengas esos métodos y ademas con esa convención de nombres.

Si esto te cuesta mientras estas desarrollando, yo te recomiendo que tengas en una libretita todas estas normas de la convención  de nombres:
  • nombres de clase, interface, enum -> Todas las primeras letras de cada palabra que la componen en mayúscula(camel case).
  • nombres de variables, nombres de atributos y nombres de método -> primera palabra minúsculas, siguientes empiezan por mayúscula.
  • nombres de constantes -> todas las letras en mayúsculas.
Y no se si me dejo alguna... En fin, tras acabar el ejercicio te recomiendo que lo repases y veas que estas normas se cumplen, poco a poco iras haciéndolo de forma automática.

Bueno un saludo!

58
Hola amigo, para evitar que te suceda esa diferencia de margenes, añádele a los labels la siguiente propiedad:

display:block;

y

margin-top:-10px;//esto es para que los labels no se separen mucho unos de otros.

Es decir tu css debería quedar...:

Código: [Seleccionar]
.propiedades{
background:#055273;
border:2px solid 053C53;
border-radius:20px;
display:block;
float:left;
    font-family: verdana;
    font-size: .8em;
    margin-bottom: 10px;
margin-left:2.3%;
margin-top:10px;
min-height: 350px;
width:30%;
}

.propiedades label{
margin-top:-10px;
margin-left:20px;
display:block;
}

Bueno prueba con eso y ya nos cuentas, un saludo.

Por cierto esto te pasa por que los labels son elementos de linea...

Una cosa yo dentro del div puse labels, porque fue lo primero que se me ocurrió, pero también puedes poner una tabla por cada resultado de la consulta. Te pongo como sería el código.

Código: [Seleccionar]
<div class="propiedades">
<table>
<tr>
<td colspan='2' rowspan='2'><img src="<?php echo $registro['imagen'];?>" width="100" height="100"/></td>
</tr>
<tr>
<td>Direccion:</td><td><?php echo $registro['direccion']; ?></td>
</tr>
<tr>
<td>Colonia:</td><td><?php echo $registro['colonia']; ?></td>
</tr>
<tr>
<td>Municipio:</td><td><?php echo $registro['municipio']; ?></td>
</tr>
<tr>
<td>Estado:</td><td><?php echo $registro['estado']; ?></td>
</tr>
<tr>
<td>Plantas:</td><td><?php echo $registro['plantas']; ?></td>
</tr>
<tr>
<td>Rec&aacute;maras:</td><td><?php echo $registro['recamaras']; ?></td>
</tr>
<tr>
<td>Ba&ntilde;os:</td><td><?php echo $registro['banos']; ?></td>
</tr>
<tr>
<td>Precio:</td><td><?php echo $registro['precio']; ?></td>
</tr>
</table>
</div>

No se si el código estará bien, pero al menos espero que captes la idea.

59
Estupendo, pero un consejo, dale al div una anchura(width) fija por ejemplo 50% o 49% del article, así serán todos los divs del mismo tamaño y entraran dos casas por linea... y no te quedarán unos divs mas grande que otros, pero bueno ya es lo que te dije, cuestión de que investigues y lo pongas a tu gusto.

Un saludo!!

60
Hola compi, he estado mirando a ver como se podia hacer, y no se si sera la manera mas correcta, pero creo que se acerca a lo que andas buscando.

te pongo el código del ejemplo:

Código: [Seleccionar]
<html>
<head>
<title>Prueba divs</title>
<meta charset="UTF-8">
<style type="text/css">
body{
width:960px;
}
.personaje{
display:block;
float:left;
                        background:#F5BCA9;
width:200px;
height:150px;
border:2px solid red;
margin-left:20px;
margin-top:20px;
padding-top:30px;
border-radius:20px;
}
label{
margin-left:20px;

}

</style>
</head>
<body>
<?php
//array estatico, imagina que es el array con los datos de la base de datos...
/*personaje 1*/

$mensajes[0][0]="Gaybrush";
$mensajes[0][1]="Threepwood";
$mensajes[0][2]=20;
$mensajes[0][3]="Pirata";
$mensajes[0][4]=54;

/*Persona 2*/
$mensajes[1][0]="Malvado pirata";
$mensajes[1][1]="Le Chuck";
$mensajes[1][2]=34;
$mensajes[1][3]="Pirata";
$mensajes[1][4]=72;

/*Persona 3*/
$mensajes[2][0]="Elaine";
$mensajes[2][1]="Marley";
$mensajes[2][2]=20;
$mensajes[2][3]="Gobernadora";
$mensajes[2][4]=45;

/*Persona 4*/
$mensajes[3][0]="Griswold";
$mensajes[3][1]="Sopabuena";
$mensajes[3][2]=41;
$mensajes[3][3]="Camarero";
$mensajes[3][4]=79;

/*Persona 5*/
$mensajes[4][0]="Señora";
$mensajes[4][1]="Del Vudu";
$mensajes[4][2]=62;
$mensajes[4][3]="Adivina";
$mensajes[4][4]=87;

/*Persona 6*/
$mensajes[5][0]="Murray";
$mensajes[5][1]="Calavera";
$mensajes[5][2]=728;
$mensajes[5][3]="Tokapelotas";
$mensajes[5][4]=0.5;

for(
$i=0;$i<count($mensajes);$i++){
echo "<div class='personaje'>";
echo "<label>Nombre: ".$mensajes[$i][0]."</label><br>";
echo "<label>Apellido: ".$mensajes[$i][1]."</label><br>";
echo "<label>Edad: ".$mensajes[$i][2]."</label><br>";
echo "<label>Profesion: ".$mensajes[$i][3]."</label><br>";
echo "<label>Peso: ".$mensajes[$i][4]."</label><br>";
echo "</div>";

}


?>


</body>
</html>

Fíjate que yo uso un array estático y lo defino manualmente, tu cogerás tu array de la base de datos y haz mas o menos lo mismo que yo, lo recorres y por cada fila, en lugar de crear un table, como tu haces... crea un <div></div> y encierra en medio los datos de cada fila.

Después sobre el css, creo que es lo mas sencillo que se puede despachar para realizar lo que buscas. Como ves no es nada complicado.

Básicamente se trata de establecer las propiedades del div:

display:block;
float:left;

Después le doy un tamaño al div:

 width:200px;
 height:150px;

Posteriormente le añado un borde y le establezco unos margenes para que no queden pegados:

border:2px solid red;
margin-left:20px;
margin-top:20px;
padding-top:30px;

Y finalmente ya es todo lo bonito que quieras ponerlo tu....

Bueno te adjunto una imagen para que veas como queda... Un saludo!!

Páginas: 1 2 [3] 4 5 6 7 8 9

Sobre la educación, sólo puedo decir que es el tema más importante en el que nosotros, como pueblo, debemos involucrarnos.

Abraham Lincoln (1808-1865) Presidente estadounidense.

aprenderaprogramar.com: Desde 2006 comprometidos con la didáctica y divulgación de la programación

Preguntas y respuestas

¿Cómo establecer o cambiar la imagen asociada (avatar) de usuario?
  1. Inicia sesión con tu nombre de usuario y contraseña.
  2. Pulsa en perfil --> perfil del foro
  3. Elige la imagen personalizada que quieras usar. Puedes escogerla de una galería de imágenes o subirla desde tu ordenador.
  4. En la parte final de la página pulsa el botón "cambiar perfil".