Menú

Mostrar Mensajes

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

Mostrar Mensajes Menú

Mensajes - Graphixx

#691
Por lo menos la religion cristiana tiene algo malo, y es que dice que por mas actos malos que hayas cometido, Si le pides Perdon a Dios, todo te sera perdonado.... de alli que en mi Pais los sicarios y delincuentes hacen bendecir las balas, y van a resar antes de asesinar a alguien, con tal que creen tener perdon sobre cualquier tipo de barbaridad que puedan cometer.

#692
Foro Libre / Re: ¿Cuantos años teneis?
11 Enero 2013, 23:07 PM
Vaaaa estan diciendo edades erroneas, isque 58 y 63 años... tan graciosos...
yo tengo 29 años.
#693
Y yo que me puse a integrar mi cuenta de hotmail a skype, y ahora cuando la abro por messenger ya no me salen los contactos :S
#694
Creo que lo que necesitas es esto:
[TUTE] Clase para generar automaticamente select(combos) dependientes multinivel
http://foro.elhacker.net/desarrollo_web/tute_clase_para_generar_automaticamente_selectcombos_dependientes_multinivel-t379538.0.html
#695
Hola compañeros alguien sabe como lograron el efecto de las fotos en esta pagina:
http://www.colombianrealty.com/16331-apartamento-para-la-renta-en-el-poblado

pueden ver que cuando uno pasa sobre las imagenes la imagen principal cambia.



Yo tengo medio idea de que es asi:


<script language="javascript">

function img_sobre(imgname)

{

document.getElementById("imageppal").src = imgname;

}

</script>



$pics .= '<img src="images/'.$codigo.'/th_'.$col_th['file_or'].'" id="imgppal" name="imgppal" onmousemove="img_sobre(\'images/'.$codigo.'/'.$col_th['file_or'].'\');" height="77" width="98" alt="'.strtoupper(mysql_result($resp,0,"titulo")).'" title="'.strtoupper(mysql_result($resp,0,"titulo")).'" >';


pero no me funciona, asi que algo debe de hacer falta.

Ya encontre como era aca:
http://www.guruc.com/tips_programacion/galeria.html
#696
programe desde que estaba en el cole con html, y despues recien comence la carrera con VB a los 17.
Ahora tengo 29 años bro, y comenze el desarrollo con php a los 27 años y ya ves estoy empleado en la industria del Software y me va bien y me desenvuelvo, asi que tu tambien lo puedes hacer, en la industria lo que importa es lo que sabes y no tu edad.
#697
Como ya comentaron los compañeros al parecer la ingenieria informatica exige lo mismo en cualquier Pais, no basta con solo saber programar, toca saber diseño basico de photoshop, pdf, css, javascript, jquery, ajax, php, etc etc etc , somos carbon de leña para las industrias. Asi que animo bro, escogiste una carrera dura, pero si es lo que te gusta esos retos te resultaran gratificantes.
#698
Paginar para quienes apenas comienzan en el mundo de la programacion no es nada facil, por eso me motive a compartir este ejemplo que encontre el cual a mi parecer es el mas sencillo y eficaz de entre todos los de la web.



Muestra de técnica de paginación, para mostrar en distintas páginas los resultados de una consulta a la base de datos. El ejemplo está desarrollado en PHP y MySQL.

En muchas ocasiones, cuando se presentan en una página web registros de una base de datos, se deberían mostrar demasiados registros como para colocarlos todos en una única página. En estas ocasiones se suele paginar los resultados, quizás cientos, en distintas páginas con conjuntos de registros mucho menos numerosos. Por ejemplo, podríamos presentar los resultados en páginas de 10 elementos o 20, dependiendo de nuestras intenciones y el tipo de datos que se estén presentando. Este efecto lo habremos podido observar repetidas veces en los buscadores.

Podríamos desarrollar distintos scripts para paginar resultados en PHP. En este artículo vamos a explicar una posibilidad basada en la utilización de una base de datos MySQL y sentencias SQL a las que indicaremos el conjunto de registros que queremos mostrar en cada página. Los enunciados SELECT del lenguaje SQL, en la base de datos MySQL y otras muchas, tienen una cláusula llamada LIMIT, con la que podemos indicar los registros a mostrar, por ejemplo, 10 registros empezando por el registro 180.

select * from pais limit 180,10

Como vemos LIMIT tiene dos argumentos, el primero es el registro por el que empezar los resultados y el segundo el número de resultados a recoger en el conjunto de registros resultante.

Así pues, en este ejercicio de paginación la cláusula LIMIT será la clave para mostrar los registros en grupos del tamaño deseado.

Código de paginación

Hay varias partes del código que servirán específicamente para implementar la paginación. Lo primero es saber qué página se desea mostrar. En principio se mostraría la primera página de resultados, pero si un visitante selecciona con los enlaces de abajo otra página distinta de la primera, habría que mostrarla también. El índice de la página a mostrar, si es que no es la primera vez que se accede, se recibe por parámetro en la URL.


//Limito la busqueda
$TAMANO_PAGINA = 10;

//examino la página a mostrar y el inicio del registro a mostrar
$pagina = $_GET["pagina"];
if (!$pagina) {
    $inicio = 0;
    $pagina=1;
}
else {
    $inicio = ($pagina - 1) * $TAMANO_PAGINA;
}


Estoy definiendo el tamaño de la página. Luego procuro recibir la página por parámetro en la URL. Si no se recibió nada, se entiende que la página a mostrar es la primera, luego la variable $inicio, que guarda el primer registro a mostrar (para indicarlo en la sentencia SQL en el apartado LIMIT), será cero. Si habíamos recibido algo como página, calculo el inicio con una simple multiplicación de la página a mostrar por el tamaño_ de página definido antes.

Es habitual en estas páginas de resultados informar un poco sobre la cantidad de registros encontrados y los datos de la página que estamos viendo. Estos datos se pueden obtener con unas sencillas operaciones.


//miro a ver el número total de campos que hay en la tabla con esa búsqueda
$ssql = "select * from pais " . $criterio;
$rs = mysql_query($ssql,$conn);
$num_total_registros = mysql_num_rows($rs);
//calculo el total de páginas
$total_paginas = ceil($num_total_registros / $TAMANO_PAGINA);

//pongo el número de registros total, el tamaño de página y la página que se muestra
echo "Número de registros encontrados: " . $num_total_registros . "<br>";
echo "Se muestran páginas de " . $TAMANO_PAGINA . " registros cada una<br>";
echo "Mostrando la página " . $pagina . " de " . $total_paginas . "<p>";


Nota: Este código podría mostrar una información como esta:

Número de registros encontrados: 256
Se muestran páginas de 10 registros cada una
Mostrando la página 19 de 26

Lo primero es hacer una búsqueda en la base de datos por el criterio que se esté utilizando para saber cuantos registros se obtienen en total sin la paginación (luego veremos de donde sale la variable $criterio).

A continuación puedo calcular el número total de páginas de resultados que genera la búsqueda. La función ceil() redondea números en coma flotante o reales hacia arriba, así pues, devuelve el entero por arriba más próximo.

Las siguientes líneas, donde se utiliza echo, tienen como objeto mostrar los datos en la página.

Ahora veremos el código que realiza la búsqueda en la base de datos, extrayendo y mostrando solamente aquellos registros que corresponden con la página a mostrar.


//construyo la sentencia SQL
$ssql = "select * from pais " . $criterio . " limit " . $inicio . "," . $TAMANO_PAGINA;
$rs = mysql_query($ssql);
while ($fila = mysql_fetch_object($rs)){
    echo $fila->nombre_pais . "<br>";
}
//cerramos el conjunto de resultado y la conexión con la base de datos
mysql_free_result($rs);
mysql_close($conn);

Se construye la sentencia SQL para extraer los datos con el criterio, que veremos luego de donde sale, pero que en principio lo podemos tomar como una cadena vacía. También se utiliza LIMIT, como ya se indicó: poniendo los valores definidos antes como inicio y tamaño de página.

El resto es un recorrido típico por un conjunto de registros, en este caso los países de nuestra base de datos, donde se van mostrando todos los elementos desde el principio hasta el final. Finalizando este recorrido no vamos a realizar ninguna acción más con la base de datos, así que podemos cerrar el resultado de la búsqueda y la conexión con la base de datos.

Ahora podemos ver el código que muestra en la parte de abajo los numeritos de todas las páginas que genera la búsqueda, para que el visitante pueda seleccionar una página y moverse entre los resultados.

[code]
//muestro los distintos índices de las páginas, si es que hay varias páginas
if ($total_paginas > 1){
    for ($i=1;$i<=$total_paginas;$i++){
       if ($pagina == $i)
          //si muestro el índice de la página actual, no coloco enlace
          echo $pagina . " ";
       else
          //si el índice no corresponde con la página mostrada actualmente, coloco el enlace para ir a esa página
          echo "<a href='index.php?pagina=" . $i . "&criterio=" . $txt_criterio . "'>" . $i . "</a> ";
    }
}


La primera línea comprueba si realmente hay varias páginas de resultados, pues, si no es así no tendría que mostrar nada. Si efectivamente hay varias páginas para mostrar se recorren todas y para cada una se muestra el índice.

El índice a mostrar puede que sea el de la página que se está visualizando en ese momento y en ese caso simplemente podríamos el numerito, pero no el enlace para ir a ese documento, pues es en el que estamos. En caso de que sea una página de resultados distinta, se muestra un enlace para moverse a dicha página, donde se incluye pasando por parámetro tanto el índice de la página que se desea ver como el criterio de la búsqueda que se estaba realizando.

Hasta aquí el código imprescindible para la paginación. Aunque aun vamos a ver alguna cosa más.

Código de búsqueda

Para hacer un taller un poco más completo y poder ofrecer una página de muestra con funcionalidades de búsqueda, hemos creado la posibilidad de añadir un criterio para encontrar tan sólo elementos relacionados con él. Después de todo, los códigos de paginación suelen utilizarse en situaciones en las que se están realizando búsquedas en la base de datos.

El criterio se podrá definir en una caja de texto y habrá un botón de buscar que llame a la misma página pero pasando el texto con las palabras a buscar en la base de datos.


<form action="index.php" method="get">
Criterio de búsqueda:
<input type="text" name="criterio" size="22" maxlength="150">
<input type="submit" value="Buscar">
</form>


Nos fijamos que el método por el que pasamos este formulario es GET. Esto es debio a que no queremos liar el código y como estamos pasando ya por GET el criterio en otros sitios, utilizamos el mismo método.

El formulario lo colocaremos debajo, pero habrá también un trozo de código que recogerá la información y la tratará para adaptarla a una sentencia de búsqueda en la base de datos. Este código lo colocaremos en la parte de arriba de la página.


//inicializo el criterio y recibo cualquier cadena que se desee buscar
$criterio = "";
if ($_GET["criterio"]!=""){
    $txt_criterio = $_GET["criterio"];
    $criterio = " where nombre_pais like '%" . $txt_criterio . "%'";
}


Se inicializa el criterio a una cadena vacía y luego se comprueba si se ha recibido algo por método GET en el campo criterio. Si era así se puede recoger el texto recibido y construir el criterio, que no es más que una cláusula WHERE donde se buscan elementos, en este caso países, cuyo nombre contenga por algún sitio las letras que se han recibido como texto del criterio.

Base de datos

Como se dijo, se está utilizando una base de datos MySQL. En el Manual de Programación en PHP de DesarrolloWeb.com se muestra la manera de trabajar con bases de datos.

En nuestro ejemplo nos faltan por indicar las sentencias para conectar con MySQL y seleccionar la base de datos a utilizar. Serían unas parecidas a estas.


//conecto con la base de datos
$conn = mysql_connect("servidor","usuario","password");
mysql_select_db("nombre_bbdd",$conn);


Conclusión

Para acabar, ponemos a vuestra disposición la descarga del código de este ejercicio, donde se puede ver todo el ejemplo completo y comentado. Esperamos que podáis aplicarlo a vuestros desarrollos.

Fuente:
http://www.webnova.com.ar/articulo.php?recurso=458[/code]
#699
Gracias por el tip bro, yo para paginar use las magnificas instrucciones de esta pagina:
http://www.webnova.com.ar/articulo.php?recurso=458
#700
Estoy usando sesiones para paginar asi:
Código (php) [Seleccionar]

     <?php
//SELECT * FROM tabla ORDER BY date DESC LIMIT 10
$sql="select * from inventario where tipo_propiedad='Apartamento' ";

//Limito la busqueda
$TAMANO_PAGINA 2;

//examino la página a mostrar y el inicio del registro a mostrar
$pagina $_GET["pagina"];
if (!
$pagina) {
    
$inicio 0;
    
$pagina=1;
}
else {
    
$inicio = ($pagina 1) * $TAMANO_PAGINA;


session_start();
$_SESSION['sql']=$sql//pa poder que el paginador sepa la sentencia sql con que se estaba paginando

$link=mysql_connect("localhost","root","");
mysql_select_db("inmobiliaria",$link);

//miro a ver el número total de campos que hay en la tabla con esa búsqueda
$ssql $_SESSION['sql']." "$criterio;
$rs mysql_query($ssql,$link);
$num_total_registros mysql_num_rows($rs);
//calculo el total de páginas
$total_paginas ceil($num_total_registros $TAMANO_PAGINA);

//pongo el número de registros total, el tamaño de página y la página que se muestra
echo "Número de registros encontrados: " $num_total_registros "<br>";
echo 
"Se muestran páginas de " $TAMANO_PAGINA " registros cada una<br>";
echo 
"Mostrando la página " $pagina " de " $total_paginas "<p>"

//construyo la sentencia SQL
$ssql $_SESSION['sql']." " $criterio " limit " $inicio "," $TAMANO_PAGINA;
$rs mysql_query($ssql,$link);

if(
mysql_num_rows($rs)>0){
   echo 
"<center><table width='829'><tr><td>RESULTADOS ENCONTRADOS</td></tr>"

while($col=mysql_fetch_array($rs))
{
if($col["tipo_negocio"]=="venta"){
$titulo1="SE VENDE";
}elseif($col["tipo_negocio"]=="arriendo"){
$titulo1="SE ARRIENDA";
}elseif($col["tipo_negocio"]=="amoblado"){
$titulo1="APTO AMOBLADO";
}else{$titulo1="VENTA Y ARRIENDO";}


$sql_img="select * from fotos where codigo_fotos='$col[codigo]' LIMIT 1";
$resp_img=mysql_query($sql_img,$link) or die( "Error en query: $sql, el error  es: " mysql_error() );
$col_img=mysql_fetch_array($resp_img);

echo'<tr>
    <th width="230" scope="col" style="border-width: 1px;border: solid; border-color: #009933;">'
.strtoupper($col[tipo_propiedad]).' '.$titulo1.'</th>
    <th colspan="2" bgcolor="#009933" scope="col">'
.strtoupper($col[titulo]).'</th>
    <th width="201" rowspan="2" scope="col" style="border-width: 1px;border: solid; border-color: #009933;">CODIGO</br>'
.$col["codigo"].'</th>
  </tr>
  <tr>
    <td rowspan="9" style="border-width: 1px;border: solid; border-color: #009933;"><img src="admin/uploads/inmuebles/'
.$col_img["fotos"].'" width=250 height=200></td>
    <td width="235" bgcolor="#009933">&nbsp;</td>
    <td width="135" bgcolor="#009933">&nbsp;</td>
  </tr>
  <tr>
    <td><strong>Area: '
.$col["area"].'</strong></td>
    <td colspan="2" rowspan="7" style="border-width: 1px;border: solid; border-color: #009933;" valign="top">'
.substr($col["descripcion_propiedad"],0,395).'...</td>
  </tr>
  <tr>
    <td><strong>Ciudad: '
.$col["ciudad"].'</strong></td>
  </tr>
  <tr>
    <td><strong>Barrio: '
.$col["barrio"].'</strong></td>
  </tr>
  <tr>
    <td><strong>Cuartos: '
.$col["nro_habitaciones"].'</strong></td>
  </tr>
  <tr>
    <td><strong>Nro Baños Privados: '
.$col["nro_banos_privados"].'</strong></td>
  </tr>
  <tr>
    <td><strong>Nro Baños Sociales: '
.$col["nro_banos_sociales"].'</strong></td>
  </tr>
  <tr>
    <td>&nbsp;</td>
  </tr>
   <tr>
    <td><strong>Precio:'
.$col["precio"].'</strong></td>
    <td colspan="2"><a href="index_vista_inmueble.php?codigo='
.$col["codigo"].'">Mas informacion...</a></td>
  </tr>
  <tr>
    <td colspan="4">&nbsp;</td>
  </tr>'
;
}
}
echo 
"</table></center><center>Página: ";
//muestro los distintos índices de las páginas, si es que hay varias páginas
if ($total_paginas 1){
    for (
$i=1;$i<=$total_paginas;$i++){
       if (
$pagina == $i)
          
//si muestro el índice de la página actual, no coloco enlace
          
echo $pagina " ";
       else
          
//si el índice no corresponde con la página mostrada actualmente, coloco el enlace para ir a esa página
          
echo "<a href='index_amoblados.php?pagina=" $i "&criterio=" $txt_criterio "'>" $i "</a> ";
    }
}
echo 
"</center></br>";
?>



el problema es que si no limpio la sesion cuando cambio de sesion en la pagina, se queda pegado el paginador en la ultima consulta que tuvo, alguien sabe como puedo limpiar la sesion pero solo cuando se usen los vinculos:

Código (html4strict) [Seleccionar]

   <td colspan="2" align="center"><strong><a href="index_amoblados.php">Apartamentos Amoblados</a></strong></td>
   <td colspan="2" align="center"><strong><a href="index_fincas.php">Fincas de Recreo</a></strong></td>
   <td colspan="2" align="center"><strong><a href="index_ventas.php">Ventas</a></strong></td>
   <td colspan="2" align="center"><strong><a href="index_arrendamientos.php">Arrendamientos</a></strong></td>


Ya encontre el error estaba en el paginador que en vez de usar $_SESSION['sql'] se debia usar solamente la sentencia $sql.
desaparecen las lineas:
session_start();
$_SESSION['sql']=$sql;

y se reemplaza $_SESSION['sql'] por $sql en las lineas necesarias.