llamar función php desde caja de texto con onchange

Iniciado por Drakaris, 24 Junio 2017, 18:21 PM

0 Miembros y 1 Visitante están viendo este tema.

Drakaris

Hola, estoy continuando con mi proyecto y me he topado con un problemilla, todo va bien en mi formulario, en una parte de mi formulario tengo una caja de texto input tipo url que insertas una url y yo quisiera poner una función que cuando el cliente acabe de escribir la url en el input me diga si esa url es verdadero o falsa y si es falsa me bloquee la función "insertar5.php".

Para ello hice un input y puse en onchange lo siguente:

<?php
    $url 
$_POST['artarea'];
    function 
url_exists($url) {
        
$h get_headers($url);
        
$status = array();
        
preg_match('/HTTP\/.* ([0-9]+) .*/'$h[0] , $status);
        return (
$status[1] == 200);
    }
    echo 
url_exists($url)? 'existe' 'no existe';
?>

<input  type="url" name="artarea" id="artarea" style="opacity: 0.8; border: inset; border-radius: 10px; font-family: segoe script;" required placeholder="Escribe aqu&iacute; el enlace." onpaste="return paste;" oncut="return false;" oncopy="return false;" onchange="<?php echo validar_url(); ?>">


Llama a una función php mediante onchange según lo que he oído está mal el onchange="<?php echo validar_url(); ?>" creo. ¿Y si es así como lo puedo llamar a la función validar_url()?

Gracias
Lo increible, no es lo que ves, sino como es

3n31ch

#1
Ese tipo de cosas se hacen en javascript no en PHP, ya que lo que quieres es una funcionalidad por lado del cliente.

Por otra parte, si realmente prefieres usar esa función de PHP por el lado del cliente, entonces tendrás que enviar la URL por ajax al servidor y que este te responda true o false.




Esto que pusiste: onchange="<?php echo validar_url(); ?>" no tiene ningún sentido. (Ni para html, ni para javascript ni para php)

Ojo, tienes un problema para diferenciar la utilidad de cada herramienta. Te recomendaría repasar algunos conceptos antes de seguir.




Suerte .-