Título: Problema con javascript: Document.write me tiene mania!!!!! Publicado por: z3nth10n en 4 Abril 2013, 17:33 pm Hola!!! Buenas a todos, pues hoy he estado haciendo pruebas (ya llevo días) xD
Y bueno, pues me he hartado, lo que quiero hacer es meter el value de un input por dentro de un codigo html con un document.write, y que se lleve el link del juego y que lo meta dentro de un textarea para que luego con un $_POST se meta en la base de datos, el problema es que no va XD Hay varios codes que son: El script principal que no va: Código
Me salta un "undefined" después de la selectbox, pero además no funciona, porque no coje el value de nombre, nombre aquí esta: Código: <b>Link del juego:</b> El textarea: Código: <textarea id="trat" style="width: 490px; height: 60px;"></textarea> El script del select que si va: Código
Y bueno, pues eso es todo, a ver quien me hecha una mano, un saludo! :) PD: Quien lo quiera probar que se meta aquí: http://ikillcraft.a0001.net/formulario.php Título: Re: Problema con javascript: Document.write me tiene mania!!!!! Publicado por: #!drvy en 4 Abril 2013, 20:41 pm A la hora de llamar la funcion hola(), el value de "nombre" esta vació, por eso te retorna "undefined".
Saludos Título: Re: Problema con javascript: Document.write me tiene mania!!!!! Publicado por: z3nth10n en 4 Abril 2013, 20:49 pm Okey, y como hago que lo detecte automaticamente, algo así que cuando lo pongas se vaya actualizando solo¿ No soy tan pro xD
Título: Re: Problema con javascript: Document.write me tiene mania!!!!! Publicado por: #!drvy en 4 Abril 2013, 21:03 pm Para empezar, olvídate de document.write.. es algo del siglo pasado. Usa innerHTML para escribir dentro de un div. Sobre cuando añadir la lista... puedes utilizar onblur para llamar a la funcion hola(). Asi, solo cuando el campo "nombre" pierda el foco, este se cambiara.. también puedes hacerlo a lo bestia y utilizar onkeypress.
Código
Código
PD: Te recomiendo organizar un poco el JS. Saludos Título: Re: Problema con javascript: Document.write me tiene mania!!!!! Publicado por: z3nth10n en 4 Abril 2013, 22:00 pm Bueno, ya lo he reorganizado y todo pero sigue sin funcionar el value de aquí:
Citar div.innerHTML = "<select name=\"ver\" onChange=\"OnDropDownChange(this);\"><option selected=\"selected\">Selecciona el lenguaje</option><option>-----</option><option></option><option value=\"<script type='text/javascript' src='http://webplayer.unity3d.com/download_webplayer-3.x/3.0/uo/UnityObject.js'><\/script><script type='text/javascript'><!-- function GetUnity() { if (typeof unityObject != 'undefined') { return unityObject.getObjectById('unityPlayer'); } return null; } if (typeof unityObject != 'undefined') { var params = { backgroundcolor: '000000', bordercolor: '000000', textcolor: 'FFFFFF', disableContextMenu: true }; unityObject.embedUnity('unityPlayer', '" + value + "', document.documentElement.clientWidth, document.documentElement.clientHeight, params); } //--> --> <\/script> <div id='unityPlayer' style='width: 100%; height: 100%; visibility: visible;'><embed type='application/vnd.unity' style='display: block; width: 100%; height: 100%;' width='100%' height='100%' tabindex='0' backgroundcolor='000000' bordercolor='000000' textcolor='FFFFFF' disablecontextmenu='true' firstframecallback='unityObject.firstFrameCallback();' src='" + value + "'></div>\">Flash</option><option value=\"\">Java</option><option value=\"\">Unity3D</option><option value=\"\">iFrame</option></select>"; :-\ :-\ He utilizado un body onload="hola()" eso afecta en algo? :huh: Título: Re: Problema con javascript: Document.write me tiene mania!!!!! Publicado por: #!drvy en 4 Abril 2013, 22:07 pm onload es al cargar y sigues con el mismo problema :silbar:
Saludos Título: Re: Problema con javascript: Document.write me tiene mania!!!!! Publicado por: z3nth10n en 5 Abril 2013, 15:03 pm Vamos a ver ya cambie el nombre, y quite el onload del body, pero entonces no carga xDDD
Y si pongo el onload tampoco va, pero si carga. :-\ Título: Re: Problema con javascript: Document.write me tiene mania!!!!! Publicado por: #!drvy en 5 Abril 2013, 15:14 pm A ver, has probado poniendo TODO tal y como te lo he puesto en el otro post ? Porque yo si.. y funciona perfectamente...
Saludos Título: Re: Problema con javascript: Document.write me tiene mania!!!!! Publicado por: z3nth10n en 5 Abril 2013, 15:16 pm A que soy gilipollas y en mi casa aún no lo saben, joder tio estoy apollardao xD
Estoy intentado poner el input que no es, le estaba poniendo el id de nombre, y era el de linkjuego xD Gracias por la ayuda, coño tantos inputs y mierdas ya lian xD Ayer me paso lo mismo... Soy un poco retarded a veces sorry xD ---- Que piensas sinceramente sobre estos despistes, opina por favor, necesito que me den una ostia como una catedral xD Título: Re: Problema con javascript: Document.write me tiene mania!!!!! Publicado por: #!drvy en 5 Abril 2013, 15:39 pm Jajjaa na a mi me pasa constantemente... sobre todo cuando tengo que recoger información de quinientosmiltrescientoscincuenta inputs xD
Saludos Título: Re: Problema con javascript: Document.write me tiene mania!!!!! Publicado por: z3nth10n en 5 Abril 2013, 15:49 pm Una cosa, tengo que escapar unas cosillas, pero no van :-[
Citar <option value=\"<object type=\"application/x-shockwave-flash\" data=\"" + value + "\" width=\"550\" height=\"400\"><param name=\"movie\" value=\"" + value + "\" /><param name=\"quality\" value=\"high\" /><\/object>\">Flash</option><option value=\"<APPLET CODE=\"" + value + "\" WIDTH=\"ancho\" HEIGHT=\"alto\"></APPLET>\">Java</option> Pero nada, que no se como, he probado con \ y separando el / del > así: / > pero nada. :( Título: Re: Problema con javascript: Document.write me tiene mania!!!!! Publicado por: #!drvy en 5 Abril 2013, 16:44 pm Supongo que todo eso lo vas a guardar en una base de datos verdad ? Puesto que lo único que necesitas de ahí, es el value, ¿ no seria mas logico que guardaras solo el value y luego ya añadir el applet ?
Osease, guardas solo el value, y luego cuando lo vayas a imprimir, imprimes todo eso y le agregas value. Créeme, te va a hacer la vida mas fácil y te vas a evitar muchos problemas de seguridad. Saludos Título: Re: Problema con javascript: Document.write me tiene mania!!!!! Publicado por: z3nth10n en 5 Abril 2013, 16:56 pm Pero, a ver, lo voy a meter todo como una variable... Así que no ser como añado esa variable, como?
A ver explica xD Es que no entiendo muy bien... :P Título: Re: Problema con javascript: Document.write me tiene mania!!!!! Publicado por: #!drvy en 5 Abril 2013, 17:44 pm A ver.. esto es complicado de explicar xD Te voy a mostrar un ejemplo que creo que te servirá mejor.
A ver, te lo planteo asi. Porque necesitas escribir guardar 3 veces el link del juego (en el input, en el select y en el textarea) cuando con 1 sola ya te vale ?. Miralo asi, tu haces que el select solo tenga el tipo de juego y luego en con PHP te encargas del resto. Te explico. Imaginate que tienes este SIMPLE formulario: Código
Bien, cuando el usuario lo rellene y lo envía, tu guardas los valores en la BD y luego cuando te toque comprobarlos, con PHP, puedes comprobar cual es el valor que ha guardado el select y a partir de ahí sacar el resto del código. Por ejemplo: Código
De esta forma no te hace falta ningun javascript y yo creo que esta mucho mejor optimizado y mas seguro... Saludos Título: Re: Problema con javascript: Document.write me tiene mania!!!!! Publicado por: z3nth10n en 5 Abril 2013, 18:00 pm Ostia, es mucho mejor xD
Vamos a optimizar más cosas, quiero hacer una cosa así: (http://i.imgur.com/gtTeXjQ.png) Tengo un código super denso que es: Código: <b>Controles:</b><br> Código
Y luego: Código
Cómoo tu entenderas es una bestialidad, tengo como 25 filas en la base de datos... He estado buscando metodos para juntar todos los campos, pero nada... Hice un mini-codigo para clonar campos, pero lo he perdido xD Ahora la pregunta es como haría para meter por ejemplo si tengo 20 inputs con diferentes values (que serían las teclas y las acciones de respectivas teclas), meterlos todos dentro de una columna y luegos separarlos con tablas... No tengo npi... :-\ Un saludo. Título: Re: Problema con javascript: Document.write me tiene mania!!!!! Publicado por: #!drvy en 5 Abril 2013, 19:26 pm Para empezar, el formulario lo podrias tener asi:
Código
Ahora bien 2 cosas: 1. Si tienes muchos campos con el mismo nombre, puedes usar [] (tecla[]) para que HTML les asigne automáticamente el numero. Asi no tienes que escribir tecla1, tecla2 etc.. PHP lo reconocerá como un array. 2. Solo puede haber UN elemento con EL MISMO ID. No puedes tener 2 elementos con el mismo ID. Bien, pasamos a PHP. La función tecla2() se podría optimizar pero debes cambiar los nombres de las imágenes... si no jodido. Ejemplo: Código
El poder de regex es total :P. El caso es que las imágenes se deberán llamar flechas.png, enter.png, der.png, izq.png etc..etc.. Bien, en vez de hacer: Código
Haremos esto: Código
Y ahora llega la magia. ¿ Como hacer que un array entero de teclas y acciones se guarde en la base de datos en una sola columna ? La magia esta en serialize() http://php.net/manual/es/function.serialize.php .. básicamente te permite guardar arrays y objetos y luego recuperarlos como si nada. Código
CONSEJO: Asegúrate de que los campos teclas y acciones de la tabla juegos sean de tipo TEXT, MEDIUMTEXT o LONGTEXT. La razon es que la cadena del serialize es mas larga cuantos mas campos añades. Bien, ahora que ya lo tienes todo bien guardadito en la base de datos, te toca sacarlo de ahí y mostrarlo Código
(http://i.elhacker.net/i?i=Mm9efzQ5fonmfUTwbKLFP2Vo) (http://i.elhacker.net/d?i=Mm9efzQ5fonmfUTwbKLFP2Vo) Consejos: 1. Busca tutoriales sobre REGEX, te va a ayudar mucho. 2. Utiliza MYSQLI (http://php.net/manual/en/book.mysqli.php) en vez e MYSQL. Esta ultima esta marcada como obsoleta y sera eliminada. 3. Este codigo NO ES SEGURO. Te lo he dejado como muestra.. deberas aplicar los correspondientes filtros antes de guardarlo en la bd. Saludos espero que te sirva. Título: Re: Problema con javascript: Document.write me tiene mania!!!!! Publicado por: z3nth10n en 5 Abril 2013, 19:50 pm LOLOLOLOLOLOLOLOLOLOLOLOLOLOLOLOLOLOLOLOLOLOLOLOLOLOL y LOL!
Tremendo, eres tremendo, joder macho, tu eres bueno eh? Voy a ver los codigos y ahora te comento es que estoy haciendo vídeos. xD --- Y que cambios tengo que hacer? xDDDDD No entiendo, nunca entendi eso de las filtraciones e inyecciones mysql, que sesupone que algún gracioso puede ver poner un script que borre toda la body con una cookie? Que vaaa! Si solo yo tengo acceso al formulario, bueno lo voy a restringir xD Ya le he estado hechando un vistazo a tu code, y bueno lo primero que tiene algunos bugs en lo de clonar nodos, he hice mi propia funcón que por cierto ya encontré: Código
Código: <b>Controles:</b><br> Luego, he estado viendo lo de la bd y mira lo que pasa: (http://i.imgur.com/eFtmqKc.png) Yo creo que lo alinea verticalmente el serialize en vez de meterlo horizontalmente XD Es un fail XD No he tocado nada de nada. Solo he hecho los cambios que tu dijistes. :-\ Título: Re: Problema con javascript: Document.write me tiene mania!!!!! Publicado por: #!drvy en 5 Abril 2013, 21:42 pm Citar creo que lo alinea verticalmente el serialize en vez de meterlo horizontalmente Eh ? A que te refieres ? Yo no veo ningún fallo ahí -.- PD: Citar tiene algunos bugs en lo de clonar nodos Si te fijas, no clona nodos. Reescribe el html agregando otra columna mas =) Saludos Título: Re: Problema con javascript: Document.write me tiene mania!!!!! Publicado por: z3nth10n en 5 Abril 2013, 21:49 pm Eh ? A que te refieres ? Yo no veo ningún fallo ahí -.- Pues a mi me carga el este verticalmente, no me lo researializa bien... :silbar: Sobre lo del PD: es más util si vás añadiendo xD PD: Si quieres echarle una ojeada: http://pastebin.com/f80EM1wn (http://pastebin.com/f80EM1wn) - Formulario.php http://pastebin.com/xUU3DdnD (http://pastebin.com/xUU3DdnD) - Envia.php PD: Como soy tan retarded le he cambiado los nombres xDD Título: Re: Problema con javascript: Document.write me tiene mania!!!!! Publicado por: #!drvy en 5 Abril 2013, 21:51 pm xD Sigues sin explicarte. No los carga verticalmente. Los carga según el orden en el que fueron introducidos. Y serialize y unserialize no tienen nada que ver con eso o.O
Citar Sobre lo del PD: es más util si vás añadiendo xD Ya te dije que era un ejemplo xD Saludos Título: Re: Problema con javascript: Document.write me tiene mania!!!!! Publicado por: z3nth10n en 5 Abril 2013, 21:56 pm A ver ya te mande los links del php para que les heches un ojo, pero yo creo que están bien...
Me explico: Cuando voy a la base de datos, solo coje un valor yel valor que coje, lo pone verticalmente por cada letra en un <tr> y <td>. Es super raro. xD Título: Re: Problema con javascript: Document.write me tiene mania!!!!! Publicado por: #!drvy en 5 Abril 2013, 22:00 pm Eso es lo que tiene que hacer :rolleyes: Si miras bien, cuando te mostre la funcion tecla2() en un comentario he puesto:
Citar // Si es una letra o numero de 1 caracter de logitud, se le añadira <div class="tecla"> Es como esta diseñada para funcionar la funcion :silbar: y no tiene nada que ver con serialize... mas abajo en donde imprimo la tabla lo puedes cambiar... PD: Solo por curiosidad.. estas estudiando el codigo o haces copy/paste ? Saludos Título: Re: Problema con javascript: Document.write me tiene mania!!!!! Publicado por: z3nth10n en 5 Abril 2013, 22:10 pm A ver, ahora mismo estoy viendo los bugs mas visibles, ya después me lo aprenderé xD
Pero si estamos hablando de la accion no de la tecla, no tiene que hacer eso xDDD Además no que le pasa a la tecla que a veces me sale desconocida XDDDDD Lo puedes probar en: http://ikillcraft.a0001.net/formulario.php Un saludo. xD Título: Re: Problema con javascript: Document.write me tiene mania!!!!! Publicado por: #!drvy en 5 Abril 2013, 22:15 pm Te saldra "desconocida" Si la letra es de mas de 1 carácter, no es una de las teclas (espacio|alt etc..) o no es una letra/numero de A-Z o 0-9 (las letras con acentos no son reconocidas pero las puedes agregar).
La función de la acción (reem()) no tengo ni pt idea de lo que hace porque no lo has puesto y no se como funciona asi que ahi no te puedo ayudar. Si has visto la imagen que he dejado en el post veras que funciona bien =) Saludos Título: Re: Problema con javascript: Document.write me tiene mania!!!!! Publicado por: z3nth10n en 5 Abril 2013, 22:20 pm Entonces, porque a mi las acciones se me muestran así?...
Reem lo que hace es esto: Código
xD Un saludo. Ya se porque me sale desconocida, porque como soy gilipollas integral y no leo nada, pensaba que la tecla del espacio era space XD Un saludo. Sisisisisisisi!!! Yo mando cojones xD Se te olvido poner un $acciones[], no se si lo hicites a posta, pero bueno xD Estos detalles nunca se me escapan xD Título: Re: Problema con javascript: Document.write me tiene mania!!!!! Publicado por: #!drvy en 5 Abril 2013, 22:44 pm ja, fallo tonto. Se me olvido agregarle los [] en esta linea
Código
Así debería funcionar =). Saludos Título: Re: Problema con javascript: Document.write me tiene mania!!!!! Publicado por: z3nth10n en 5 Abril 2013, 22:50 pm LOL! Me di cuenta antes de ver tu mensaje, te lo juro XDDDDD mira el edit
Bueno, pues, xD Te puedo preguntar más dudas que tengo? http://www.taringa.net/posts/hazlo-tu-mismo/10701668/Sistema-de-comentarios-con-mysql.html Eso es global para una id, o funciona con todas? Es decir, que si me meto a id?=1 me van a salir los mismos si me meto id?=2, o me van a salir, los de la id 2? Tengo otra duda, quiero por ejemplo poder poner: 1 - 9 para indicar que ahi otros items, o por ejemplo poder poner flechas enter, que funcione como dos y que no salga desconocido :P He estado leyendo esto: http://weblogtoolscollection.com/regex/regex.php Pero ni idea xD Voy a probar una cosa, pero es que no se ni como separarlo... He probado esto: ,'/^([[0-9] - [0-9]]{1})$/i', pero nada XD Necesito ayuda de la buena XD Citar function tecla2($cadena) { Ya lo he editado un poco y parece que funciona, pero no termina de cuadrar xD// Si es una letra o numero de 1 caracter de logitud, se le añadira <div class="tecla"> // Pero si coincide con las palabras flechas,enter etc... se le añadira <img src="" /> $buscarRegex = array('/^([A-ZñÑ0-9]{1})$/i','/^(flechas|enter|control|alt|espacio|der|izq|mover|shift|letras)$/i','/^([0-9]{1} - [0-9]{2})$/i'); $reemplazo = array('<div class="tecla">$1</div>','<img src="ico/$1.png" alt="tecla-$1" />', '<div class="tecla">$1</div> - <div class="tecla">$2</div>'); $mag = preg_replace($buscarRegex, $reemplazo, $cadena,-1,$contador); // Si las sustituciones son menores a 1, significa que no se ha encontrado el patrón. if($contador <= 6){return $mag;}else{return 'desconocida';} } Título: Re: Problema con javascript: Document.write me tiene mania!!!!! Publicado por: z3nth10n en 6 Abril 2013, 20:39 pm Bump, oye monkey ayudame con el code del regex plz ;)
Título: Re: Problema con javascript: Document.write me tiene mania!!!!! Publicado por: z3nth10n en 29 Abril 2013, 16:11 pm Bueno, pues como ya te he contado he estado con un problema del SSI de SMF, pero me harté y ahora estoy con el code que me distes al principio, pero se me han olvidado un montón de cosas...
Código
Igualmente, necesito ayuda con el Regex... Tengo este codigo pero no se pone bien: Código
Un saludo. Título: Re: Problema con javascript: Document.write me tiene mania!!!!! Publicado por: #!drvy en 29 Abril 2013, 23:50 pm Pero di lo que falla... con "no se pone bien" que quieres decir ? xD
Saludos Título: Re: Problema con javascript: Document.write me tiene mania!!!!! Publicado por: z3nth10n en 30 Abril 2013, 07:41 am Pues que si tu pones 1 - 2
sale <span class="tecla">1</span> - <span class="tecla">2</span> Pero los demas campos se desvarían, pruebalo en http://ikillcraft.a0001.net/formulario.php y http://ikillcraft.a0001.net/game.php?id=x Si es que va MySQL que desde ayer PHPMyAdmin tiene un bucle de redireccionamiento. :silbar: Título: Re: Problema con javascript: Document.write me tiene mania!!!!! Publicado por: z3nth10n en 7 Mayo 2013, 23:00 pm Hola? Dryv me puedes ayudar con el code de Regex?
Mira lo que me sale: Citar Notice: unserialize() [function.unserialize]: Error at offset 82 of 102 bytes in /home/vol12/eshost.es/eshos_12426320/ikillcraft.a0001.net/htdocs/game.php on line 72 Un saludo. ;) El codigo del juego lo he arreglado, simplemente estaba llamando a una fila que no exisitia. :P |