Autor Tema: Creando un foro  (Leído 2779 veces)

Desconectado Wold

  • PHPer@ Fijo
  • ***
  • Mensajes: 139
  • Karma: 2
  • Sexo: Masculino
    • Ver Perfil
Re: Creando un foro
« Respuesta #15 en: 17 de Junio de 2007, 16:06:23 pm »
extraiendo de la sql los datos.. no creo que te puedan hacer rfi xd
:)

Comunidad PHPeros

Re: Creando un foro
« Respuesta #15 en: 17 de Junio de 2007, 16:06:23 pm »

Desconectado G2K

  • Moderador de Programación General
  • PHPero Master
  • ****
  • Mensajes: 2.245
  • Karma: 76
  • Sexo: Masculino
  • Dame un punto de apoyo y moveré la Tierra
    • Ver Perfil
    • Cristian Torrijos
Re: Creando un foro
« Respuesta #16 en: 17 de Junio de 2007, 16:09:41 pm »
extraiendo de la sql los datos.. no creo que te puedan hacer rfi xd
Pero SQLinjection...
Campeón del CatSkills de Webs (Enero 2011)
Campeón del SpainSkills de Webs (Abril 2011)
http://www.youtube.com/watch?v=1fBMG8F_hpM
Mejor representante catalan en SpainSkills 2011


Conectado naveda

  • Administrador General
  • PHPero Master
  • *****
  • Mensajes: 2.282
  • Karma: 165
  • Sexo: Masculino
    • Ver Perfil
    • naveda.me
Re: Creando un foro
« Respuesta #17 en: 17 de Junio de 2007, 17:24:05 pm »
G2K no creo que tengas problemas de RFI, si de todas formas deseas evitar tenerlos tienes una solucion muy sencilla, colocar todos los archivos que quieras incluir en tu web en una carpeta.

<?PHP
$carpeta 
"includes";
$archivo $carpeta."/".$_GET[&#39;id&#39;].".php"
if (isset($_GET[&#39;id&#39;])) {
if (file_exists($archivo)) {
include (
$archivo);
} else {
echo 
"Error 404: No existe el archivo";
}
}


Con esto no podrán hacerte RFI ;) 100% seguro.
Por favor, leete las Normas


Desconectado G2K

  • Moderador de Programación General
  • PHPero Master
  • ****
  • Mensajes: 2.245
  • Karma: 76
  • Sexo: Masculino
  • Dame un punto de apoyo y moveré la Tierra
    • Ver Perfil
    • Cristian Torrijos
Re: Creando un foro
« Respuesta #18 en: 17 de Junio de 2007, 17:29:09 pm »
G2K no creo que tengas problemas de RFI, si de todas formas deseas evitar tenerlos tienes una solucion muy sencilla, colocar todos los archivos que quieras incluir en tu web en una carpeta.

<?PHP
$carpeta 
"includes";
$archivo $carpeta."/".$_GET[&#39;id&#39;].".php"
if (isset($_GET[&#39;id&#39;])) {
if (file_exists($archivo)) {
include (
$archivo);
} else {
echo 
"Error 404: No existe el archivo";
}
}


Con esto no podrán hacerte RFI ;) 100% seguro.
Muy bueno!!! muchas gracias naveda
KARMA +

Pero lo que quiero hacer ahora es evitar SQL injection que e de poner e codigo ese y currarmelo un poquillo ;)

Aunque para mostrar los datos del foro y otras cosas me o tendre que currar para que no puedan hacer RFI
Campeón del CatSkills de Webs (Enero 2011)
Campeón del SpainSkills de Webs (Abril 2011)
http://www.youtube.com/watch?v=1fBMG8F_hpM
Mejor representante catalan en SpainSkills 2011


Conectado naveda

  • Administrador General
  • PHPero Master
  • *****
  • Mensajes: 2.282
  • Karma: 165
  • Sexo: Masculino
    • Ver Perfil
    • naveda.me
Re: Creando un foro
« Respuesta #19 en: 17 de Junio de 2007, 17:36:16 pm »
No te tienes que currar nada xD
Lo unico que tienes que hacer es no poner algo como:

include($_GET[&#39;id&#39;]);

Ese es el codigo que no deberías poner jamás! Con este codigo te meten una shell y te borran todo, pero con que pongas...

include("./".$_GET[&#39;id&#39;].".php");

ya tendrás solucionado el problema ;)
Por favor, leete las Normas


Desconectado G2K

  • Moderador de Programación General
  • PHPero Master
  • ****
  • Mensajes: 2.245
  • Karma: 76
  • Sexo: Masculino
  • Dame un punto de apoyo y moveré la Tierra
    • Ver Perfil
    • Cristian Torrijos
Re: Creando un foro
« Respuesta #20 en: 17 de Junio de 2007, 18:03:26 pm »
No te tienes que currar nada xD
Lo unico que tienes que hacer es no poner algo como:

include($_GET[&#39;id&#39;]);

Ese es el codigo que no deberías poner jamás! Con este codigo te meten una shell y te borran todo, pero con que pongas...

include("./".$_GET[&#39;id&#39;].".php");

ya tendrás solucionado el problema ;)
Pero yo no quiero incluir un archivo!! xDDDDD
Yo unicamente voy a utilizarlo para la base de datos hacer consultas, mostrar datos con echo, subirlas tambien a la base de datos y cosas asi :P ;)
Campeón del CatSkills de Webs (Enero 2011)
Campeón del SpainSkills de Webs (Abril 2011)
http://www.youtube.com/watch?v=1fBMG8F_hpM
Mejor representante catalan en SpainSkills 2011


Conectado naveda

  • Administrador General
  • PHPero Master
  • *****
  • Mensajes: 2.282
  • Karma: 165
  • Sexo: Masculino
    • Ver Perfil
    • naveda.me
Re: Creando un foro
« Respuesta #21 en: 17 de Junio de 2007, 21:57:01 pm »
Entonces no mezcles temas... RFI es una cosa y SQLinjection otra...

RFI no te van a hacer si no trabajas con archivos.
Por favor, leete las Normas


Desconectado G2K

  • Moderador de Programación General
  • PHPero Master
  • ****
  • Mensajes: 2.245
  • Karma: 76
  • Sexo: Masculino
  • Dame un punto de apoyo y moveré la Tierra
    • Ver Perfil
    • Cristian Torrijos
Re: Creando un foro
« Respuesta #22 en: 17 de Junio de 2007, 22:28:24 pm »
Entonces no mezcles temas... RFI es una cosa y SQLinjection otra...

RFI no te van a hacer si no trabajas con archivos.
Pero si me servira para otras cosas de la Web :P
Campeón del CatSkills de Webs (Enero 2011)
Campeón del SpainSkills de Webs (Abril 2011)
http://www.youtube.com/watch?v=1fBMG8F_hpM
Mejor representante catalan en SpainSkills 2011


Desconectado Txapu

  • PHPerit@
  • *
  • Mensajes: 27
  • Karma: 6
  • Sexo: Masculino
    • Ver Perfil
Re: Creando un foro
« Respuesta #23 en: 18 de Junio de 2007, 20:28:30 pm »

[....................]

Si por ejemplo quieo hacer una consulta a tal mensaje con tal id como id es numerico hago eso de:

if (isset($_GET['numero']) && ($_GET['numero'] != '') && is_numeric($_GET['numero']) {
   $Pnumero = limpiain($_GET['numero']);
}

y luego la consulta con envez de $_GET['numero'] utilizo a variable $Pnumero??

Exacto, pero eso lo debes hacer con cualquier variable. Una cosa que me he fijado ahora es que es absurdo hacer el limpiain a un campo numérico, ya que no se puede hacer SQLinjection poniendo unicamente numeros: ten encuenta el is_numeric ya descarta todo lo que no sea exclusivamente numerico. Ya estoy cambiando todos mis scripts...  :P

Y cuando sea para mensajes privados, o el foro o cualquier cosa de estas deberia utilizar este codigo:?

Sipe. Como norma general: usa la funcion limpiain para todas las variables de texto (ni binarias, ni numericas, solo cadenas o ficheros que sólo contengan texto), y pasa siempre cada una de las variables que vengan del exterior (tipo $_POST, $_GET) a una nueva (sean del tipo que sean).

Si tienes mas dudas, ya sabes  ;)
Saludos, M

Desconectado G2K

  • Moderador de Programación General
  • PHPero Master
  • ****
  • Mensajes: 2.245
  • Karma: 76
  • Sexo: Masculino
  • Dame un punto de apoyo y moveré la Tierra
    • Ver Perfil
    • Cristian Torrijos
Re: Creando un foro
« Respuesta #24 en: 18 de Junio de 2007, 21:42:04 pm »
Muchas gracias por la info ;)

Esta tarde ya le enseñe a naveda como tenia hecho el mostrar perfil de mi Web con el is_numeric :P
Campeón del CatSkills de Webs (Enero 2011)
Campeón del SpainSkills de Webs (Abril 2011)
http://www.youtube.com/watch?v=1fBMG8F_hpM
Mejor representante catalan en SpainSkills 2011


Desconectado G2K

  • Moderador de Programación General
  • PHPero Master
  • ****
  • Mensajes: 2.245
  • Karma: 76
  • Sexo: Masculino
  • Dame un punto de apoyo y moveré la Tierra
    • Ver Perfil
    • Cristian Torrijos
Re: Creando un foro
« Respuesta #25 en: 01 de Julio de 2007, 20:51:01 pm »
mmmm... Bueno el foro más o menos tengo las ideas muy claras de como "engancharlo" todo... lo que no se es como hacer para que cuando se escriba un nuevo tema o una respuesta pues que a todos los usuarios se le muestre como no leido... entonces a traves de sacar el dato se poner la imagn o lo que sea pero lo que no se es como organizarlo para que le salga que ese tema no lo tiene nadie leido ni la respuesta...

Alguien me da una idea de como hacerlo porfa? que me comio la cabeza y no se me ocurre de que manera puedo hacerlo :S
Campeón del CatSkills de Webs (Enero 2011)
Campeón del SpainSkills de Webs (Abril 2011)
http://www.youtube.com/watch?v=1fBMG8F_hpM
Mejor representante catalan en SpainSkills 2011


Conectado naveda

  • Administrador General
  • PHPero Master
  • *****
  • Mensajes: 2.282
  • Karma: 165
  • Sexo: Masculino
    • Ver Perfil
    • naveda.me
Re: Creando un foro
« Respuesta #26 en: 01 de Julio de 2007, 21:07:04 pm »
Pues segun organizo mentalmente la estructura del foro, deberias crear una nueva tabla donde se muestren los temas que cada usuario ha visto.
Por favor, leete las Normas


Desconectado G2K

  • Moderador de Programación General
  • PHPero Master
  • ****
  • Mensajes: 2.245
  • Karma: 76
  • Sexo: Masculino
  • Dame un punto de apoyo y moveré la Tierra
    • Ver Perfil
    • Cristian Torrijos
Re: Creando un foro
« Respuesta #27 en: 01 de Julio de 2007, 22:12:11 pm »
Pues segun organizo mentalmente la estructura del foro, deberias crear una nueva tabla donde se muestren los temas que cada usuario ha visto.
mmmm vamos una tabla como la de usuarios y que a cada usuario se e introdujeran hay los temas que va viendo?

No me aclaro mucho xD
Campeón del CatSkills de Webs (Enero 2011)
Campeón del SpainSkills de Webs (Abril 2011)
http://www.youtube.com/watch?v=1fBMG8F_hpM
Mejor representante catalan en SpainSkills 2011