|
Mostrar Temas
|
Páginas: 1 [2] 3
|
11
|
Programación / PHP / Glosario de funciones
|
en: 5 Abril 2005, 22:36 pm
|
Buenas. Les comentaré una idea que tuve ayer por la noche . Se me ocurrió un post, en que cada uno fuera pusiendo las funciones que ha hecho (en PHP o en ASP). Siguiendo un esquema, explicando para que sirven y como se usan. Así, cuando un usuario quiera saber si existe tal función, en vez de preguntar, primero se pasa por aquí, ve si alguien la puso, y si no está, postea (esa es la idea, no creo que mucha gente lo haga, pero en fin xD). El esquema a seguir sería el siguiente: Nombre de la función: Descripción: Lenguaje: Código: Explicación: Modo de uso: Claro, pueden saltar el último paso, "Explicación", y poner la explicación junto con el código . Aquí les dejo dos, que fueron las primeras que encontré: Nombre de la función: npar( int num) Descripción: Dado num, devuelve si es o no par. Lenguaje: PHP <?php function npar ($num) { $num = (int)$num; if ($num % 2 == 0) { echo "El número ".$num." es par"; } else { echo "El número ".$num." no es par"; } } ?> Explicación: Bueno, básicamente primero se declara la función, que tendrá como parámetro $num, que es el número que queremos saber si es par o no. Luego, mediante el cast (int) hacemos que si la variable contiene letras también, se las saque, para los tramposillos . Bien, ahora, como sabrán, para saber si un número es par, debemos dividirlo por dos. Si el resto es 0, entonces es par. Y eso es justamente lo que hace el if. Lo que hace el operador matemático % es dividir por X número y devolver el resto. Entonces, vemos si el resto entre $num y 2 es igual a 0. Si lo es, devolvemos que el número es par. Si no, devolvemos que no lo es . Modo de uso: Simple. <?php [...] npar ("23"); //En vez de 23 ponen su número ?> Bueno, cambio de planes xD, la otra función se las pongo después porque me mandaron a estudiar. Recuerden, ASP o PHP, y funciones, no scripts. Salu2!
|
|
|
12
|
Programación / PHP / Seguridad en PHP
|
en: 15 Diciembre 2004, 06:45 am
|
En este post les hablaré un poco de la Seguridad en PHP, lo cual es esencial para que tu web dure un poco xD. Partimos con el mal uso de variables. SIEMPRE, SIEMPRE tienes que poner las variables en 0 (false). Imagina que tienes un password "escondido" en una web PHP, el cual si la variable $si puesta en 1 (true) (se pone a true al poner la contraseña correcta, por ejemplo). Entonces, luego vé si tiene $si a true. Si lo está, muestra el password. Puesto en código sería: seg.php<?php if (isset ($entrar)) { if ($pass == "1234") { $si = 1; } else { echo "No!"; } } else { ?> <form action="<?=$PHP_SELF?>"> <input type="text" name="pass"><br><br> <input type="submit" name="entrar"> </form> <?php } if ($si) { echo "Password Ultrahipermegasúper secreto"; } ?> Ahí ya una falta. La de la variable $si (como ya lo había dicho). Y podríamos saltarnos toda esa "seguridad" con la siguiente URL: seg.php?si=1. La manera, que es muy simple, sería declarar, antes de todo, la variable $si como 0 (false). Así: <?php $si = 0; if (isset ($entrar)) { if ($pass == "1234") { $si = 1; } else { echo "No!"; } } else { ?> <form action="<?=$PHP_SELF?>"> <input type="text" name="pass"><br><br> <input type="submit" name="entrar"> </form> <?php } if ($si) { echo "Password Ultrahipermegasúper secreto"; } ?> . Otra falta de seguridad, que también tiene que ver con variables, es con los ataques XSS. Esos que te ponen en la variable (que se hace mediante un input, o textarea) es, por ejemplo, un JS que tira una alerta con las cookies del usuario (eso es inofensivo, pero se pueden hacer otras cosas que si perjudican). Por ejemplo, una página que pide el nombre del usuario para saludarlo: <?php if ($saludar) { echo "Hola, ".$nombre; } else { ?> <form action="<?=$PHP_SELF?>" method="post"> <input type="text" name="nombre"><br><br> <input type="submit" name="saludar"> </form> <?php } ?> En esa página, pon en el input "<script>alert(document.cookie)</script>" (seguramente no te salga nada, porque no hay cookies en esa página xD). El resultado sería: Hola, Y te saltaría la alerta. Lo solucionas con la función htmlspecialchars() o la función htmlentities(), que limpian las variables de código HTML: <?php if ($saludar) { $nombre = htmlspecialchars ($nombre); //Limpiando... $nombre = htmlentities ($nombre); //Limpiando... echo "Hola, ".$nombre; } else { ?> <form action="<?=$PHP_SELF?>" method="post"> <input type="text" name="nombre"><br><br> <input type="submit" name="saludar"> </form> <?php } ?> Y el resultado sería: Hola, <script>alert(document.cookie)</script> Una última forma de tener seguridad en la web, por mientras hago mas que me estoy quedando sin tiempo, sería, tratar a un .htm como un .php, tal y como lo hace este foro. Abres el .htaccess, y pones la siguiente línea: AddType application/x-httpd-php .htm Después de eso, cambias todos (o los que quieras) .php's a .htm, y se verán tal y como si fueran un .php. . Fin por ahora. Salu2! PD: Pequeñas ideas de php.net
|
|
|
13
|
Programación / Ejercicios / Ejercicio 504
|
en: 11 Agosto 2004, 11:37 am
|
Pues, ya hice la calculadora ñ_ñ. Consiste en que, introduces dos números, y luego abajo te sale un Select, en el cual salen los operadores. Luego, se hacen las operaciones, y si en la división es decimal, se corta el número para que solo salgan dos decimales, asi no se hace el número tan largo . <?php if ($calcular) { $num1 = htmlentities ($num1); $num2 = htmlentities ($num2); if ($operador == "+") { $total = $num1 + $num2; } if ($operador == "*") { $total = $num1 * $num2; } if ($operador == "-") { $total = $num1 - $num2; } if ($operador == "/") { $total = ($num1 / $num2); if(strpos($total, ".") !== false){ $total = explode(".", $total); $entero = ($total[0]); $decimal = ($total[1]); $decimal = substr ($decimal,0,2); $total = $entero.".".$decimal; } } echo $num1." ".$operador." ".$num2." = ".$total; } else { ?> <form action="<?php echo $PHP_SELF ?>" method="post"> Introduce el número 1: <input type="text" name="num1"><br> Introduce el número 2: <input type="text" name="num2"><br> Introduce el operador: <select name="operador"> <option value="+">+ (Suma)</option> <option value="*">* (Multiplicación)</option> <option value="-">- (Resta)</option> <option value="/">/ (División)</option> </select><br> <br> <input type="submit" name="calcular" value="Calcular!"> </form> <?php } ?> Si quieres cambiar el número de decimales, solo se tiene que cambiar esto: $decimal = substr ($decimal,0,2); Por esto: $decimal = substr ($decimal,0,NÚMERO); Salu2!
|
|
|
14
|
Foros Generales / Sugerencias y dudas sobre el Foro / Sugerencia para los Sub-Foros
|
en: 22 Mayo 2004, 11:53 am
|
Buenas . Bueno, yo siempre entro al subforo de Webmasters primero que nada, y recuerdo que siempre estaba lleno de posts pegados, y hace un tiempo, los moderadores (Qantic y Javier) decidieron hacer un post que contenía un link a los posts, y los demas se "despegaban". En la mayoría de los subforos ahora también tienen ese mismo "problema", por lo que me gustaría sugerir que hicieran lo mismo que en el subforo de Webmasters, Despegar todo y ponerlo en un post. Quedaría mucho mas ordenado, y no tan lleno de posts pegados. Tomenlo solo como una sugerencia. Salu2!
|
|
|
15
|
Foros Generales / Sugerencias y dudas sobre el Foro / Foro sin Style (CSS) y otros problemas
|
en: 22 Mayo 2004, 03:45 am
|
Pues tengo 2 problemas con el foro: 1- Entre las 10:00 PM de ayer y las 11:30 AM de hoy, no podía entrar al foro, me decía el típico error que salía antes con la url www.elhacker.net/foro : Conections Problems SMF cannot ......... (No se como era el texto.. algo asi xD). 2- A veces, cuando entro, el foro me sale como si no tuviera un CSS, osea, con los links morados, sin fondo, y sin las imágenes de arriba... una foto: A que se deberá??? Salu2!
|
|
|
16
|
Programación / PHP / Scripts Php/MySQL
|
en: 18 Abril 2004, 23:21 pm
|
Buenas :). Si, si se que se parece al post de Cobac, pero quería postear los que yo he hecho, porque me han servido mucho ;D. Espero que os sirvan :P. IMPORTANTE: Estos scripts van sin la "seguridad que necesitan" (vamos, que unos 3 la necesitan, los otros no xD). Si quieren seguridad, ustedes se la ponen :).Primero que nada, conexion.php que es el que nos ayudará a conectarnos en todo: <?php $conexion = mysql_connect("localhost","usuario","clave"); mysql_select_db ("basedatos", $conexion) OR die ("Base de datos inexistente, o temporalmente inactiva"); ?> TagBoard, Con MySQL y SmileysPrimero creamos la tabla en el PhpMyAdmin: CREATE TABLE tagboard ( id int(10) auto_increment, autor varchar(255) NOT NULL, comentario varchar(255) NOT NULL, fecha varchar(255) NOT NULL, email varchar(255) NOT NULL, PRIMARY KEY (id) ) Ahora tagboard.php<?php include ("conexion.php"); if ($comentario && $comentarios == "") { echo "Porfavor, introduce un comentario"; } elseif ($comentario && $autor == "") { echo "Porfavor, Introduce tu nick"; } elseif ($comentario) { $fecha = date("d/m/Y g:i:s a"); function smileys($var) { $a = str_replace("[","",$var) ; $var = str_replace("]","",$var) ; $var = str_replace(":D","[grin.gif]",$var) ; $var = str_replace(":)","[smiley.gif]",$var); $var = str_replace(";)","[wink.gif]",$var); $var = str_replace(":S","[huh.gif]",$var); $var = str_replace(":(","[sad.gif]",$var); $var = str_replace(":@","[angry.gif]",$var); $var = str_replace(":P","[tongue.gif]",$var); //uno de estos por cada smiley $var = str_replace("[","<img src=\"smileys/",$var) ; $var = str_replace("]","\">",$var) ; return $var; } $comentarios = htmlentities ($comentarios); $comentarios = smileys($comentarios); mysql_query ("INSERT INTO tagboard (autor,email,comentario,fecha) VALUES ('$autor','$email','$comentarios','$fecha')",$conexion); ?> <html> <head> <script language="javascript"> function smileys () { window.open ('smileys.php','smileys','width=100,height=100,resizable=no,toolbar=no,status=no'); } </script> </head> <body> <iframe src="comentarios.php"></iframe><br> <form action="<?php echo $PHP_SELF ?>" method="post"> Introduce tu nick: <input type="text" name="autor"><br> Introduce tu email: <input type="text" name="email"><br> Introduce tu comentario: <textarea name="comentarios"></textarea><br><br> <input type="submit" name="comentario" value="Enviar"> <br> <a href="javascript:smileys()">Smileys</a> </form> </body> </html> <? } else { ?> <html> <head> <script language="javascript"> function smileys () { window.open ('smileys.php','smileys','width=300,height=400,resizable=no,toolbar=no,status=no'); } </script> </head> <body> <iframe src="comentarios.php"></iframe><br> <form action="<?php echo $PHP_SELF ?>" method="post"> Introduce tu nick: <input type="text" name="autor"><br> Introduce tu email/web: <input type="text" name="webemail"><br> Introduce tu comentario: <textarea name="comentarios"></textarea><br><br> <input type="submit" name="comentario" value="Enviar"> <br> <a href="javascript:smileys()">Smileys</a> </form> </body> </html> <?php } ?> Luego comentarios.php<?php include ("conexion.php"); $sql = "SELECT * FROM tagboard ORDER BY 'id' DESC"; $resp = mysql_query ($sql); while ($row = mysql_fetch_array ($resp)) { echo "<font face=Verdana size=2><a href=mailto:".$row ["email"].">".$row ["autor"]."</a><br>"; echo "".$row ["comentario"]."<br>Fecha: ".$row ["fecha"]."<br><hr></font>"; } ?> Y ahora, vamos por los Smileys. Creamos la tabla smileys, CREATE TABLE smileys ( id int(10) auto_increment, nombre varchar(25) NOT NULL, url varchar(255) NOT NULL, texto varchar(10) NOT NULL, PRIMARY KEY (id) ) Ahora insertamos los smileys que tengamos en el PhpMyAdmin (vamos a insertar, dentro de la tabla smileys). Lo hacemos de la siguiente manera: id: Dejamos en blanco nombre: ejemplo, Grin. url: nombre del archivo, ejemplo, grin.gif. texto: como hacer el smiley, ejemplo, :D Ahora creamos smileys.php<table> <tr><td>Nombre</td><td>Imágen</td><td>Forma de hacerlo</td></tr> <?php include ("conexion.php"); $sql = "SELECT * FROM smileys"; $resp = mysql_query ($sql); while ($row = mysql_fetch_array ($resp)) { echo "<tr><td>".$row ["nombre"]."</td><td><img src=smileys/".$row ["url"]."></td><td>".$row ["texto"]."</td></tr>"; } ?> Recuerden que deben poner los smileys en el directorio smileys. Eso es todo con el Tagboard ;D. Cualquier error avisarme con línea y todo.
|
|
|
17
|
Media / Diseño Gráfico / [:: Mini-Tutorial ::] Crear un botón con link en Flash
|
en: 10 Abril 2004, 23:46 pm
|
Buenas Aqui les tengo este Mini-Tutorial (mini porque es muy pequeño xD) en el cuál os mostraré como crear un botón simple con el Actionscript incluído (vease ActionScript). Nota: Yo uso el Flash MX 2004, el más nuevo. Pienso que debería ser igual en todas las versiónes. Bueno, aqui vamos: Primero creamos un nuevo archivo en flash. Luego, vamos a Insertar (Insert) / Nuevo Símbolo (New Symbol) (o apretando F8). Ahora, elegimos el botón radio "Botón", y le ponemos de nombre "boton" (sin comillas). Ahora, nos aparecera un nuevo cuadro, y arriba, en el lugar de los fotogramas, nos saldrá: Reposo, Sobre, Presionado y Zona Activa. Entonces, nos vamos a Reposo, y creamos un cuadrado del tamaño que deseen (puede ser un circulo, etc). Pongamosle color negro. Ahora vamos a Sobre, apretamos F6 (para crear un nuevo fotograma) y le cambiamos el color al cuadrado. Ahora hacemos lo mismo en Presionado y lo mismo en Zona Activa. Ahora, que ya tenemos nuestro botón listo, cambiamos a la "Escena 1". Entonces, vamos a Ventana / Biblioteca (también sirve apretando Control + L). Arrastramos nuestro botón a la Escena, y damos un click sobre el. Entonces buscamos donde dice "Acciones" y copiamos esto: on(release) { getURL("link_adonde_voy", "target") } Donde "link_adonde_voy" es la url del link (Por ejemplo: http://www.elextremo.cl/) y "target" es el tipo de target: _blank : Es para abrir el link en otra ventana completamente nueva. _top : Para abrir el link en la ventana completa (sirve para cuando tenemos frames). _self : Para cuando queramos abrirlo en la misma ventana. Algo asi: Y por último, damos a Control + Enter para ver comos quedo . Espero que os sirva Salu2!
|
|
|
19
|
Media / Juegos y Consolas / Que consola os gusta más?
|
en: 9 Abril 2004, 04:08 am
|
Bueno pues estoy pensando en comprarme una consola, y no se cuál. Estoy entre la GameCube y la Play 2. He escuchado cosas muy buenas de la Play 2, me están convenciendo . Aqui hay una lista con las consolas activas, para que pongan cual les gusta más. PlayStation 2 GameCube XboX GameBoy Advance GameBoy Advance SP Bueno, ya saben, pongan que consola os gusta más. Salu2!
|
|
|
20
|
Informática / Tutoriales - Documentación / [:: Tutorial ::] Manual ASP
|
en: 22 Febrero 2004, 18:17 pm
|
Hola denuevo ... Hace un tiempo estuve aprendiendo ASP, y pues aqui estoy escribiendoles otro manual . Si deseas aprender ASP, personalmente te recomiendo leerte el manual que escribi sobre PHP primero, ya que cuando lei el manual de ASP, despues de haber leido el de PHP, fue muy facil de aprender. En todo caso, explicare todo para mayor comodidad. I- Introduccion II- Lo basico 1- Como hacer una sentencia en ASP 2- Comentarios en ASP III- Las variables 1- Que son las variables 2- Como definir Variables IV- Objetos Integrados 1- Response 1.1- Metodo Write 1.2- Metodo Redirect 1.3- Metodo Cookie 2- Require 2.1- Metodo Form 2.2- Metodo Cookie 3- Application 3.1- Metodo Lock 3.2- Metodo Unlock V- Operadores Logicos 1- Operadores de Comparacion 2- Operadores de Asignacion 3- Operadores de Logicos VI- Condicionales 1- If, Else 2- If, Elseif, Else 3- While 4- Select, Case I- Introduccion.ASP es una tecnología desarrollada por MS para crear páginas web de contenido dinámico apoyándose en scripts ejecutados en el servidor. Hay que destacar que ASP es una tecnología propietaria de Microsoft, y que el uso de esta tecnología implica el uso de los productos de Microsoft: MS Internet Information System y MS Windows en el servidor. ASP, al igual que PHP, es un lenguaje que se ejecuta en el servidor (ASP = Active Server Pages). Primero escribes la direccion que contenga algo en ASP, luego el navegador va al server, ve que la pagina esta en ASP, la transforma a HTML, y devuelve un resultado HTML a el navegador, aqui veremos una imagen sobre lo explicado anteriormente: (WebEstilo.Com) II- Lo Basico 1- Como hacer una sentencia en ASPComo en html, una pagina ASP se abre mediante un tag y un signo de porciento ( % ). Ejemplo: <html> <head> <title>Mi Primera Pagina ASP</title> </head> <body> Parte HTML... <% Response.Write "Hola Mundo" %> </body> </html>
Como ven, para escribir algo en ASP, debemos usar el objeto "Responde.Write", pero eso lo veremos mas adelante. 2- Comentarios en ASPPara poder agregar comentarios en ASP, debemos poner una comilla simple ( ' ), o la sentencia "rem", Ejemplo: <% Response.Write "Probando Comentarios..." 'Este es un comentario ñ_ñ
rem Este es otro comentario %>
Aqui terminamos con lo básico, ahora vamos por las Variables. III- Las Variables 1- Que son las variablesLas variables, son lo esencial para todos los lenguajes, sin ellas, todo seria un desorden. Nos sirven para almacenar datos, y luego usarlos para hacer algo. 2- Como definir VariablesAqui veremos como definir las variables, algo muy sencillo: <% Dim a, b a = "Hola" b = "Mundo" Response.Write "a & b" %>
Primero, Con Dim, le decimos que variables queremos definir, y luego las definimos mas abajo. Luego las escribimos. Importante: Hay dos formas de llamar a las variables; la primera es como esta puesto arriba, y la segunda es esta, que sirve para llamarla en otra parte: <% Dim nombre, apellido nombre = "El" apellido = "Hacker" %> Tu nombre es : <%=nombre%> Tu apellido es : <%=apellido%> IV- Objetos Integrados 1- ResponseEl objeto Response, es el mas utilizado, ya que se usa para poder decir algo en ASP, redireccionar, etc... 1.1- Metodo WriteCon este metodo, nosotros podemos decir algo en ASP. Como ya lo he dicho antes, ademas de poder decir algo con Response.Write, podemos decir una variable con <%=tuvariable%>. Ejemplo: <% Response.Write "Hola Mundo" %> Nos devolvería: Hola Mundo. 1.2- Metodo RedirectTal como su nombre lo dice, nos sirve para redireccionar a otra pagina desde la nuestra. Ejemplo: <% Response.Redirect "http://www.elextremo.cl" %> Eso los redireccionaria a mi web 1.3- Metodo CookieEste metodo nos sirve para establecer una cookie, Ejemplo: <% Response.Cookie("nombre") "Nicolas" Response.Cookie("edad") "115" %> Eso guardaria el nombre "nicolas" en el valor de "nombre" y la edad de 115 en el valor de edad. 2- RequireCon este objeto Requerimos algo, como una cookie o algo asi. 2.1- Metodo Form Con este metodo, podemos recibir variables desde un formulario, y despues escribrilas. Ejemplo Formulario.asp<form action="procesa.asp" method="post"> Dime tu nombre: <input type="text" name="nombre"><br><br> <input type="submit" value="Enviar"> Procesa.aspTu nombre es: <%=Request.Form ("nombre")%> 2.2- Metodo CookiesEste sirve para que cuando ya hayamos guardado la cookie con Response.Cookie, la agarremos y le digamos lo que dice. Ejemplo: <% nombre=Request.Cookie("nombre") Response.Write "Buenos Dias, " &nombre& "." %> 3- ApplicationSe utiliza para compartir informacion entre todos los users de una aplicación. Como en algunos casos varios pueden estar usando el objeto, se usan Lock y Unlock, para que solo uno pueda usarlo. 3.1- Metodo LockHace que solo un user pueda modificar el objeto Application por vez. 3.2- Metodo UnlockDesbloquea lo que previamente bloqueamos, para que otro user pueda hacer el mismo procedimiento que el otro. Ejemplo de como hacer un sencillo contador: <% Application.Lock Application("visitas") = Application("visitas")+1 Application.Unlock %> Luego ponemos esto: Eres mi visita numero <%=Application("visitas")%> V- Operadores LogicosLos operadores logicos nos sirven para restar, sumar, comparar, etc... las variables. 1- Operadores de Comparacion Para comparar dos variables. a < $b $a es menor que $b
$a > $b $a es mayor que $b
$a <= $b $a es menor o igual a $b
$a >= $b $a es mayor o igual a $b
$a = $b $a es igual a $b
$a <> $b $a es distinto a $b 2- Operadores de Asignacion Con estos operadores podemos restar, sumar, multiplicar,etc... las variables: $a + $b Le suma $a a $b
$a - $b Le resta $a a $b
$a * $b Multiplica $a por $b y el resultado va para $a
$a / $b Divide $a por $b y el resultado va para $a
$a % $b Divide, y luego da la resta de $a a $b
$a ^ $b Eleva $a a $b 3- Operadores Logicos $a AND $b Verdadero si los 2 son verdaderos
$a OR $b Verdadero si alguno de los 2 es verdadero
$a XOR $b Verdadero si solo uno es verdadero VI- Condicionales 1- If, elseEl mas usado de los Condicionales. Hace algo siesque una condicion es verdadera, y siesque es falso, hace otra cosa. Ejemplo: <% Dim a, b a = "4" b = "1" if a = b then Response.Write "La variable A es igual a B" else Response.Write "La variable A no es igual a B" EndIf %> Bueno, como pueden ver, primero ponemos la condicion "si a es igual a b, entonces escribir que A es igual a B", y si no escribir que A no es igual a B, Endif (Se acaba el If ). 2- If, ElseIf, Else Con este, es casi lo mismo que If, Else. Solo que podemos poner mas If's. Ejemplo: <% Dim a, b a = "5" b = "7" if a < b then Response.Write "La variable A es menor que B" elseif a > b then Response.Write "La variable A es mayor que B" else Response.Write "La variable A es igual a B" EndIf %> Bueno, esto es todo por hoy , luego ire agregando mas cosas. Espero que les sirva mucho! Salu2!
|
|
|
|
|
|
|