elhacker.net cabecera Bienvenido(a), Visitante. Por favor Ingresar o Registrarse
¿Perdiste tu email de activación?.

 

 


Tema destacado: Estamos en la red social de Mastodon


  Mostrar Mensajes
Páginas: 1 2 3 4 5 6 7 8 9 10 11 12 13 [14] 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 ... 75
131  Programación / PHP / Re: Cambiar de directorio en: 29 Mayo 2016, 20:14 pm
Perfecto, ya puedes marcar la pregunta como resuelta  ::)
132  Programación / Desarrollo Web / Re: no ejecuta script en: 29 Mayo 2016, 19:25 pm
Para que tus scripts se ejecuten tienen que estar dentro de un document ready.

Código
  1. <script type="text/javascript">
  2.    $(function () {
  3.        alert('Estoy funcionando');
  4.        var map;
  5.        var marker;
  6.        // más código aquí dentro
  7.    });
133  Programación / PHP / Re: Cambiar de directorio en: 29 Mayo 2016, 03:05 am
Pues necesitas una url a la que volver, /test no está por gusto  ;D

Me explico mejor: /test seria el document root, cuando estas en /test?move=\mi carpeta entonces entonces dirname($netPath); es \ y cuando $dirname == $slash, $backDir = '' y el href es "".

¿Que ocurre cuando un link tiene un href vacio? Que hace una petición a la misma página. Por eso tienes que poner tu archivo (que es el document root) en el href.

Si tu archivo es pru.php entonces href="/pru.php" y ese es el document root:

Cuando te encuentres en web.com/pru.php?move=\mi carpeta, el boton "Go back" será href="/pru.php" y podrás ir atras.

Lo que no entiendo es lo que has hecho para que te saliera: <a href> asi sin más xD a eso le falta ="". Eso quiere decir que cambiaste algo más...  :rolleyes:
134  Programación / Desarrollo Web / Re: scrollIntoview en: 29 Mayo 2016, 02:46 am
Mi código hace lo mismo que ese, pero con la diferencia de que está optimizado para que sea más ligero.

Llegados a este punto no entiendo para nada que es lo que me quieres decir, no sé que es lo que no funciona o lo que intentas hacer más allá de un simple chat en tiempo real, que deberías tener funcionando con lo que ya tienes.

Explicate mejor si puede ser, y cuando te salga un error, copialo y pegalo exactamente como te ha aparecido.

Por segunda vez, me vuelvo a repetir:

- No es necesario que uses más de un document ready, puedes poner todos tus scripts dentro del mismo (como hice en el código optimizado que te pase ayer y que no estás usando a pesar de que funciona).

- Sigo viendo el mismo script de ayer en tu web, pon el que te pasé yo que funciona perfectamente.

El único problema que veo ahora mismo, es que estás usando un elemento <button> cuando no es necesario, en tu otra pregunta (la del ajax, donde te di este código) ya te dije que usaras un elemento <a>.

No entiendo porque complicar las cosas, si no vas a usar http submit porque usar un <button> y tener que estar evitando el submit cuando simplemente usas otro elemento, que vas a tener que darle estilo igualmente?

Ademas hacer las cosas bien cuesta muy poco, como por ejemplo usar html5 correctamente y declarar el tipo de contenido y la codificación.

A parte, html5 no soporta background en body, y de paso los estilos, todos, es mejor tenerlos en el archivo css:

Código
  1. <!DOCTYPE html>
  2.  
  3.    <head>
  4.  
  5.        <meta http-equiv="Content-Type" content="Text/HTML" charset="UTF-8" />
  6.        <meta name="keywords" content="google" />
  7.        <meta name="viewport" content="width=device-width, initial-scale=1.0" />
  8.  
  9.        <title>My WebPage</title>
  10.  
  11.        <meta name="author" content="" href="" />
  12.        <meta name="copyright" content="&copy; mypage <?php echo date("Y") ?>" />
  13.  
  14.        <link rel="shortcut icon" href="favicon.ico" />
  15.        <link rel="stylesheet" type="text/css" href="inicio.css" />
  16.        <link rel="stylesheet" type="text/css" href="chat.css" />
  17.  
  18.        <script type="text/javascript" src="https://ajax.googleapis.com/ajax/libs/jquery/1.12.2/jquery.min.js"></script>
  19.        <script type="text/javascript" src="ajax.js"></script>
  20.        <script type="text/javascript" src="enviar.js"></script>
  21.  
  22.    </head>
  23.  
  24.    <body>
  25.  
  26.        <header>
  27.  
  28.            <ul>
  29.                <li><a class="active" href="inicio.php">Inicio</a></li>
  30.                <li><a href="paginaad.php">Administracion</a></li>
  31.                <li><a href="comentarios.php">Reporta</a></li>
  32.  
  33.                <ul>
  34.                    <li><a href="#about">Sobre mi</a></li>
  35.                    <li><a href="salir.php">Logout</a></li>
  36.                </ul>
  37.            </ul>
  38.  
  39.        </header>
  40.  
  41.        <main>
  42.  
  43.            <div id="contenedor"><span id="final"></span></div>
  44.  
  45.            <input type="text" id="mensaje" name="mensaje" />
  46.  
  47.            <a id="boton" href="#">Enviar</a>
  48.  
  49.        </main>
  50.  
  51.        <footer>
  52.  
  53.        </footer>
  54.  
  55.    </body>
  56.  
  57. </html>

Código
  1. /* inicio.css */
  2. body {
  3.    background-image: url(fondos/fondo-inicio.jpg);
  4. }
  5.  
  6. ul ul {
  7.    float:right;
  8.    list-style-type:none;
  9. }
  10.  
  11. /* chat.css */
  12.  
  13. #contenedor {
  14.  width: 500px;
  15.  height: 200px;
  16.  border: 1px solid black;
  17.  overflow: scroll;
  18. }
  19.  
  20. p {
  21.  color: #320EF8;
  22.  font-size: 120%;
  23.  margin: 20px 15px;
  24. }
  25.  
  26. #final {
  27.  width: 100%;
  28.  height: 1%;
  29. }

Código
  1. <?php
  2.  
  3.  
  4. require('connect_db2.php');
  5.  
  6. $op = (int) $_GET['op'];
  7.  
  8. if ($op === 1) {
  9.    $nombre  = $_SESSION['usuario'];
  10.    $mensaje = $_POST['mensaje'];
  11.  
  12.    mysqli_query($link, "INSERT INTO chat (nombre, mensaje) VALUES('$nombre', '$mensaje')");
  13.    mysqli_close($link);
  14.  
  15. } else if ($op === 2) {
  16.  
  17.    header('Content-Type: Text/HTML; Charset=UTF-8');
  18.  
  19.    $color = '#320EF8';    
  20.    $result = mysqli_query($link, 'SELECT * FROM chat');
  21.  
  22.    while ($fila = mysqli_fetch_array($result)) {
  23.  
  24.        if ( NULL !== $resultados ) {
  25.  
  26.            echo '<p>', $resultados['nombre'], ': </p>', $resultados['mensaje'], '<br />';
  27.  
  28.        }
  29.  
  30.    }
  31.  
  32.    mysqli_free_result($result);
  33.    mysqli_close($link);
  34. }
  35.  
  36. ?>

Código
  1. $(function () {
  2.  
  3.    function myFunction() {
  4.  
  5.        var mensaje = $('#mensaje').val(),
  6.            ajax    = $.post('mensaje.php?op=1', { mensaje: mensaje } );
  7.  
  8.        ajax.done(function() {
  9.            var content = $.get('mensaje.php?op=2');
  10.            $('#final').before( content );
  11.            $('#mensaje').val('');
  12.            $('#contenedor').animate({scrollTop: $( $( '#final' ) ).offset().top}, 1000);
  13.        });
  14.  
  15.    }
  16.  
  17.    $('#boton').on('click', myFunction);
  18.  
  19.    $('#mensaje').keydown(function (e) {
  20.        if (e.which === 13) {
  21.            myFunction();
  22.        }
  23.    });
  24.  
  25. });

De todas maneras esto está muy mal implementado y ya te lo dijo AlbertoBSD. Encuentra una manera más eficiente de hacer esto. Tienes ideas en tu otro post http://foro.elhacker.net/php/ajax_recibir_daros-t452816.10.html, cualquier duda preguntala ahí.

Problemas sobre el scroll aquí. Hay un pequeño problema y es que cuando hay un scroll grande el scrollTop empieza a fallar. Esto está fuera de mi conocimiento, espera a ver si alguien se pasa y arregla este pequeño inconveniente. Sin embargo, los primeros mensajes hacen bien el scroll, esto depende de la altura del div, cuanto más height tenga más tardará el scroll del div en llenarse (por lo tanto más tardará en fallar).

Aquí hay un demo para trabajar facilmente: https://jsfiddle.net/3a8rrvej/

Edito: En el html, muevo el código del menu ul dentro de header (que es donde debería estar).
135  Programación / PHP / Re: Cambiar de directorio en: 28 Mayo 2016, 23:55 pm
Eso no tiene sentido, E:\ y / son lo mismo, ambos son root. \ y / son simplemente separadores, no directorios en si.

Lo que pasa es que el directorio base (o root) en Linux es siempre el mismo, pero en Windows depende de la partición en la que estás (esta será el directorio base). No sé si me explico.

Windows -> A:\, B:\, C:\, etc...

Linux -> /

El document root (o base) de apache es el directorio en el que puedes trabajar: Solo puedes leer y escribir dentro de el (desde la web, ya sea html o php), por eso realpath da error si te sales de el (salierte en este caso quiere decir subir un directorio, puedes bajar todo lo que quieras).

En tu caso sería -> E:\Programas\Xampp\htdocs
En mi caso sería -> /home/admin

Estás usando el viejo script. Haz una prueba y copia mi ultimo script tal cual y comprueba si te da error. Ya que es compatible con windows y linux y no debería de ocurrirte eso, ya que amí no me ocurre.
136  Programación / Desarrollo Web / Re: no ejecuta script en: 28 Mayo 2016, 23:30 pm
Se te olvidó añadir un document ready, o su equivalente si estás usando jquery:

Código
  1. $(function () {
  2.    // code here
  3. });
137  Programación / Desarrollo Web / Re: scrollIntoview en: 28 Mayo 2016, 05:27 am
Eso de que al darle al boton da error 500 es muy raro, debes tener un problema o bien en tu hosting o en algún lado en tu página.

Si le das al botón y a intro entonces se enviará dos veces... Es tu código, yo solo lo organicé un poco.

Y eso de cannot read property 'top' of undefined también es muy raro. ¿Pusiste la versión JQuery que te pasé, o estás usando una versión vieja?

He entrado en tu página y he visto que no actualizaste el código que te pasé. Ponlo a ver que pasa.

He visto que ninguna de las peticiones get que hace tiene respuesta, están vacias, tanto las que se hacen en cargar.php, como las que se hacen del chat. No hay ninguna respuesta y no se vé nada en el chat. Mira a ver que has hecho en el archivo mensaje.php y porqué no hace el select ni muestra los datos.
138  Programación / Desarrollo Web / Re: scrollIntoview en: 28 Mayo 2016, 00:32 am
El código no se ejecuta por sí solo, a si que el "timed out" es por otra cosa. Tal vez el hosting se haya caido (a veces pasa).
139  Programación / Desarrollo Web / Re: scrollIntoview en: 28 Mayo 2016, 00:06 am
Esto debería funcionar. Por cierto, no necesitas usar varias veces el document ready ( $(function () {}); es el equivalente ).

Código
  1. $(function () {
  2.  
  3.    function myFunction() {
  4.  
  5.        var mensaje = $('#mensaje').val(),
  6.            ajax    = $.post('mensaje.php?op=1', { mensaje: mensaje } );
  7.  
  8.        ajax.done(function() {
  9.            var content = $.get('mensaje.php?op=2');
  10.            $('#contenedor').empty().append( content );
  11.            $('#mensaje').val('');
  12.            $('div').animate({scrollTop: $( $( '#final' ) ).offset().top}, 1000);
  13.        });
  14.  
  15.    }
  16.  
  17.    $('#boton').on('click', myFunction());
  18.  
  19.    $('#mensaje').keydown(function (event) {
  20.        if (event.which==13 || event.keycode==13) {
  21.            myFunction();
  22.        }
  23.    });
  24.  
  25. });
140  Programación / Desarrollo Web / Re: scrollIntoview en: 27 Mayo 2016, 23:42 pm
Si que funciona: mira que es lo que estás haciendo mal: https://jsfiddle.net/x030ud26/
Páginas: 1 2 3 4 5 6 7 8 9 10 11 12 13 [14] 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 ... 75
WAP2 - Aviso Legal - Powered by SMF 1.1.21 | SMF © 2006-2008, Simple Machines