¿Cómo hacer funcionar este script php?

sarco Seguir

Curioso
¡Usuario con pocos negocios! ¡Utiliza siempre saldo de Forobeta!
Desde
20 Jul 2014
Mensajes
6
Hola amigos estoy bregando desde hace ratos con este codigo no e podido lograr lo solicitado
tengo el siguiente codigo el cual me arroja los resultados de de un sistema de busqueda de archivos mp3
aqui dejo demo Descargar musica MP3 y Escuchar musica Online GRATIS -
para mejor entendimiento

lo que quiero es que al darle clic a reproducir lo reproduzca en un div que contenga la etiqueta <audio>

como ver el script arroja todos los resultados cada uno con el botón de reproducir el problema que al darle clic en reproducir a una cancion por ejemplo funciona bien pero a la hora de querer escuchar otra la anterior no se pausa :( pero no quiero que funcione asi
no se si me explico

PHP:
<?php
$query = 'http://api.soundcloud.com/tracks.json?client_id='.$scid.'&q='.$sq.'&limit='.$results;
$response = file_get_contents($query);
$data = json_decode($response, true);
 


if (!empty($data)) {
  echo '
  <!-- Hay un total de '.count($data).' canciones. -->';
    foreach($data as $sound){if(!empty($sound['stream_url'])){echo '
        <div class="song">
<strong> '.$sound['title'].'</strong>
<a class="right button button-green button-icon-compartir" id="shareButton_1" href="javascript:;" title="Compartir '.$sound['title'].'">Compartir</a>
<a class="right button button-pink button-icon-descargar" rel="nofollow" href="download.php?n='.$sound['title'].'&t='.$sound['stream_url'].'?client_id='.$scid.'" title="Descargar '.$sound['title'].'">Descargar</a>
<a class="right button button-blue button-icon-reproducir" href="javascript:;"    title="Escuchar '.$sound['title'].'">Reproducir</a>
  
<div class="clear">&nbsp;</div>
<div class="reproducir" id="boxPlayer_1" >
 
<div id="embedPlayer_1" class="embedPlayer" style="height: 115p<; background: #000;">
<embed id="player"  controls src="'.$sound['stream_url'].'?client_id='.$scid.'" width="300" height="60" ></embed>

</div>
 
</div>
</div>';

 

}
    }
  } else {
    echo 'Hubo un drama, no podemos continuar. '.$data['error'];
    exit;
  }


les agradecería su ayuda amigos muchas gracias por tomarse la molestia de pasarse por mi tema
 

Adjuntos

  • busq-sc.txt
    1,6 KB · Visitas: 24
Última edición:

hugo1

Beta
¡Usuario con pocos negocios! ¡Utiliza siempre saldo de Forobeta!
Desde
28 Dic 2012
Mensajes
90
PHP:
$songs = json_decode(file_get_contents('http://api.soundcloud.com/tracks.json?client_id=5f2b5fc97dfa8f9993ad6bec9c6bbeb8&q=kase+o+libertad&limit=13'), true);

foreach($songs as $song)
{
	if ( !isset($song['stream_url']) ) continue;

	echo $song['title'] 
		.'<span class="player-container">'
		.'  <a href="" class="btn-play"> [ Play ]</a>'
		.'  <div class="player" style="display:none"><audio class="audio" controls><source src="'. $song['stream_url'] .'?client_id=5f2b5fc97dfa8f9993ad6bec9c6bbeb8" type="audio/mpeg"></audio></div>'
		.'</span>'
		.'<br /><br />';
}

Insertar CODE, HTML o PHP:
$(document).ready(function()
{
	$('.btn-play').click(function(e)
	{
		e.preventDefault();

		$('.player').hide();

		$('.audio').each(function()
		{
			$(this).get(0).pause();
			$(this).prop('currentTime', '0');
		});

		$(this).closest('.player-container').find('.player').show();

		$(this).closest('.player-container').find('.audio').get(0).play();
	});
});
 
Última edición:

sarco

Curioso
¡Usuario con pocos negocios! ¡Utiliza siempre saldo de Forobeta!
Desde
20 Jul 2014
Mensajes
6
PHP:
$songs = json_decode(file_get_contents('http://api.soundcloud.com/tracks.json?client_id=5f2b5fc97dfa8f9993ad6bec9c6bbeb8&q=kase+o+libertad&limit=13'), true);

foreach($songs as $song)
{
	if ( !isset($song['stream_url']) ) continue;

	echo $song['title'] 
		.'<span class="player-container">'
		.'  <a href="" class="btn-play"> [ Play ]</a>'
		.'  <div class="player" style="display:none"><audio class="audio" controls><source src="'. $song['stream_url'] .'?client_id=5f2b5fc97dfa8f9993ad6bec9c6bbeb8" type="audio/mpeg"></audio></div>'
		.'</span>'
		.'<br /><br />';
}

Insertar CODE, HTML o PHP:
$(document).ready(function()
{
	$('.btn-play').click(function(e)
	{
		e.preventDefault();

		$('.player').hide();

		$('.audio').each(function()
		{
			$(this).get(0).pause();
			$(this).prop('currentTime', '0');
		});

		$(this).closest('.player-container').find('.player').show();

		$(this).closest('.player-container').find('.audio').get(0).play();
	});
});

Gracias Hugo voy a probar te agradezco por tomarte la molestia de pasarte por mi problema saludos amigo :)

- - - Actualizado - - -

Amigo hugo implemente el codigo que me lograstes al final me quedo asi

PHP:
<?php
$songs = json_decode(file_get_contents('http://api.soundcloud.com/tracks.json?client_id='.$scid.'&q='.$sq'&limit='.$results), true);

foreach($songs as $song)
{
    if ( !isset($song['stream_url']) ) continue;

    echo $song['title'] 
        .'<span class="player-container">'
        .'  <a href="" class="btn-play"> [ Play ]</a>'
        .'  <div class="player" style="display:none"><audio class="audio" controls><source src="'. $song['stream_url'] .'?client_id='.$scid.'" type="audio/mpeg"></audio></div>'
        .'</span>'
        .'<br /><br />';



?>

<script> $(document).ready(function()
{
	$('.btn-play').click(function(e)
	{
		e.preventDefault();

		$('.player').hide();

		$('.audio').each(function()
		{
			$(this).get(0).pause();
			$(this).prop('currentTime', '0');
		});

		$(this).closest('.player-container').find('.player').show();

		$(this).closest('.player-container').find('.audio').get(0).play();
	});
});
</script>

lo guardo pero a la hora de una busqueda no hace nada que estara mal?
 
Última edición:

hugo1

Beta
¡Usuario con pocos negocios! ¡Utiliza siempre saldo de Forobeta!
Desde
28 Dic 2012
Mensajes
90
Agregaste el jQuery?

Insertar CODE, HTML o PHP:
<script type="text/javascript" src="//code.jquery.com/jquery-1.11.1.min.js"></script>
 

hugo1

Beta
¡Usuario con pocos negocios! ¡Utiliza siempre saldo de Forobeta!
Desde
28 Dic 2012
Mensajes
90
Te faltaba un punto aca

PHP:
$songs = json_decode(file_get_contents('http://api.soundcloud.com/tracks.json?client_id='. $scid .'&q='. $sq .'&limit='. $results), true);

Para adaptarlo a tu diseño considera las clases player-container, btn-play, player y audio.
 
Última edición:

sarco

Curioso
¡Usuario con pocos negocios! ¡Utiliza siempre saldo de Forobeta!
Desde
20 Jul 2014
Mensajes
6
Genial ahora si muestra los resultados pero no reproduce
 

hugo1

Beta
¡Usuario con pocos negocios! ¡Utiliza siempre saldo de Forobeta!
Desde
28 Dic 2012
Mensajes
90
mmm no se que puede ser, a mi me funciona bien.
 

sarco

Curioso
¡Usuario con pocos negocios! ¡Utiliza siempre saldo de Forobeta!
Desde
20 Jul 2014
Mensajes
6
me podrias mandar un cap de donde te aparece el reproductor

- - - Actualizado - - -

Sí, fijate si usaste bien las clases.
las clases estan como las dejastes le doy vueltas pero no logro reproducir nada :s
como es que tu si ?
 
Arriba