Como utilizar una consulta PHP 2 veces



En PHP es posible que necesitemos usar una consulta 2 veces. Un ejemplo práctico de ésto, sería rellenar 2 combos con la misma consulta, sin tener que copiar los combos. La solución sería que tras recorrer el array de la consulta para cargar el primer combo, volver a poner el puntero de la consulta al primer registro de ésta. Esto se hace con “mysql_data_seek

Ejemplo:

$conexion=mysql_connect(DB_HOST,DB_USER,DB_PASSWORD);
if(!$conexion)
{
    echo "No se pudo conectar a la DB";
}else
{
	mysql_select_db(DB_NAME) or die ("No se puedo conectar con la base de datos");

	$resultado=mysql_query("SELECT equipo FROM equipos
                                WHERE categoria='PrimeraCategoria'",$conexion);

	if(!$resultado)
	{
		echo "La consulta no funciono";
	}else
        {
                //CARGO EL PRIMER COMBO
                echo '<label>Equipo Local:</label>';
                echo '<select style="width: 225px;" name="equipoLocal">';
                while ($row=mysql_fetch_row($resultado))
                {
                      echo'<option value="'.$row[0].'">'.$row[0].'</option>';
                }
                echo '</select>';

                //Devuelvo al array de la consulta a la posición de partida para volverlo a recorrer
               if( !mysql_data_seek($resultado, 0) )
               {
                      die( "No se pudo regresar al primer resultado" );
               }else
               {      //CARGO EL SEGUNDO COMBO
                      echo '<label>Equipo Visitante:</label><br>';
                      echo '<select name= "equipoVisitante" style="width: 225px">';
                      while ($row=mysql_fetch_row($resultado))
                      {
                            echo'<OPTION VALUE="'.$row[0].'">'.$row[0].'</OPTION>';
                      }
                      echo '</select>';
               }
       }
}

Como ocultar la versión de PHP de peticiones remotas en Apache

logotipo de php

Tal vez nos interese ocultar la versión de PHP en nuestro servidor Apache para las peticiones remotas. Es decir que PHP no agrege su firma (signature) a las cabeceras (header) del servidor web. Con esto conseguiríamos que sea mucho más dificil averiguar la versión que utilizamos en nuestro servidor, y con eso evitar que sea fácil aprovechar las vulnerabilidades de la versión de PHP que utilicemos.

Con este tutorial evitaremos esa información:

1. Localiza el archivo php.ini. Dependiendo de tu sistema, este archivo puede estar en rutas como estas:

/etc/php.ini
/usr/bin/php.ini
/usr/local/bin/php.ini
/etc/php5/apache2/php.ini

si no sabes dónde se encuentra el archivo, usa este comando:

locate php.ini

2. Abre el archivo y localiza esta línea:

expose_php On

3. Cambialó por:

expose_php = Off

Sal y guarda el archivo:

4. Reinicia el servidor Apache para que te tome este cambio.

sudo /etc/init.d/apache2 restart

ó:

sudo /etc/init.d/apache2 stop
sudo /etc/init.d/apache2 start