Foros del Web » Programando para Internet » Javascript » Frameworks JS »

Problema Ajax y MySQL

Estas en el tema de Problema Ajax y MySQL en el foro de Frameworks JS en Foros del Web. Buenas, me he puesto a hacer un trabajillo probando ajax y tengo problemas desde el principio, tengo este codigo de XAJAX: Código PHP: <? //incluímos la clase ajax ...
  #1 (permalink)  
Antiguo 11/05/2009, 08:25
Avatar de BlogInn  
Fecha de Ingreso: febrero-2009
Mensajes: 79
Antigüedad: 15 años, 9 meses
Puntos: 3
Problema Ajax y MySQL

Buenas, me he puesto a hacer un trabajillo probando ajax y tengo problemas desde el principio, tengo este codigo de XAJAX:

Código PHP:
<?
//incluímos la clase ajax
require ('xajax_core/xajax.inc.php');

//instanciamos el objeto de la clase xajax
$xajax = new xajax();
$xajax->setCharEncoding('ISO-8859-1');
//$xajax->decodeUTF8InputOn();

function cargarVideo($titulo){
//creo el xajaxResponse para generar una salida
$respuesta = new xajaxResponse('ISO-8859-1');


$bd_host "localhost";
$bd_usuario "root";
$bd_password "******";
$bd_base "videos";

$con mysql_connect($bd_host$bd_usuario$bd_password);

mysql_select_db($bd_base$con);

$sql=mysql_query("SELECT video FROM videos WHERE titulo = $titulo");


$respuesta->addAssign("reproductor","innerHTML",$sql);
return 
$respuesta;
}

//registramos la función creada anteriormente al objeto xajax
$xajax->registerFunction("cargarVideo");

//El objeto xajax tiene que procesar cualquier petición
$xajax->processRequest();
?>
y despues tengo esto:

Código HTML:
<div class="lista" align="left">
<form id="form1" name="form1" method="post" action="">
 
  <label> <strong>ELIGE TU VIDEO</strong>
  <select name="titulo" size="20" onchange="xajax_CargarVideo(titulo)"> 
Código PHP:
<?php

  
include('conex.php');
    
$link=Conectarse();
$consulta 'SELECT * FROM `videos`';
$result=mysql_query($consulta,$link); 
while (
$row=mysql_fetch_array($result))
{echo 
'<option>'.$row["titulo"].'</option>';};
?>
Código HTML:
 </select>
  </label>
 
</form>
</div>
<div id="reproductor">
</div> 
En principio creo que no tenia ningún error, pero no se, soy muy novato en este tema. Lo que tendria que hacer (bueno o lo que yo quisiera que haga xDDD) es que cuando cambie el valor del select me envie el titulo de un video a la función CargarVideo y que esta función conecte con la base de datos, busque el codigo del reproductor asociado a ese titulo y lo escriba en el div que se llama reproductor.

Pero vamos, que no me va :(

¿Alguien me ayuda?

Saludos
__________________
www.Blog-Inn.es --- Tecno & Trendy
1905 - GIJONUDOS Y ORGULLOSOS - 2009
  #2 (permalink)  
Antiguo 11/05/2009, 10:01
Avatar de omar1977  
Fecha de Ingreso: abril-2006
Mensajes: 178
Antigüedad: 18 años, 7 meses
Puntos: 4
Respuesta: Problema Ajax y MySQL

hola como estas, veo algunos errores en tu codigo, te cuento

1° Esas iniciando $xajax->setCharEncoding('ISO-8859-1');, por lo que no es necesario hacerlo nuevamente el la funcion elimina esto : $respuesta = new xajaxResponse('ISO-8859-1'); y deja solo $respuesta = new xajaxResponse();.
otra cosa debes decirle a xajax donde y como configurar la URI para la impresion javascript por ejemplo: $xajax->configure('javascript URI', 'js/xajax/'); esto debe ir antes de $xajax->processRequest();


2° En la parte HTML, para que el select te funcione, por costumbre siempre debes tener el value de los options te doy un elemplo de como se puede hacer
Código HTML:
<select id="selector" nombre="selector" onchange="xajax_CargarVideo(this.value)">
    <option value=1>Pelicula 1</option>
    <option value=2>Pelicula 2</option>
    <option value=3>Pelicula 3</option>
</select> 
de esa forma envias el numero de la pelicula y te complicas menos al enviar texto. (para esto la funcion CargarVideo debe hacer la busqueda por numero y no por nombre).

intenta con esto y me avisas si te funciona, si tienes mas dudas solo pregunta.
__________________
no hay nadie que sea tan inutil, por ultimo sirve como mal ejemplo
  #3 (permalink)  
Antiguo 12/05/2009, 00:18
Avatar de BlogInn  
Fecha de Ingreso: febrero-2009
Mensajes: 79
Antigüedad: 15 años, 9 meses
Puntos: 3
Respuesta: Problema Ajax y MySQL

omar1977 gracias por responder, he hecho esas dos cosas pero nada, no me muestra ningún video, me ha quedado de esta manera (solo pongo el ajax y la función php que carga el select)

Código ajax:
Ver original
  1. <?
  2. //incluímos la clase ajax
  3. require ('xajax_core/xajax.inc.php');
  4.  
  5. //instanciamos el objeto de la clase xajax
  6. $xajax = new xajax();
  7. $xajax->setCharEncoding('ISO-8859-1');
  8. //$xajax->decodeUTF8InputOn();
  9.  
  10. function cargarVideo($value){
  11. //creo el xajaxResponse para generar una salida
  12. $respuesta = new xajaxResponse();
  13.  
  14.  
  15. $bd_host = "localhost";
  16. $bd_usuario = "root";
  17. $bd_password = "sporting";
  18. $bd_base = "sporting";
  19.  
  20. $con = mysql_connect($bd_host, $bd_usuario, $bd_password);
  21.  
  22. mysql_select_db($bd_base, $con);
  23.  
  24. $sql=mysql_query("SELECT video FROM videos WHERE id = $value");
  25.  
  26.  
  27. $respuesta->addAssign("reproductor","innerHTML",$sql);
  28. return $respuesta;
  29. }
  30.  
  31. //registramos la función creada anteriormente al objeto xajax
  32. $xajax->registerFunction("cargarVideo");
  33.  
  34. //El objeto xajax tiene que procesar cualquier petición
  35. $xajax->processRequest();
  36. ?>

Código php:
Ver original
  1. <?php
  2.  
  3.   include('conex.php');
  4.     $link=Conectarse();
  5. $consulta = 'SELECT * FROM `videos`';
  6. $result=mysql_query($consulta,$link);
  7. $id = 1;
  8. while ($row=mysql_fetch_array($result))
  9. {
  10.     echo '<option value='.$id.'>'.$row["titulo"].'</option>';
  11.     $id = $id+1;
  12. };
  13. ?>

Tienes alguna idea de lo que puede ser???

Saludos y gracias de antemano
__________________
www.Blog-Inn.es --- Tecno & Trendy
1905 - GIJONUDOS Y ORGULLOSOS - 2009
  #4 (permalink)  
Antiguo 14/05/2009, 04:02
Avatar de BlogInn  
Fecha de Ingreso: febrero-2009
Mensajes: 79
Antigüedad: 15 años, 9 meses
Puntos: 3
Respuesta: Problema Ajax y MySQL

Nadie puede ayudarme?? :(
__________________
www.Blog-Inn.es --- Tecno & Trendy
1905 - GIJONUDOS Y ORGULLOSOS - 2009
  #5 (permalink)  
Antiguo 14/05/2009, 07:34
 
Fecha de Ingreso: julio-2008
Ubicación: Alcañiz-Teruel-España
Mensajes: 182
Antigüedad: 16 años, 4 meses
Puntos: 5
Respuesta: Problema Ajax y MySQL

Buenas BlogInn,

Primero de todo decirte que no he utilizado el FW xajax nunca, no sabría decirte que puede estar pasando si es que el fallo esta en esa parte.
Lo que si veo es que en el value de las option del select colocas un contador que se va auto incrementado, pero luego lo utilizas en el SELECT de MySQL con si fuera la primary key de tu tabla. Mucha coincidencia tendría que ser para que esta consulta te retornara registros. Creo que deberías construir el select de la siguiente forma.

Código php:
Ver original
  1. <?php
  2.  
  3.   include('conex.php');
  4.     $link=Conectarse();
  5. $consulta = 'SELECT id,titulo FROM `videos`'; //Siendo id la primary key de la tabla videos
  6. $result=mysql_query($consulta,$link);
  7. $id = 1;
  8. while ($row=mysql_fetch_array($result))
  9. {
  10.     echo '<option value='.$row["id"]'>'.$row["titulo"].'</option>';
  11.     $id = $id+1;
  12. };
  13. ?>

No se, puedo equivocarme, pero siendo que usas xajax es lo único que puedo ver ya que como he dicho antes nunca he trabajado con él.

Sólo decirte que yo siempre que programo con Ajax lo hago sin FW y es lo único que domino algo. Si quieres probar ha hacerlo directamente sin uso de librerias de apoyo dímelo y encantado intentaré ayudarte

Saludos
__________________
Si quieres puedes y si puedes debes. Imposible is nothing!!!
  #6 (permalink)  
Antiguo 15/05/2009, 00:00
Avatar de BlogInn  
Fecha de Ingreso: febrero-2009
Mensajes: 79
Antigüedad: 15 años, 9 meses
Puntos: 3
Respuesta: Problema Ajax y MySQL

matak muchas gracias por tu respuesta, ya he cambiado el $id la verdad que queda mucho mejor asi, mas limpio :)

A mi no me importa hacerlo en Ajax y apartar el XAjax, yo lo unico que quiero es poder terminarlo, que para lo poco que me queda....jajajaj asi que toda ayuda será bien recibida :)

Un saludo
__________________
www.Blog-Inn.es --- Tecno & Trendy
1905 - GIJONUDOS Y ORGULLOSOS - 2009
  #7 (permalink)  
Antiguo 15/05/2009, 02:16
 
Fecha de Ingreso: julio-2008
Ubicación: Alcañiz-Teruel-España
Mensajes: 182
Antigüedad: 16 años, 4 meses
Puntos: 5
Respuesta: Problema Ajax y MySQL

Buenas BlogInn,

Me alegra ayudarte.

Entonces en que estado esta tu programa. Segun he entendido lo que quieres programar es un selector de vídeos. Cuando pinchas en el option del select seleccionas el vídeo que deseas ver, éste se debería cargar en un div contenedor para ya poder dar al play y visualizarlo.

¿Es asi o voy confundido?.

Si es asi ¿como vas ha hacer para cargar/reproducir el video en tu web?.

Lo digo porque si requiere javascript la forma de cargarlo/reproducirlo hay un conflicto ya que el código javascript que retorna una petición ajax no es interpretado por el navegador.

Aunque hay alguna forma para hacer que lo interprete es un tanto engorroso y dependiendo de la complegidad del código javascript puede dar algu fallo.

Informa bien de todo y buscamos soluciones

Saludos.
__________________
Si quieres puedes y si puedes debes. Imposible is nothing!!!
  #8 (permalink)  
Antiguo 15/05/2009, 02:54
Avatar de BlogInn  
Fecha de Ingreso: febrero-2009
Mensajes: 79
Antigüedad: 15 años, 9 meses
Puntos: 3
Respuesta: Problema Ajax y MySQL

Lo primero gracias por contestar matak.

Exactamente es lo que dices, quiero que en cuanto se cambie el valor del select (cuando elijo el video que quiero ver) se me cargue el video en un div llamado reproductor.

En la base de datos tengo 4 campos: ID,TITULO,ENLACE y REPRODUCTOR (Codigo fuente del reproductor embebido de youtube), por lo que cuando elija el video en el select cogeré la ID y se haria una consulta a la base de datos para ver que reproductor concuerda con esa ID y lo colocaria en el div correspondiente.

Saludos
__________________
www.Blog-Inn.es --- Tecno & Trendy
1905 - GIJONUDOS Y ORGULLOSOS - 2009
  #9 (permalink)  
Antiguo 15/05/2009, 04:12
 
Fecha de Ingreso: julio-2008
Ubicación: Alcañiz-Teruel-España
Mensajes: 182
Antigüedad: 16 años, 4 meses
Puntos: 5
Respuesta: Problema Ajax y MySQL

Por lo que entiendo el campo REPRODUCTOR contiene el codigo HTML necesario para reproducir el video tipo a...
Ejemplo de YouTube

Código html:
Ver original
  1. <object width="425" height="344">
  2. <param name="movie" value="http://www.youtube.com/v/JUVehl6mf-c&hl=es&fs=1">
  3. <param name="allowFullScreen" value="true"></param>
  4. <param name="allowscriptaccess" value="always"></param>
  5. <embed src="http://www.youtube.com/v/JUVehl6mf-c&hl=es&fs=1" type="application/x-shockwave-flash" allowscriptaccess="always" allowfullscreen="true" width="425" height="344"></embed>

Si es asi ¿Y el campo enlace? a que se refiere???

Ya diras, saludos
__________________
Si quieres puedes y si puedes debes. Imposible is nothing!!!
  #10 (permalink)  
Antiguo 15/05/2009, 04:23
Avatar de BlogInn  
Fecha de Ingreso: febrero-2009
Mensajes: 79
Antigüedad: 15 años, 9 meses
Puntos: 3
Respuesta: Problema Ajax y MySQL

El campo enlace guarda el enlace al video ya que en el formulario que hay en otra parte de la web para añadir videos a la base de datos los usuarios insertan titulo y dirección web del video y en mi consulta a la base de datos ya inserto el codigo del reproductor embebido.

Lo del reproductor embebido lo pensé despues y por eso el atributo enlace no tiene mucho sentido, lo dejo ahí por si en algun momento lo pudiese necesitar, pero con ID,TITULO y REPRODUCTOR serviira

Si, el campo reproductor guarda ese codigo que tu has puesto
__________________
www.Blog-Inn.es --- Tecno & Trendy
1905 - GIJONUDOS Y ORGULLOSOS - 2009
  #11 (permalink)  
Antiguo 15/05/2009, 10:09
 
Fecha de Ingreso: julio-2008
Ubicación: Alcañiz-Teruel-España
Mensajes: 182
Antigüedad: 16 años, 4 meses
Puntos: 5
Respuesta: Problema Ajax y MySQL

Buenas BlogInn,

Te he preparado un pequeño ejemplo a ver si es lo que buscas...Si me das tu correo electrónico te lo envío asi tienes los fuentes y no tienes que montarlo. De todas formas lo voy a explicar asi si le sirve a alguién más pues mucho mejor.

me he creado una base de datos de prueba

prueba.sql -->.sql file generado con Navicat 8

Código mysql:
Ver original
  1. /*
  2. MySQL Data Transfer
  3. Source Host: xxx.xxx.xxx.xxx
  4. Source Database: prueba
  5. Target Host: xxx.xxx.xxx.xxx
  6. Target Database: prueba
  7. Date: 15/05/2009 17:26:14
  8. */
  9.  
  10. SET FOREIGN_KEY_CHECKS=0;
  11. -- ----------------------------
  12. -- Table structure for videos
  13. -- ----------------------------
  14. DROP TABLE IF EXISTS `videos`;
  15. CREATE TABLE `videos` (
  16.   `titulo` varchar(255) collate latin1_spanish_ci default NULL,
  17.   `reproductor` text collate latin1_spanish_ci,
  18.   PRIMARY KEY  (`id`)
  19. ) ENGINE=InnoDB AUTO_INCREMENT=4 DEFAULT CHARSET=latin1 COLLATE=latin1_spanish_ci;
  20.  
  21. -- ----------------------------
  22. -- Records
  23. -- ----------------------------
  24. INSERT INTO `videos` VALUES ('1', 'Jota de Pepe Cester', '<object width=\"425\" height=\"344\"><param name=\"movie\" value=\"http://www.youtube.com/v/JUVehl6mf-c&hl=es&fs=1\"></param><param name=\"allowFullScreen\" value=\"true\"></param><param name=\"allowscriptaccess\" value=\"always\"></param><embed src=\"http://www.youtube.com/v/JUVehl6mf-c&hl=es&fs=1\" type=\"application/x-shockwave-flash\" allowscriptaccess=\"always\" allowfullscreen=\"true\" width=\"425\" height=\"344\"></embed></object>');
  25. INSERT INTO `videos` VALUES ('2', 'Aguilas', '<object width=\"425\" height=\"344\"><param name=\"movie\" value=\"http://www.youtube.com/v/wRS53F8nGsg&hl=es&fs=1\"></param><param name=\"allowFullScreen\" value=\"true\"></param><param name=\"allowscriptaccess\" value=\"always\"></param><embed src=\"http://www.youtube.com/v/wRS53F8nGsg&hl=es&fs=1\" type=\"application/x-shockwave-flash\" allowscriptaccess=\"always\" allowfullscreen=\"true\" width=\"425\" height=\"344\"></embed></object>');
  26. INSERT INTO `videos` VALUES ('3', 'Jotas de Jorge Sanchez\r\n', '<object width=\"425\" height=\"344\"><param name=\"movie\" value=\"http://www.youtube.com/v/12ZgKrRn8dU&hl=es&fs=1\"></param><param name=\"allowFullScreen\" value=\"true\"></param><param name=\"allowscriptaccess\" value=\"always\"></param><embed src=\"http://www.youtube.com/v/12ZgKrRn8dU&hl=es&fs=1\" type=\"application/x-shockwave-flash\" allowscriptaccess=\"always\" allowfullscreen=\"true\" width=\"425\" height=\"344\"></embed></object>');

primero de todo me creo la función que generará el objeto ajax

Código javascript:
Ver original
  1. //Funcion que crea el objeto ajax
  2. function objetoAjax(){
  3.     var xmlhttp=false;
  4.     try {
  5.         xmlhttp = new ActiveXObject("Msxml2.XMLHTTP");
  6.     } catch (e) {
  7.         try {
  8.            xmlhttp = new ActiveXObject("Microsoft.XMLHTTP");
  9.         } catch (E) {
  10.             xmlhttp = false;
  11.     }
  12.     }
  13.  
  14.     if (!xmlhttp && typeof XMLHttpRequest!='undefined') {
  15.         xmlhttp = new XMLHttpRequest();
  16.     }
  17.     return xmlhttp;
  18. }

Ahora implementamos la función que enviará la petición asincrona al servidor, nota que 'ajax' la creamos como vble global inicializada a null. De esta forma podemos controlar su estado para poder realizar peticiones simultaneas. En este caso no creo que se te de el caso, pero para futuros proyectos si reutilizas este código te permitirá hacer multiple procesos ajax sin que se machaquen unos a otros

Código javascript:
Ver original
  1. var ajax=null; //vble global
  2.  
  3. function peticion(url,divcontenido){
  4.     if (ajax==null) {
  5.       objDestino=document.getElementById(divcontenido)
  6.       ajax=objetoAjax();
  7.       ajax.open("POST", url, true);
  8.       ajax.onreadystatechange=function() {
  9.           if (ajax.readyState==4) {
  10.               objDestino.innerHTML = ajax.responseText
  11.               ajax = null
  12.           }else{
  13.             objDestino.innerHTML = '<img src="wait.gif" /><font style="font-family:Verdana;font-weight:bold;font-size-16pt;">Cargando Video...</font>'
  14.           }
  15.       }
  16.       ajax.send(null)
  17.     }else{
  18.       setTimeout("f1('"+url+"','"+divcontenido+"')",10)      
  19.     }
  20. }

Fíjate que en la función mientras la petición no esta en el estado 4 coloco una imagen en el contenido

Código javascript:
Ver original
  1. if (ajax.readyState==4) {
  2.     objDestino.innerHTML = ajax.responseText
  3.     ajax = null
  4. }else{
  5.     objDestino.innerHTML = '<img src="wait.gif" /><font style="font-family:Verdana;font-weight:bold;font-size-16pt;">Cargando Video...</font>'
  6. }

esto es puramente estetico y simplemente avisa al cliente de que se esta cargando el video. En mi caso wait.gif es un aspa que da vueltas coon un texto que dice 'Cargando video...'

Seguimos pues construyendo el select para seleccionar los vídeos y creamos un objeto contenedor, que en este caso es in <div> donde se cargarán los videos.

Código html:
Ver original
  1. <select id="videos" name="videos" onchange="if (this.value=='X') document.getElementById('reproductor').innerHTML=''; else peticion('cargarvideo.php?id='+this.value,'reproductor');">
  2. <option value='X'>&nbsp;&nbsp;[Seleccione un Vídeo...]&nbsp;&nbsp;</option>
  3. <?PHP
  4. $sql = 'SELECT * FROM `videos`';
  5. $consulta=mysql_query($sql,$db) or die ();
  6. while ($row=mysql_fetch_array($consulta))
  7. {
  8.    echo '<option value='.$row["id"].'>'.$row["titulo"].'</option>';
  9. }
  10. ?>
  11. <div id="reproductor">
  12. </div>

Solo faltaría el archivo php que procesará el servidor en la petición

cargarvideo.php
Código php:
Ver original
  1. <?PHP
  2. header('Content-Type: text/xml; charset=ISO-8859-1'); //Para visualizar correctamente caracterés especiales
  3.  
  4.   $db = mysql_connect($host,$usser,$pass) or die ("No se puede conectar con el servidor");
  5.  
  6.   mysql_select_db('prueba') or die ("No se puede seleccionar la base de datos");
  7.  
  8.   $sql = "SELECT * FROM videos WHERE id='".$_REQUEST['id']."'";
  9.  
  10.   $consulta=mysql_query($sql,$db) or die (mysql_error($db));
  11.  
  12.   $row=mysql_fetch_array($consulta);
  13.  
  14.   echo $row['reproductor'];
  15. ?>

todo junto quedaría

index.php
Código html:
Ver original
  1. <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
  2. "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
  3. <html xmlns="http://www.w3.org/1999/xhtml" lang="en" xml:lang="en">
  4.  
  5. <meta http-equiv="Content-Language" content="es">
  6. <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1" />
  7. <SCRIPT LANGUAGE="JavaScript">
  8.  
  9. var ajax=null; //vble global
  10.  
  11. //Funcion que crea el objeto ajax
  12. function objetoAjax(){
  13.     var xmlhttp=false;
  14.     try {
  15.         xmlhttp = new ActiveXObject("Msxml2.XMLHTTP");
  16.     } catch (e) {
  17.         try {
  18.            xmlhttp = new ActiveXObject("Microsoft.XMLHTTP");
  19.         } catch (E) {
  20.             xmlhttp = false;
  21.     }
  22.     }
  23.  
  24.     if (!xmlhttp && typeof XMLHttpRequest!='undefined') {
  25.        xmlhttp = new XMLHttpRequest();
  26.     }
  27.     return xmlhttp;
  28. }
  29.  
  30. function peticion(url,divcontenido){
  31.     if (ajax==null) {
  32.       objDestino=document.getElementById(divcontenido)
  33.       ajax=objetoAjax();
  34.       ajax.open("POST", url, true);
  35.       ajax.onreadystatechange=function() {
  36.           if (ajax.readyState==4) {
  37.               objDestino.innerHTML = ajax.responseText
  38.               ajax = null
  39.           }else{
  40.             objDestino.innerHTML = '<img src="wait.gif" /><font style="font-family:Verdana;font-weight:bold;font-size-16pt;">Cargando Video...</font>'
  41.           }
  42.       }
  43.       ajax.send(null)
  44.     }else{
  45.       setTimeout("f1('"+url+"','"+divcontenido+"')",10)      
  46.     }
  47. }
  48. <?PHP
  49.  
  50. $db = mysql_connect($host,$usser,$pass) or die ("No se puede conectar con el servidor");
  51.  
  52. mysql_select_db('prueba') or die ("No se puede seleccionar la base de datos");
  53. ?>
  54. </head>
  55. <select id="videos" name="videos" onchange="if (this.value=='X') document.getElementById('reproductor').innerHTML=''; else peticion('cargarvideo.php?id='+this.value,'reproductor');">
  56. <option value='X'>&nbsp;&nbsp;[Seleccione un Vídeo...]&nbsp;&nbsp;</option>
  57. <?PHP
  58. $sql = 'SELECT * FROM `videos`';
  59. $consulta=mysql_query($sql,$db) or die ();
  60. while ($row=mysql_fetch_array($consulta))
  61. {
  62.    echo '<option value='.$row["id"].'>'.$row["titulo"].'</option>';
  63. }
  64. ?>
  65. <div id="reproductor">
  66. </div>
  67. </body>
  68. </html>

cargarvideo.php
Código php:
Ver original
  1. <?PHP
  2. header('Content-Type: text/xml; charset=ISO-8859-1'); //Para visualizar correctamente caracterés especiales
  3.  
  4.   $db = mysql_connect($host,$usser,$pass) or die ("No se puede conectar con el servidor");
  5.  
  6.   mysql_select_db('prueba') or die ("No se puede seleccionar la base de datos");
  7.  
  8.   $sql = "SELECT * FROM videos WHERE id='".$_REQUEST['id']."'";
  9.  
  10.   $consulta=mysql_query($sql,$db) or die ();
  11.  
  12.   $row=mysql_fetch_array($consulta);
  13.  
  14.   echo $row['reproductor'];
  15. ?>

Lo dicho, si quieres que te envie los fuentes y demás dime tu e-mail

Ya me dirás si te funciona. yo le he probado y me ha funcionado

Saludos
__________________
Si quieres puedes y si puedes debes. Imposible is nothing!!!
  #12 (permalink)  
Antiguo 16/05/2009, 04:56
Avatar de BlogInn  
Fecha de Ingreso: febrero-2009
Mensajes: 79
Antigüedad: 15 años, 9 meses
Puntos: 3
Respuesta: Problema Ajax y MySQL

He probado con lo que me has dicho y todo va bien menos que no me aparece el video de youtube, en cuanto selecciono un video abajo aparece CONECTANDO CON WWW.YOUTUBE.COM pero no me lo carga, y si hago click con el boton derecho en el div donde deberia aparecer el video me sale el menu de una pelicula en flash, es decir, del reproductor, diciendo que no se ha podido cargar, sin embargo el video esta en youtube porque lo puedo ver!! Te mando un privado con la dirección de la web para que veas lo que pasa.

Un saludo y muchisimas gracias por las molestias tomadas!!!
__________________
www.Blog-Inn.es --- Tecno & Trendy
1905 - GIJONUDOS Y ORGULLOSOS - 2009
  #13 (permalink)  
Antiguo 18/05/2009, 02:15
 
Fecha de Ingreso: julio-2008
Ubicación: Alcañiz-Teruel-España
Mensajes: 182
Antigüedad: 16 años, 4 meses
Puntos: 5
Respuesta: Problema Ajax y MySQL

A ver el probrema está en que el código que tienes en tu base de datos esta erróneno

Al extraer el reproductor recoges de la BD esto

Código html:
Ver original
  1. <object width="425" height="344"><param name="movie" value="http://www.youtube.com/watch?v=RBKt8sG255Q"><param name="allowFullScreen" value="true"><param name="allowscriptaccess" value="always"><embed src="http://www.youtube.com/watch?v=RBKt8sG255Q" type="application/x-shockwave-flash" allowscriptaccess="always" allowfullscreen="true" width="425" height="344"></object>

pero realmente con que te debería reconger es esto otro

Código html:
Ver original
  1. <object width="425" height="344"><param name="movie" value="http://www.youtube.com/v/RBKt8sG255Q&hl=es&fs=1"></param><param name="allowFullScreen" value="true"></param><param name="allowscriptaccess" value="always"></param><embed src="http://www.youtube.com/v/RBKt8sG255Q&hl=es&fs=1" type="application/x-shockwave-flash" allowscriptaccess="always" allowfullscreen="true" width="425" height="344"></embed></object>

Supongo a partir del enlace (URL) has montado el <objet>. No es que este mal pero si te fijas varía un poco:

URL del video:
http://www.youtube.com/watch?v=RBKt8sG255Q

Dirección física del vídeo ¿Supongo?:
http://www.youtube.com/v/RBKt8sG255Q&hl=es&fs=1
**O por lo menos la que necesita <param> y <embed>

Si te fijas en youtube cuando estas viendo un vídeo a la derecha aparece un campo URL y un campo INSETAR. En este campo INSERTAR aparece todo el código necesario para poner embebido el vídeo en tu web. Es este el código que deben copiar en el formulario de inserción de vídeos que tienes.

Con el firebug he echo un innerHTML con el código correcto y aparece el vídeo correctamente.

Saludos
__________________
Si quieres puedes y si puedes debes. Imposible is nothing!!!
  #14 (permalink)  
Antiguo 18/05/2009, 03:09
Avatar de BlogInn  
Fecha de Ingreso: febrero-2009
Mensajes: 79
Antigüedad: 15 años, 9 meses
Puntos: 3
Respuesta: Problema Ajax y MySQL

Muchisimas gracias matak, al final he corregido el error que me has dicho y otro mas que tenia y ya funciona todo perfecto, muchisimas gracias de nuevo, sin ti no lo hubiera podido terminar :)

Un saludo!!!
__________________
www.Blog-Inn.es --- Tecno & Trendy
1905 - GIJONUDOS Y ORGULLOSOS - 2009
  #15 (permalink)  
Antiguo 18/05/2009, 07:17
 
Fecha de Ingreso: julio-2008
Ubicación: Alcañiz-Teruel-España
Mensajes: 182
Antigüedad: 16 años, 4 meses
Puntos: 5
Respuesta: Problema Ajax y MySQL

Nada hombre, pa eso estamos...

Que vaya todo bien,...Saludos
__________________
Si quieres puedes y si puedes debes. Imposible is nothing!!!
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 08:43.