Nueva pregunta

Pregunta:

Fecha: 22-08-2016 14:51:27 (En Español)

¿Algunos trucos o jugadas que sepan en PHP? | COMPARTIR[No resuelta]

Algunos trucos o jugadas que sepan en php?? | compartir

ejemplo-> obtener la ip real de una pc (aunque tenga proxi la pc)..... , etc, etc,
Etiquetas: PHP - Pregunta Votos: 1 - Respuestas: 5 - Vistas: 22 Compartir en: Google Facebook Twitter LinkedIn Link
 

Respuestas:

  • Fecha: 22-08-2016 20:31:29 EJEMPLO-> OBTENER LA IP REAL DE UNA PC (AUNQUE TENGA PROXY LA PC).....

    De regalo, la geolocalización utilizando la base de datos GeoLite de MaxMind.

    Con proxy anonimo llega a recuperar la dirección del proxy, incompleta (suele fallar ciudad y región).

    <!DOCTYPE html>
    <html lang="es">
      <head>
        <meta charset="utf-8">
        <meta name="viewport" content="width=device-width, initial-scale=1">
        <meta name="description" content="Geolocalización de IP">
        <title>Geolocalización de IP</title>
    <style>
    html,body{margin:0;padding:0;width:100%;height:100%;font-family:Trebuchet MS,verdana,arial}
    #texto{text-align:center;padding:2%}
    </style>
    <?php
    $IP='' ;
    if (getenv('HTTP_CLIENT_IP')) {
           $IP=getenv('HTTP_CLIENT_IP');
    } 
    elseif (getenv('HTTP_X_FORWARDED_FOR')){
    	$IP=getenv('HTTP_X_FORWARDED_FOR'); 
    }
    elseif (getenv('HTTP_VIA')){
    	$IP=getenv('HTTP_VIA'); 
    }
    elseif (getenv('HTTP_USERAGENT_VIA')){
    	$IP=getenv('HTTP_USERAGENT_VIA'); 
    }
    elseif (getenv('HTTP_X_FORWARDED')) {
    	$IP=getenv('HTTP_X_FORWARDED'); 
    }
    elseif (getenv('HTTP_X_CLUSTER_CLIENT_IP')) {
    	$IP=getenv('HTTP_X_CLUSTER_CLIENT_IP'); 
    }
    elseif (getenv('HTTP_FORWARDED_FOR')) {
    	$IP=getenv('HTTP_FORWARDED_FOR');
    }
    elseif (getenv('HTTP_FORWARDED')) {
    	$IP=getenv('HTTP_FORWARDED');
    }
    elseif (getenv('HTTP_PROXY_CONNECTION')) {
    	$IP=getenv('HTTP_PROXY_CONNECTION');
    }
    elseif (getenv('HTTP_XPROXY_CONNECTION')) {
    	$IP=getenv('HTTP_XPROXY_CONNECTION');
    }
    elseif (getenv('HTTP_PC_REMOTE_ADDR')) {
    	$IP=getenv('HTTP_PC_REMOTE_ADDR');
    }
    else {
    	$IP=$_SERVER['REMOTE_ADDR']; 
    }
    $meta = unserialize(file_get_contents('http://www.geoplugin.net/php.gp?ip='.$IP));
    ?>
      </head>
      <body>
    	<section id="texto">
    	  <h3>Geolocalización de IP sobre base de datos GeoLite de <a href="http://www.maxmind.com" target="_blank">MaxMind</a></h3>
    	  <h3><a href="http://www.geoplugin.com/geolocation/" target="_new">IP Geolocation</a> por <a href="http://www.geoplugin.com/" target="_new">geoPlugin</a></h3>
    	  geoPlugin utiliza la base de datos GeoLite de MaxMind disponible en <a href="http://www.maxmind.com" target="_blank">http://www.maxmind.com</a>.
    	  <br>
    	  El uso de los servicios geoPlugin haciendo uso de los datos de geolocalización está bajo condición de aceptación de la licencia <a rel="nofollow" title="http://creativecommons.org/licenses/by-sa/3.0/" target="_new" href="http://creativecommons.org/licenses/by-sa/3.0/">Creative Commons Reconocimiento-Compartir bajo la misma licencia 3.0 Unported</a>.
    	  <br>
          <br>
          IP: <span style="color:#FF00AA;"><?php echo $IP; ?></span>
          <br>
          Latitud: <span style="color:#FF00AA;"><?php echo $meta['geoplugin_latitude']; ?></span>
    	  <input id="lat" type="hidden" value="<?php echo $meta['geoplugin_latitude']; ?>">
          <br>
          Longitud: <span style="color:#FF00AA;"><?php echo $meta['geoplugin_longitude']; ?></span>
    	  <input id="lng" type="hidden" value="<?php echo $meta['geoplugin_longitude']; ?>">
          <br>
          Ciudad: <span style="color:#FF00AA;"><?php echo $meta['geoplugin_city']; ?></span>
          <br>
          Región: <span style="color:#FF00AA;"><?php echo $meta['geoplugin_region']; ?></span>
          <br>
          País: <span style="color:#FF00AA;"><?php echo $meta['geoplugin_countryName']; ?></span>
          <br>
          Código País: <span style="color:#FF00AA;"><?php echo $meta['geoplugin_countryCode']; ?></span>
          <br>
          Código Continente: <span style="color:#FF00AA;"><?php echo $meta['geoplugin_continentCode']; ?></span>
        </section>
      </body>
    </html>


    Enlace activo: geolocation-IP
    O si lo prefieres, con su ubicación en mapa (Google Maps).

    P.D.: Dado que en local (http://localhost) la IP que nos muestra es ::1 , es necesario mostrar la página levantada en un hosting.
      Votos: 5 - Link respuesta
     
  • Fecha: 23-08-2016 15:22:26 Bien mi estimado espero que los demás desarrolladores den sus aportes o jugadas en PHP.   Votos: 1 - Link respuesta
     
  • Fecha: 25-08-2016 03:07:32 Hola Kevin:

    Estaba viendo en alguna entrada cómo programar caracteres especiales (un letra griega. un carácter cirílico, flechas o símbolos matemáticos, por citar ejemplos).

    El código es muy extenso pero pueden copiar el código de cada carácter en mi página taller.

    No es PHP pero es muy útil.

    Saludos a todos.
      Votos: 4 - Link respuesta
     
  • Fecha: 28-08-2016 10:20:24 Hola "Kevin Mitnick" ? jajaja, bueno, en algun momento puede que PHPCentral implemente algún requerimiento con respecto al nombre (y también con respecto a los "clones", a buen entendedor pocas palabras, no?), por el momento vaya y pase...

    Volviendo al tema del post, muchas de las "buenas prácticas" podrían caer en la categoría de "truco" o "jugada", pero esto obvimante es subjetivo al ojo del observador, es como decir "mucho" o "poco", no es objetivo... habíendo dicho esto, aquí un "truco".

    Si estamos ejecutando un script PHP y queremos ver todos los mensajes que nos da PHP con respecto a nuestro código (independiente de la configuración de errores que tenga configurado el servidor) podemos utilizar error_reporting con -1, veamos lo que dice la documentación oficial:

    "Al pasar el valor -1 se mostrarán todos los errores posibles, incluso cuando se añadan nuevos niveles y constantes en futuras versiones de PHP. La constante E_ALL también se comporta de esta forma en PHP 5.4."

    Veamos en código como sería esto:
    error_reporting(-1);
    ini_set('display_errors', '1'); //con esta línea establecemos el valor de la directiva de configuración que permite que los errores se muestren en pantalla.
    


    Saludos a todos!
      Votos: 3 - Link respuesta
     
  • Fecha: 30-08-2016 10:34:47 Otra vez bien mi estimado,espero que los demas aporten con sus jugadas , que nos puede librar de un dolor de cabeza o ayudarnos. ????   Votos: 0 - Link respuesta
     
Para participar activamente de la comunidad primero debes autenticarte, ingresa al sistema.Iniciar Sesión
 
frjcbbae garagebible.com