Jump to content

cristianvar

Miembro
  • Contador contenido

    15
  • Ingreso

  • Última visita

  • Días ganados

    4

cristianvar Ganó el último 20 Agosto 2012

cristianvar Tenía el contenido más gustado!

2 Seguidores

Métodos de contacto

  • Sitio web
    http://codesaved.com
  • Skype
    cristianvar4

Información del perfil

  • Sexo
    Masculino
  • Localización
    Bilbao, España
  • Intereses
    El desarrollo y el diseño web.

Visitantes recientes al perfil

1.322 visitas al perfil

cristianvar's Achievements

  1. Esto no realiza ninguna conexión con la base de datos, sólo define unas constantes. Para realizar la conexión con la base de datos utilizando estas constante, podríamos hacerlo de la siguiente forma: <?php DEFINE('DB_HOST', 'Host de la base de datos'); DEFINE('DB_USER', 'Usuario de la base de datos'); DEFINE('DB_PASSWORD', 'Contraseña de la base de datos'); DEFINE('DB_NAME', 'Nombre de la base de datos'); $conexion = mysql_connect(DB_HOST, DB_USER, DB_PASSWORD) or die("No se pudo conectar con el servidor de la base de datos. Error: ".mysql_error()); mysql_select_db(DB_NAME, $conexion); ?>
  2. La verdad es que no estaría mal que DiosMen publicase el código fuente también.
  3. Para empezar está genial. ¡Sigue así!
  4. no cierras la etiqueta "<option>". ¡HEREJÃA! xDDDD
  5. Mirando el código fuente de la página, se puede sacar facilmente e.e. Pero claro, para eso hay que tener unos mínimos conocimientos de HTML. De todas formas, cualquier protección nunca viene mal.
  6. Esto realiza una conexión con la base de datos, no es necesaria una web, ni un archivo PHP.
  7. Exacto, pero yo, por ejemplo, cuando recién empecé con PHP y MySQL, no conocía esto, y como ningún trabajo de los que hacía era para algún proyecto importante, nunca me molesté en buscar vulnerabilidades y soluciones en mis scripts. Un saludo!
  8. Hoy os traigo este sitio, bastante completo, donde aprender a programar lenguajes orientados a la web, tales como HTML, CSS, XML, JavaScript, PHP, etc. Este sitio, como he dicho antes, es bastante completo y cuyo contenido es fácil de entender. El único inconveniente es que está en inglés. Sitio - http://w3schools.com ¡Un saludo!
  9. Sí, es en la web. No tiene ningún estilo, pero la intención es que cada uno lo personalice como quiera. De todas formas, esta guía NO la hice para usuarios novatos, la hice para los que ya tienen algún conocimiento del lenguaje PHP.
  10. Bueno, he hecho un pequeño script que sirve tanto para banear como para desbanear usuarios. <?php if(isset($_POST['submit']) && $_POST['submit'] == 'banear') { $usuario = mysql_real_escape_string($_POST['usuario']); // Recibimos el valor del campo "usuario" $banear = "UPDATE account.account SET status = 'BLOCK' WHERE login = '".$usuario."'"; // Ejecutamos la query para cambiar el estado $query = mysql_query($banear) or die (mysql_error()); if($query) { echo 'La cuenta ha sido baneada.'; // Si se ha ejecutado correctamente, sale un mensaje. } else { echo "La cuenta no ha sido baneada"; // Si no se ha ejecutado correctamente, sale otro mensaje. } } if(isset($_POST['submit']) && $_POST['submit'] == 'desbanear') { $usuario = mysql_real_escape_string($_POST['usuario']); // Recibimos el valor del campo "usuario" $desbanear = "UPDATE account.account SET status = 'OK' WHERE login = '".$usuario."'"; // Ejecutamos la query para cambiar el estado $query = mysql_query($desbanear) or die (mysql_error()); if($query) { echo 'La cuenta ha sido desbaneada.'; // Si se ha ejecutado correctamente, sale un mensaje. } else { echo "La cuenta no ha sido desbaneada."; // Si no se ha ejecutado correctamente, sale otro mensaje. } } ?> ?> <h3>Banear</h3> <form action="" method="post"> Usuario: <input type="text" name="usuario"> <input type="submit" name="submit" value="banear"> </form> <h3>Desbanear</h3> <form action="" method="post"> Usuario: <input type="text" name="usuario"> <input type="submit" name="submit" value="desbanear"> </form> No lo he podido testear, quizá tenga algún error. Si alguien tiene alguna duda sobre su funcionamiento, puede contactar conmigo por un mensaje privado. Un saludo.
  11. Bueno, muchas veces me he topado con un monton de webs con una pequeña vulnerabilidad que permite realizar inyecciones de código SQL por medio de un formulario (ya sea el de registro, el de login u otros) o utilizando la barra de direcciones (osea, el método GET). Esto permite al atacante, acceder a la base de datos y modificar (editar, eliminar, etc) cualquier contenido que haya en ella. Para evitar este tipo de ataques vamos a utilizar una pequeña función que sustituye todos los carácteres especiales para ejecutar sentencias SQL y, ya que estamos, también eliminamos cualquier tipo de etiqueta HTML que haya de por medio. Vamos a ver la función: #Edito: el código estaba mal, la función es mysql_real_escape_string(), no mysql_real_string(). Pequeño error, pero ya lo corregí. <?php function limpiar($contenido) { $contenido = strip_tags($contenido); $contenido = mysql_real_escape_string($contenido); return $contenido; } ?> Para ponerlo a funcionar podríamos utilizar este ejemplo: <?php $usuario = limpiar($_POST['usuario']); ?> O, si utlizamos el método GET, podemos usar este código: <?php $usuario = limpiar($_GET['usuario']); ?> Todo el tema de seguridad es muy importante a la hora de crear una página web, y aún más si es para un servidor de Metin2, ya que hay mucha gente ociosa a la que le divierte fastidiar. A los que les interese todo el tema de seguridad, pueden ver esta guía en PDF bastante útil: http://phpbarcelona....ackWeb-v1-4.pdf Espero que os sirva esto y si teneis alguna duda, estaré encantado de intentar ayudaros en lo que pueda. Saludos.
×
×
  • Crear nuevo...