elhacker.net cabecera Bienvenido(a), Visitante. Por favor Ingresar o Registrarse
¿Perdiste tu email de activación?.

 

 


Tema destacado: ¿Eres nuevo? ¿Tienes dudas acerca del funcionamiento de la comunidad? Lee las Reglas Generales


  Mostrar Mensajes
Páginas: [1] 2 3
1  Programación / PHP / Re: Es este código seguro? en: 30 Enero 2008, 00:52 am
Que tal Carxl, tienes mucha razón! Gracias por comentarlo  ;D
Aunque, estamos hablando de que todas y cada una de las funciones de php permiten realizar acciones que html solo no podría, y todas estas actividades consumen más recursos. A lo mejor tengo ese concepto errado de php, la verdad nunca lo habia visto de esa manera... pero de alguno no me cabe duda, la forma de usar php que yo presenté es la más efectiva (o tal vez la única efectiva) a la hora de realizar aplicaciones grandes, modulares o de contenido "muy dinámico".

SMF, PHP-NUKE, IPB, Wordpress........y un sin fin de aplicaciones conocidas. Todas trabajan de esta forma pues se requiere tratar y almacenar toda la información para luego imprimirla.

Seria cuestión de analizar qué aplicación se va a realizar para encontrar la manera más efectiva de trabajarla con php (y con efectivo, me refiero a tiempo de ejecución, recursos a utilizar).

Es mi punto de opinión nada más, claro que no me voy a tomar a mal tu comentario! al contrario, gracias por dar tu opinión también.
Saludos!
2  Programación / PHP / Re: Allowed memory exhausted en: 26 Enero 2008, 05:09 am
No podemos depurarlo sin la información completa... postea la función count()  :¬¬
3  Programación / PHP / Re: problema con utf8 y ansi en: 26 Enero 2008, 05:06 am
2- ese error es causado generalmente por que la llamada a la función "session_start()" no aparece como la primera linea de codigo dentro del script... es decir fijate que esa linea de codigo: "session_start()" , sea lo primero que tienes dentro del codigo de tu pagina.

Eso es incorrecto, la gente dice eso porque ni se toma el tiempo de leer un rfc sobre http o la simple descripción&datos de las funciones.

Sucede cuando se trata de enviar una cabecera http (esto puede ser, un Location para redireccionar, una cookie.........) DESPUÉS de haber imprimido el contenido del mensaje (lo que va después de las cabeceras).

Mientras envies los headers e inicialices las sesiones ANTES de imprimir código (como tags html) no debe haber ningún problema.
4  Programación / PHP / Re: problema con utf8 y ansi en: 25 Enero 2008, 21:27 pm
Si de plano no sabes donde está el problema pero crees que se debe a la codificación, prueba a abrir ambos archivos con un editor hexadecimal para compararlos... si es por eso, seguramente encontrarás algunos bytes raros que no salen en ascii.
5  Programación / PHP / Re: Es este código seguro? en: 25 Enero 2008, 21:23 pm
Ufff, eso es perfecto! Y al estar dentro de código php no podrá ser leído! Muchas gracias Universal SAC. No se me había ocurrido. Supongo que en la linia de los isset se te ha ido un poco la pinza, no? Con esto ya sirve, verdad?

Código
  1. if(isset($_POST['usuario']) && isset($_POST['pass'])){

Ahora se me ha ocurrido otra pregunta un poco más básica (sí, aun más). Es posible hacer algo como esto?

Código:
javascript:form.usuario.value=$VARIABLE_PHP;

Supongo que no, pero si yo tuviera una variable en php por ejemplo $ENTERO, como la podría enchufar en el usuario.value?

Gracias otra vez!

Jojo, que bueno que siempre que hago un código en el momento le pongo algún comentario sobre: "en vivo" o "en caliente" jaja.
Lo más correcto y seguro, creo que es así:

if(isset($_POST['usuario']) && $_POST['usuario']!=NULL && isset($_POST['pass']) && $_POST['pass']!=NULL){

Sobre lo que dices de usar una variable php, no tiene dificultad! La forma de Sir_Lance es correcta, pero muy poco ortodoxa si vas  a hacer un proyecto grande o modular...

Yo considero que todo el código html en donde se va a utilizar php, debe imprimirse desde php! Con lo que iría de una forma así:

<?php
   $VARIABLE 
"funciona";
   echo 
'<form><input name="loqsea" value="'.$VARIABLE.'" onClick="javascript:alert("'.$VARIABLE.'");" /></form>';
?>

El uso de comillas simples o dobles, creo que es al gusto. Cuando vas a imprimir código html es más facil imprimir con ' (comillas simples) para no tener que estar filtrando todas las comillas dobles.
Es mi punto de vista.
6  Programación / PHP / Re: Es este código seguro? en: 25 Enero 2008, 07:15 am
Si quieres cifrar los datos antes de enviarlos y sin tener que utilizar un programa "externo", puedes implementarlo automáticamente desde tu sitio utilizando lenguajes del lado del cliente.

Código:
//ejemplo en vivo

<?php
   echo '<html><head><title>Identifícate</title><body><center>';
   if(isset($_POST['usuario'] && $_POST['usuario'] && isset($_POST['usuario'] && $_POST['usuario']){
      //analizas que tengan 32 caracteres, o filtras... o lo que quieras

      if( /*revizas si existen y son correctos*/ ){
         echo 'Correcto';
      }else{
         echo 'Incorrecto';
      }
   }else{
      echo '   <h1>Sistema de Identificación</h1>';
      echo '   <form method="POST">';
      echo '      Usuario:<br><input type="text" name="usuario" /><br><br>';
      echo '      Password:<br><input type="password" name="pass" /><br><br>';
      echo '      <input type="submit" value="Identificarse" ';
      echo 'onClick="javascript:form.usuario.value=hex_md5(form.usuario.value);';
      echo 'form.password.value=hex_md5(form.password.value)"  />';
      echo '   </form>';
   }
   echo '</center></body></html>';
?>
7  Programación / PHP / Re: Sistema de Themes en: 23 Enero 2008, 09:29 am
En php es algo trabajoso y, como dice Freese, sin duda es modular.

Consiste en procesar TODA la información que se va a imprimir antes de imprimirla, dividida y clasificada. Una vez hecho eso lo demás es facil, solo hay que crear un archivo que se encargue de imprimir las cosas en orden, colocando imágenes, y código tanto dinámico (algunas funciones especiales en php, tal vez) como estático (html) o cualquiera del lado del cliente (como jvs). Este nuevo archivo es el propio theme.

8  Programación / PHP / Re: Dudas con las funciones de sesión en: 19 Diciembre 2007, 06:23 am
No cuesta nada buscar un poco... y qué mejor que la ayuda que proporciona php.net

http://php.net/unset
http://php.net/session_unregister
http://www.php.net/session_unset
http://www.php.net/session_register
http://www.php.net/session_register
php.net/ + función


Citar
session_unregister

Note: Si utiliza $_SESSION (o $HTTP_SESSION_VARS con PHP 4.0.6 o inferior), use unset() para eliminar una variable de la sesión actual.

Esta función no borra la variable global correspondiente a nombre , sólo evita que la variable sea guardada como parte de la sesión. Debe llamar a unset() para eliminar la variable global correspondiente.

Citar
session_unset — Elimina todas las variables de la sesión

Citar
// El uso de session_register() es considerado obsoleto
// Se prefiere el uso de $_SESSION, a partir de PHP 4.1.0
9  Programación / PHP / Re: Todo PHP o en conjunto con HTML? en: 25 Noviembre 2007, 02:30 am
Conveniente........es como si pidieras que te alguien te dijera que distro te es más conveniente. Todas las opciones que das son convenientes DEPENDIENDO de lo que quieras hacer.

Sobre como iniciar, bien puedes imprimir las tags html con echo permitiéndote realizar operaciones ANTES de imprimir. Por ejemplo:

<?php
   $navegador
=obtener_navegador();
   if(
strcmp($navegador,"ie")==0){
      echo 
'Consigue un navegador decente para ver esta pagina...';
   }
?>

Por supuesto, es solo un ejemplo... :P
Comunmente se imprimen las tags html desde php, para evitar que se impriman antes de terminar de procesar toda la información.... de esa manera, en caso de un error aún es posible enviar cabeceras. Por lo que en páginas robustas se utiliza algo como:

<?php
   $salida
='<html><body>Hola ';
   
$navegador=obtenernavegador();
   if(
strcmp($navega.............../*lo mismo de hace rato*/){
      
$salida='<html><body>ahh, trataste de sorprenderme, eh ';
      
//eso de arriba, o directo hacer header("Location: a_mi_no_me_sorprendes.php ");
   
}
   
$salida.='Octavio</body></html>';
   echo 
$salida;
?>

Lo del switch para tratar todo desde un solo archivo suele verse muy bonito.  :xD
10  Programación / PHP / Re: Duda para manejar variables cuando 'register_globals=off' !! en: 9 Noviembre 2007, 04:13 am
Espero no interrumpir.

Citar
El problema como se puede detectar es que despues de instalarse la aplicacion, JAMAS muestra la pagina, SIEMPRE pone el formulario de instalar aplicacion (install.php) debido a que 'register_globals=Off', de modo que las variables contenidas en config.php no pueden ser utilizadas en las FUNCIONES para conectar a la Base de Datos sad !!....

He intentado hacer lo que dice Universal SAC, y segun quedo asi el archivo 'modules.php':

Código:

<?php
global $user_db$pass_db$server$base//esas son las variables contenidas en el archivo config.php

include( "admin/config.php" ); //aqui estan las VARIABLES
include( "base.php" ); //funciones para base de datos
include( "noticias.php" ); //modulo para noticias
..... //mas modulos
?>

Entiendo que ya estás utilizando otro método, pero no veo "de más" el dejar ese tema. El problema ahí, fue que la declaración GLOBAL no se realizó en el lugar adecuado... hay que agregarlo DENTRO de cada función! Si en base.php tienes la función CONECTAR (u otras) tienes que agregar
global $user_db,$pass_db//blabla
ADENTRO de la función... quedando así:

function conectar(){
     global 
$user_db,$pass_db,$server,$base;
     
$link=mysql_con...............................................
     .............................
     return 
$link;

Si en otro archivo tienes otra función, pues hay que hacer la misma declaración de global a las variables que desees utilizar. De hecho, si index.php incluye a config.php, no es necesario que modules.php (que también es incluido por index) contenga la declaración
global $user_db,$pass_db//blabla
...

Entonces, faltaba hacer la declaración de globales en cada función de cada archivo que utilizase las variables.

Saludos.
Páginas: [1] 2 3
WAP2 - Aviso Legal - Powered by SMF 1.1.21 | SMF © 2006-2008, Simple Machines