|
Esta sección te permite ver todos los posts escritos por este usuario. Ten en cuenta que sólo puedes ver los posts escritos en zonas a las que tienes acceso en este momento.
Mensajes - Kyrylys
51
« en: Martes 20 de Febrero de 2007, 23:52 »
gracias su - ahor te entiendo un poco mejor, gracias por aclararme lo de que seguia corriendo xd y también por el link, mañana lo miraré con más detenimiento ^^ suelo tratarlo con ya le pondre, de hecho sé que el código necesita un poco de "brillo" por ahora sólo es un testeo. El tema de la seguridad.. bueno lo trato desde otra página, más o menos la estructura es ésta: hay un login que comprueba que exista un user y un pass, en caso de que esté setteado lo desssetea, si va mal die, si no sigue hasta una página que tiene un menú, en una de esas casillas esta el link que va a un formulario de subir archivos ( que es el que tiene el input type="file") y esto que he dejado aquí es el gestor del formulario. en el formulario compruebo de nuevo que el user y el pass seteados estén en la bd más tarde aunmentaré más la seguridad comprobando que no hay dos sesiones simultáneas del mismo user, que si haces 3 intentos de meter un user/pass válido te banee durante un periodo de tiempo... Pero vámos que hoy por hoy me interesa esto, y lo demás poco a poco que bastante ambiciosos me salen los proyectos con el poco tiempo que llevo con php... XD muchas gracias otra vez, espero sacar un hueco mañana para probar y decir como va
52
« en: Martes 20 de Febrero de 2007, 09:58 »
gracias, pero aún no me he metido con perl de todas formas la conexión la hace sin ningún problema, el problema es que solo sube si el archivo está en el mismo directorio del gestor_ftp, si le dices que lo coja de otro directorio (escritorio, mis documentos, o la carpeta que sea) es cuando no lo sube y da el waaack!! No se supone que tienes que ir al directorio (cwd) antes de subier el fichero? cwd?? no entendí esa parte. y si, lo que quiero es pasarle el directorio en el que esté el archivo dentro de todo el pc -siento reiterarme-
53
« en: Lunes 19 de Febrero de 2007, 19:28 »
hola me gustaia que me echaseis un ojo a esto a ver si entre todos encontramos una solución. estoy haciendo la parte de subir archivos a un servidor en unix a través de php. el problema es que sólo me sube el archivo si está en el mismo directorio que la web. trabajo con wamp y el servidor tiene una version php 4.3.9 yo lo que quiero es que al pasarle un archivo mediante un input type="file" me deje subirlo desde cualquier directorio de pc, que para algo deja examinar  pero como digo solo me deja si esta en el mismo directorio. <?php require ("global.php"); echo("conectando a ftp.........$ftp_server $ftp_user $ftp_pass"); $conn_id = ftp_connect($ftp_server); // login with username and password $login_result = ftp_login($conn_id, $ftp_user, $ftp_pass); if(!$login_result) { echo("no conecta"); } else {echo("\n conecta!!!!!!!!<br>");} ftp_pasv($conn_id,TRUE); //root del server donde sta alojado $root=$HTTP_SERVER_VARS['DOCUMENT_ROOT']; $local_file=$_REQUEST["archivo"]; echo $local_file; $server_path=$root; if (ftp_put($conn_id,"html/".$local_file,$local_file,FTP_BINARY)) { echo ("Se ha subido el archivo".$local_file); } else { echo ("\nWWWWWaaaaaacccccCCCCCKKKKkkkk<br>".$server_path."<br>".$local_file); } // close the connection*/ ftp_close($conn_id); ?>
he probado con dirname y basename y basename me lo identifica bien, pero de dirname me devuelve . -un punto- alguna hipótesis? gracias
54
« en: Jueves 8 de Febrero de 2007, 19:46 »
hola, estoy haciendo lo mismo, acabe con el gestor ABM ^^, y ahora que he visto este post me he liado la manta a la cabeza y he dicho.. vamos a probarlo^^ La cosa es que me devuleve un fallo : ( voy por partes este es el codigo de gestor_ftp.php: <?php require ("global.php"); echo("conectando a ftp.........$ftp_server $ftp_user $ftp_pass"); $conn_id = ftp_connect($ftp_server); // login with username and password $login_result = ftp_login($conn_id, $ftp_user, $ftp_pass); if(!$login_result) { echo("no conecta"); } else {echo("\n conecta!!!!!!!!");} $root=$HTTP_SERVER_VARS['DOCUMENT_ROOT']; echo($root); $local_file=$_REQUEST["archivo_a_subir"]; $server_path=$root; //try to upload $local_file and save to $server_file if (ftp_put($conn_id, $server_path, $local_file, FTP_BINARY)) { echo ("Se ha subido el archivo"); } else { echo "\nWWWWWaaaaaacccccCCCCCKKKKkkkk\n"; echo $root; } // close the connection*/ ftp_close($conn_id); ?>
las variabes $ftp_server $ftp_user $ftp_pass se definen en global.php, $local_file lo coge de un formulario aprovechando el input type ="file" que es muy practico en estos casos ^^ Conectarse se conecta, y muestra la root. los archivos están subidos a un servidor, pero cada vez que intento subir algo me da un error que dice: Warning: ftp_put(): Could not create file. segido de toda la ruta del servidor hasta el archivo gestor_ftp.php y el numero de linea, en este caso es: la 26, lo que me indica if (ftp_put($conn_id, $server_path, $local_file, FTP_BINARY)) alguien sabe que esta fallando? desde ya muchas gracias, porque he mirado en http://es2.php.net/manual/es/function.ftp-put.php y lo que no entiendo es que dicen: $archivo = 'algun-archivo.txt'; $archivo_remoto = 'leame.txt'; pero en las definiciones de arriba pone: archivo_remoto: La ruta del archivo remoto. archivo_local: La ruta del archivo local. no se.. la ruta es la root no?
55
« en: Jueves 25 de Enero de 2007, 20:32 »
creo que lo que me fallaba era el seteo de la variabe if(isset($_GET["tablas"])) $tablas=$_GET["tablas"];
ahora lo he cambiado el diseño y consigo que lea mediante link la tabla que le paso. lo hace de forma automática. el siguiente paso es hacer un ABM (alta/baja/modificacion) para ello tengo tres botones -uno para cada accion- la cosa es que cuando pulse uno me lleve a la pagina del action y segun el tipo de accion qeu sea mediante switch y case haga insert, delete o update. cómo le digo qué accion tiene que realizar? he seteado accion de la misma forma que tablas, pero a diferencia de esta no logro que pase al otro lado. para que pase tengo esto echo("<form name=\"gestor\" method=\"POST\" action=\"gestor.php?tablas=".$_GET["tablas"].""); if (isset($accion)){ echo("&accion=".$accion.""); } echo("\">");
y en la parte final en los botones... <tr align=\"center\"> <td><input type=\"button\" name=\"Insertar\" value=\"Insertar\" id=\"Insertar\"onClick=\"submit();\"></td> <td><input type=\"button\" name=\"Modificar\" value=\"Modificar\" id=\"Modificar\" onClick=\"submit();\"></td> <td><input type=\"button\" name=\"Borrar\" value=\"Borrar\" id=\"Borrar\" onClick=\"submit();\"></td> </tr>
.. no se si deberia hacer un seteo o como decirle que coja el value.... con tablas lo coge automaticamente, y la verdad me desconcierta un poco el hecho de que php coja las cosas solo, estoy habituada a lenguajes en los que tienes que definir y setear cada variable, ademas el php puede llamar de forma diferente a las variables ($variable, $_GET["variable"], y $_REQUEST["variable"]) tal vez deberia mirarme mas la teoria...sorry, pero me entero mejor "chapuceando" con código -además es más divertido ^^- bueno si me pueden ayudar estupendo!!! si no por lo menos me ha servido para desahogarme un poco XDXDXDXDX Saludos!!
56
« en: Viernes 19 de Enero de 2007, 11:12 »
exactamente, eso es ^^
57
« en: Jueves 18 de Enero de 2007, 18:59 »
no, no me entiendes... lo que quiero hacer es que coja $tb_names[$i] que es el nombre de la tabla y cuando este seleccionado en el select del formulario que haga la query respecto al $tb_names[$i] que le acabas de pasar en vez de declarar "manualmente" $aplicacion='aplicaciones'; o $aplicacion='noticias'; En principio no va a ningun documento a no ser que luego le des a insertar que esa es otra historia, y si, luego se que le tengo que pasar la variable como has dicho con main.php?consulta=$_GET['tablas'], pero esque lo quiero hacer automatico y no se deja..  de todas formas gracias por contestar y por los enlaces -voy a mirarlos ahora-
58
« en: Jueves 18 de Enero de 2007, 15:10 »
Hola de nuevo. Hoy he estado buscando qué puede estar fallando, he mirado y no sé por que razon no pasa la variable, por lo que he redireccionado el formulario a si mismo a ver si asi hacia caso; pero nada. la logica y la experiencia dicen que es tal y como Altareum tan amablemente me ha indicado. pero solo me admite el paso de la variable si la he declarado por ejemplo si declaro: $consulta= 'aplicaciones';
y luego le paso la variable en $sql_string_aplicaciones="SELECT * FROM ".$consulta;
Lo reconoce, lo que no consigo es que "lea" el nombre de la tabla que saco con para que sea una "función" automatizada. muchas gracias por vuestra ayuda, la verdad esque no me habia metido nunca tan a fondo con php y msql juntos, en php tengo un poco mas de maña (pero poca aun ^^) estoy tratando de hacer un administrador general para un bd, que lea todo e inserte a medida que va creciendo la base de datos, vamos que me he metido en camisa de once varas XDXD, es muy duro pero reconforta un monton... lo malo es cuando me atasco... es la 1º vez que lo intento de forma general, pero esque sacar "manualmente" los datos que quieres mostrar me parece como hacer trampas XD, es como cuando empiezas a programar y aun no sabes declarar variables y te dicen que te enseñan a sumar con i=1; j=2; y luego i+j ... cuando lo interesante es que le pases los valores..
59
« en: Miércoles 17 de Enero de 2007, 16:44 »
gracias, eso estaba haciendo, pero me da un error en la consulta porque no llega a hacer la mysql_query....
60
« en: Miércoles 17 de Enero de 2007, 13:53 »
Hola he estado buscando cómo pasar una variable a una búsqueda en php y no he visto nada, podria establecer casos en php segun en parámetro de la tabla en la que hacer la selección, preo si se pudiese pasar la variable directamente a la búsqueda el código quedaría más limpio y además se haría automático, tal y como lo tengo configurado. lo que estoy haciendo es que muestre todas las tablas en un select dentro de un formulario, y segun la opcion escogida te muestre los campos de la tabla. <?php echo(" <div id=capainicio> <table cellspacing=\"0\" cellpadding=\"5\" border=\"0\"> <tr> <td>Elige la categoría que quieres ver:</td> <td> <select size=\"1\" name=\"tablas\" onChange=\"javascript:expandir_formulario()\">"); //Esta función devuelve los campos de la DB $result = mysql_listtables ($db); $i = 0; while ($i < mysql_num_rows ($result)) { $tb_names[$i] = mysql_tablename ($result, $i); //echo $tb_names[$i] . "<br>"; echo("<option value=\"".$i."\">".$tb_names[$i]."</option>"); $i++; } echo("</select></td></tr></table></div>");?> <?php //muestra los resultados del campo seleccionado?> <?php $sql_string_aplicaciones= "SELECT * FROM ¿¿¿COMO LE PASO LA VARIABLE???"; $sql_aplicaciones=@mysql_query($sql_string_aplicaciones,$conexion); if (!$sql_aplicaciones) echo ("error en consulta"); $nrows_aplicaciones=@mysql_num_rows($sql_aplicaciones); echo " <div id=capafinal> <table cellspacing=\"0\" cellpadding=\"5\" border=\"1\">"; for ($e=0;$e<$nrows_aplicaciones;$e++) { $row=@mysql_fetch_row($sql_aplicaciones); echo "<tr>"; echo "<td>".$row[0]."</td><td>".$row[1]."</td><td>".$row[2]."</td><td>".$row[3]."</td>"; echo "</tr>"; } echo "</table></div>"; ?>
perdonad si es una pregunta muy ingenua... y gracias por vuestro tiempo
61
« en: Lunes 8 de Enero de 2007, 17:43 »
bueno lo que hice fue con un eregui_replace que cambie javascript: por [java_script] es un buen método también no? ; )
gracias a tod@s
62
« en: Lunes 8 de Enero de 2007, 11:49 »
he encontrado una función muy interesante en php que me quita de un plumazo un montón de cosas: strip_tags(); sirve para eliminar código php y html de una cadena, lo cual si le pasas: strip_tags($_REQUEST["nombre"]); no tienes que hacer verificaciones extra en la variable nombre. además la verificación se hace en php, por lo cual es mas segura.
lo único que queda es borrar javascript: y creo que la seguridad ya sube muchos enteros ^^
63
« en: Sábado 6 de Enero de 2007, 02:51 »
si, muchas gracias... a ver si poco a poco me voy documentando y haciendo mas seguro el formulario ^^
64
« en: Viernes 5 de Enero de 2007, 23:09 »
puff pues no se.. he estado viendo varias paginas y no me acuerdo donde lo he visto
la cosa es que de momento compruebo que los campos esten rellenos y cosas como que el meil este correcto, pero me da cosa que puedan aprovechar el formulario para insertar xss y no se que bloquear aparte de <
65
« en: Viernes 5 de Enero de 2007, 23:08 »
<?php session_start(); $mensaje=''; $to="correo_al_que_va_el_formulario "; $subject="Consulta Web"; $mensaje=$mensaje."Nombre: ".$_REQUEST["nombre"]."\n"; $mensaje=$mensaje."Apellido: ".$_REQUEST["apellido"]."\n"; $mensaje=$mensaje."Empresa:".$_REQUEST["empresa"]."\n"; $mensaje=$mensaje."E-mail: ".$_REQUEST["email"]."\n"; $mensaje=$mensaje."\n".$_REQUEST["mensaje"]."\n"; $env=@mail($to,$subject,$mensaje,"From:".$_REQUEST["email"]); ?> <?php echo("<!---------------MAIN--------------------------->"); require("main_envio.php"); echo("<!-------------END MAIN----------------------------->"); echo("</html>"); ?>
esto es envio.php entero; es llamado desde <form method="post" action="envio.php" id="contacto" name="contacto">
del documento que tiene el form luego en main_envio le digo con un if (!env) que diga un lo siento y volver atras y si ha sido enviado pues que siga. Basicamente. Para probarlo debes colgarlo en algun servidor porque con apache nunca lo envia
66
« en: Viernes 5 de Enero de 2007, 18:37 »
yo lo que hago en vez de redireccionarlo con un header es pedirle un require, no se si también te puede valer
67
« en: Viernes 5 de Enero de 2007, 16:04 »
me sorprendio que recomendaran hacerlo alreves, de momento 1º verifico en js y luego recojo en php las variables y lo envia al corrreo.
la cuestion es que no se que bloquear.. vale con un indexof de < o hay algo mas? apenas he encontrado nada acerca del tema en la web : (
68
« en: Viernes 5 de Enero de 2007, 16:03 »
me sorprendio que recomendaran hacerlo alreves, de momento 1º verifico en js y luego recojo en php las variables y lo envia al corrreo.
la cuestion es que no se que bloquear.. vale con un indexof de < o hay algo mas? apenas he encontrado nada acerca del tema en la web : (
69
« en: Viernes 5 de Enero de 2007, 13:39 »
Hola, buenos días y feliz año ^^ Posteo este mensaje en html porque me parece que es mas global, os expongo mis preocupaciones: Estoy haciendo una web en la cual incluyo un formulario, despues verifico los campos con jscript y luego lo envio por php. El problema es que he estado leyendo que es mejor validar en php y luego en jscript para evitar los ataques de xss (es decir, el codigo malicioso que se puede poner en los formularios) El caso es que mis conocimientos de php aún no dan para verificar formularios  y no sé cómo podria evitar el codigo malicioso desde jscript... si me pudieseis hecha un cable os lo agradecería. Además ha sido poco lo que he encontrado del tema, he visto páginas hacerca de como apoderarse de las cookis, pero no he visto ninguna de cómo prevenirse de los ataques. Si alguien sabe un poco de este tema estaria genial un "informe"!!! Bueno muchas gracias.
70
« en: Sábado 23 de Diciembre de 2006, 01:14 »
yo uso wamp, el xamp lo vi un poco por encima...pero no me convenció mucho.
71
« en: Sábado 16 de Diciembre de 2006, 20:44 »
gracias probare de las dos formas que dices para ver como funcionan empiricamente.
72
« en: Viernes 15 de Diciembre de 2006, 15:25 »
Hola a todos, posteo esto aqui porque creo que es el Jscript el que falla, pero si es es el php muevelo por favor... Tengo un pequeño problema, es el que sigue. Estoy haciendo un formulario que envie los campos a una direccion de correo definida, mediante php. Lo que hago es verificar con un javascript que los campos no estén vacios, que el mail contenga la arroba (me queda quitar el codigo malicioso < y > entre otros...)... y que si todo está ok lo mande al correo. El problema es que si dejo algún campo vacio el js me informa mediante un alert -tal y como tiene qeu hacer- pero en vez de parar el proceso, manda el correo. Tengo 3 documentos: el formulario va en contacto.php <form method="post" action="envio.php" id="contacto" name="contacto"> <table width="258" height="290" align="center"> <tr> <td width="124">Nombre:</td> <td width="122"><input type="text" name="nombre" id="nombre" size="10" /></td> </tr> <tr> <td>Apellido:</td> <td><input type="text" name="apellido" id="apellido" size="10" /></td> </tr> <tr> <td>E-Mail:</td> <td><input type="text" name="email" id="email" size="10" /></td> </tr> <tr> <td colspan="2"><textarea name="mensaje" cols="30" rows="5" wrap="OFF"></textarea></td> </tr> <tr> <td colspan="2" align="center"><input type="submit" name="Submit" value="Enviar"onClick="javacript:check_form();"></td> </tr> </table> </form>
como veis es muy sencillo. el jscript que valida es este: function check_form() { var cont=0; var err='Para poder atenderle mejor nos es necesario que rellene los siguientes campos:\n\n\n'; if (contacto.nombre.value=='') {err=err+" Nombre\n";cont=1;} if (contacto.apellido.value=='') {err=err+" Apellido\n";cont=1;} if (contacto.email.value=='') {err=err+" Correo electrónico\n";cont=1;} //implementacion: mirar la arroba sólo si el campo mail ha sido rellenado if ((contacto.email.value!='')&&(contacto.email.value.indexOf("@")==-1)) {err=" su dirección de e-mail no es válida\n"; cont=1;} //fin verificacion @ if (contacto.mensaje.value=='') {err=err+" Mensaje\n"; cont=1;} err=err+"\n\n... disculpe las molestias."; if (cont==1) alert(err); else {contacto.submit();} }
como veis le digo que si hay un error saque un alert -cosa que hace- y si no (else) que envie el formulario. pero es como si ignorase el else. por ultimo el documento que procesa el envio del formulario via e-mail. <?php session_start(); $mensaje=''; $to="MAIL PERSONAL QUE NO SE VISUALIZA EN LA WEB Y A LA QUE LLEGA EL FORMULARIO"; $subject="Consulta Web"; $mensaje=$mensaje."Nombre: ".$_REQUEST["nombre"]."\n"; $mensaje=$mensaje."Apellido: ".$_REQUEST["apellido"]."\n"; $mensaje=$mensaje."E-mail: ".$_REQUEST["email"]."\n"; $mensaje=$mensaje."\n".$_REQUEST["mensaje"]."\n"; $env=@mail($to,$subject,$mensaje,"From:".$_REQUEST["email"]); ?> <html> <head> <title></title> <?php require("icono.php"); require("metatags.php"); require("estilo.php"); require("scripts.php"); ?> </head> <body marginwidth="0" leftmargin="0" marginheight="0" topmargin="0"> <?php echo("<!---------------MAIN--------------------------->"); require("top.php"); require("menu.php"); require("barras.php"); ?> <?php if (!$env) {echo(" <div style='position:absolute; left:250; top:400;'> <table> <tr height='19px'> <td><p align='center'>Lamentamos anunciar que su consulta no ha sido enviada</p></td> <!--td background='../IMG/buttons/ini.jpg' width='3' align='left'></td--> <td background='../IMG/buttons/med.jpg' width='70' align='center'><a href='main.php?link=contacto'><i>volver atras</i></a></td> <!--td background='../IMG/buttons/fin.jpg' width='3' align='right'></td--> </tr> </table> </div> "); } else{ echo(" <div style='position:absolute; left:250; top:400;'> <table aling='center'> <tr height='19px'> <td><p align='center'>En unos días recibirá respuesta a su consulta. Muchas gracias.</p></td> <td background='../IMG/buttons/ini.jpg' width='3' align='left'></td> <td background='../IMG/buttons/med.jpg' width='100' align='center'><a href='main.php?link=inicio'><i>Inicio</i></a></td> <td background='../IMG/buttons/fin.jpg' width='3' align='right'></td> </tr> </table> </div> "); } ?> <?php require("footer.php"); echo("<!-------------END MAIN----------------------------->"); require("disconnect.php"); ?> </body> </html>
Bueno gracias por adelantado por las molestias que os estoy causando  y gracias.
73
« en: Jueves 14 de Diciembre de 2006, 13:39 »
Bueno ya está arreglado. no es cosa de nada, más que de brujeria digital ^^ resulta que lo que le debía de estar interfiriendo es el comentario que puse antes de las declaraciones <!--------------------------- ESTILO.CSS -------------------------------------> <style> <!------------estilo de botones--------> A:link { text-decoration:none;(...)
si el que dice: estilo de botones. pues resulta que quitándolo funciona a la primera  tanto en ie como en firefox. está subido al servidor y funciona. ArKaNtOs muchas gracias por haberte tomado la molestia, de verdad.
74
« en: Jueves 14 de Diciembre de 2006, 12:58 »
si, el nombre de la carpeta es STYLES gracias probare a linkarlo directamente en el documento principal. la cosa es que toda la css me la coge sin problemas a excepcion de las declaraciones referentes a los links y no se porque...
75
« en: Jueves 14 de Diciembre de 2006, 11:29 »
ah, vale perdona no te entendí muy bien ^^ mira lo tengo asi: tengo un documento(estilo)en php que dice: <?php require("STYLES/estilo.css"); ?>
aqui llama a la Css. y ese documento es llamado a su vez dentro del main.php en la parte de llamo al estilo asi: <head> <title>Mi página</title> <?php require("icono.php"); require("metatags.php"); require("estilo.php"); require("scripts.php"); ?>
y dentro del body llamo a los distintos módulos <?php echo("<!---------------MAIN--------------------------->"); require("top.php"); require("menu.php"); =========< este es modulo del menu, donde se declara el ejemplo de ayer require("barras.php"); require("fondo.php"); //require("body.php"); require("footer.php"); echo("<!-------------END MAIN----------------------------->"); ?>
no creo que sea problema del linkado de la css porque otros modulos - pej: footer- lo recogen sin problemas. voy a reparar lo del hoover a ver si era eso. un saludo y muchas gracias ^^
|
|
|