echo php dans un search input?

Soucis de programmation et proposition de scripts.
7 message(s)Page 1 sur 1

echo php dans un search input?

Messagepar radiocloclo » Sam Mars 07, 2015 11:47 am

Bonjour à tous!

j'ai trouvé sur le net un script sympa qui utilise l'api youtube.

il a pour but d'afficher la video recherchée dans un lecteur, voir sur mon site:http://radiocloclo.shost.ca/youtube.html

Je voudrai remplir dynamiquement le champs search input avec un echo php, mais je voudrais qu'il soit interprété par le script (pas une simple info comme dans un placehold).

Es ce possible?

Merci ;)
radiocloclo offline
Message(s) : 46
Inscription : Lun Jan 06, 2014 9:28 am

Re: echo php dans un search input?

Messagepar Dev2D » Sam Mars 07, 2015 2:50 pm

Bonjour,
Est-ce que vous voulez qu'à l'entrée de votre site web le lecteur soit initialisé sur une vidéo que vous définissez à l'avance?
__
Cordialement.
Dev2D offline
Message(s) : 19
Inscription : Ven Déc 19, 2014 4:10 pm
Localisation : Oujda, Oriental, Maroc

Re: echo php dans un search input?

Messagepar radiocloclo » Sam Mars 07, 2015 4:39 pm

Salut Dev2D!
Merci pour votre aide!
en faite, j'aimerai que la video se charge automatiquement au changement de titre de la webradio :roll:
Je sais que c'est un peu dingue mais c'est assez originale :)
Malgré mes lacunes en php et autre je suis arrivé a faire entrer en echo le titre diffusé, mais l'utilisateur est obligé d'appuyer sur sa touche entrée et mon echo ne se rafraichi pas (j'ai mis un refresh par bouton) :lol:

Voila la page que j'ai massacré: http://radiocloclo.shost.ca/youtube.php

Je peux vous envoyez le code source de la page si vous le souhaitez?

Encore merci a vous!
radiocloclo offline
Message(s) : 46
Inscription : Lun Jan 06, 2014 9:28 am

Re: echo php dans un search input?

Messagepar Dev2D » Sam Mars 07, 2015 8:41 pm

Bonjour Radiocloclo,

Je comprend, par contre je ne vois pas l'utilité du PHP dans tout ça. jQuery peut tout faire.
Primo change ta partie Javascript par ça :
Code : Tout sélectionner
<script type="text/javascript">
$(document).ready(function()
{   
   // Initialisation du placeholder et du lecteur au chargement de la page
   var titre = "Claude François, La maison va revivre";

   Formulaire = document.getElementById("search");
   Formulaire.elements["searchI"].placeholder= titre;
   // Renvoi du rendu
   function ReponseYoutube(url){
      $.ajax({
            type: "GET",
            url: url,
            dataType:"jsonp",
            success: function(response)
            {
               if(response.data.items)
               {
                  $.each(response.data.items, function(i,data)
                  {
                     var video_id=data.id;
                     var video_title=data.title;
                     var video_viewCount=data.viewCount;

                     var video_frame="<iframe width='640' height='385' src='http://www.youtube.com/embed/"+video_id+"' frameborder='0' type='text/html'></iframe>";

                     var final="<div id='title'>"+video_title+"</div><div>"+video_frame+"</div><div id='count'>"+video_viewCount+" Views</div>";
                     $("#result").html(final);
                  });
               }
               else
               {
                  $("#result").html("<div id='no'>No Video</div>");
               }
            }

         });
   }
   $(".search_input").focus();
   //Initialisation de l'url de recherche yt 
   var keyword= titre;
   var yt_url='http://gdata.youtube.com/feeds/api/videos?q='+keyword+'&format=5&max-results=1&v=2&alt=jsonc';
   ReponseYoutube(yt_url);
   // Récupération du champ Search et renvoi du rendu
   $(".search_input").keyup(function()
   {
      var search_input = $(this).val();
      keyword= ($(".search_input").val()=="")?titre:encodeURIComponent(search_input);
      yt_url='http://gdata.youtube.com/feeds/api/videos?q='+keyword+'&format=5&max-results=1&v=2&alt=jsonc';
      ReponseYoutube(yt_url);

   });
});
</script>


Et Dans la partie Style ajoute dans #titre :
Code : Tout sélectionner
#title{
....
color:black;
....
}


Et dans le body :
Change ce code :
Code : Tout sélectionner
<input type="text" class='search_input'  /><br/>

Par :
Code : Tout sélectionner
<form id="search">
<input type="text" class='search_input' name="searchI"  /><br/>
</form>


Voilà tout, n’oublie surtout pas de changer dans la partie Javascript la variable titre par le titre que tu veux faire apparaitre au chargement de la page.

___
Cordialement.
Dev2D offline
Message(s) : 19
Inscription : Ven Déc 19, 2014 4:10 pm
Localisation : Oujda, Oriental, Maroc

Re: echo php dans un search input?

Messagepar radiocloclo » Dim Mars 08, 2015 4:27 am

Bonjour à toi!

Merci pour ton aide précieuse!

Je suis idiot, je ne t'ai pas expliqué le pourquoi du php, en fait, le php m'est utile pour afficher le changement de titre de la radio.

Pour être plus claire, je récupère un fichier titrage chez radionomy en xml et j'affiche en echo les variables artiste et titre comme ça:

Code : Tout sélectionner
<?php

$xml = @ simplexml_load_file('http://radionomy.letoptop.fr/currentsong/get_api.php?radiouid=a2880b1c-2e83-4767-9804-8f3015978a38');
foreach ($xml as $track){

$artiste = $track->artists;
$titre = $track->title;
}


?>

<?php echo $artiste.' '.$titre;?>


ce qui donne ça: http://radiocloclo.shost.ca/titretest.php

donc le problème est que je dois marier le javascript au php, ce qui me semble impossible! lol

un truc du genre:

Code : Tout sélectionner
<script type="text/javascript">
$(document).ready(function()
{   
   // Initialisation du placeholder et du lecteur au chargement de la page
   var titre = "Claude François, La maison va revivre";


remplacé par:

Code : Tout sélectionner
<script type="text/javascript">
$(document).ready(function()
{   
   // Initialisation du placeholder et du lecteur au chargement de la page
   var titre = "<?php echo $artiste.' '.$titre;?>";


Mais a premiere vue, le php dans le javascript c'est comme l'eau chaude dans le pastis :lol:

Excuse moi encore de n'avoir pas été tres prècis :roll:

Si tu vois une solution je suis preneur! ;)
radiocloclo offline
Message(s) : 46
Inscription : Lun Jan 06, 2014 9:28 am

Re: echo php dans un search input?

Messagepar radiocloclo » Dim Mars 08, 2015 5:08 am

Re

A force de chercher j'ai trouvé!

En fait, je devais placer mon code php avant le javascript!

comme ça (si ça peut donner des idées aux autres membres de shost):

Code : Tout sélectionner
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//FR" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>moteur youtube</title>

<?php

$xml = @ simplexml_load_file('http://radionomy.letoptop.fr/currentsong/get_api.php?radiouid=a2880b1c-2e83-4767-9804-8f3015978a38');
foreach ($xml as $track){

$artiste = $track->artists;
$titre = $track->title;
}


?>

<script type="text/javascript" src="http://ajax.googleapis.com/
ajax/libs/jquery/1.4.2/jquery.min.js"></script>

<script type="text/javascript">
$(document).ready(function()
{   
   // Initialisation du placeholder et du lecteur au chargement de la page
   var titre ="<?php echo $artiste.' '.$titre;?>";

   Formulaire = document.getElementById("search");
   Formulaire.elements["searchI"].placeholder= titre;
   // Renvoi du rendu
   function ReponseYoutube(url){
      $.ajax({
            type: "GET",
            url: url,
            dataType:"jsonp",
            success: function(response)
            {
               if(response.data.items)
               {
                  $.each(response.data.items, function(i,data)
                  {
                     var video_id=data.id;
                     var video_title=data.title;
                     var video_viewCount=data.viewCount;

                     var video_frame="<iframe width='640' height='385' src='http://www.youtube.com/embed/"+video_id+"' frameborder='0' type='text/html'></iframe>";

                     var final="<div id='title'>"+video_title+"</div><div>"+video_frame+"</div><div id='count'>"+video_viewCount+" Views</div>";
                     $("#result").html(final);
                  });
               }
               else
               {
                  $("#result").html("<div id='no'>Pas encore de video pour ce titre!</div>");
               }
            }

         });
   }
   $(".search_input").focus();
   //Initialisation de l'url de recherche yt 
   var keyword= titre;
   var yt_url='http://gdata.youtube.com/feeds/api/videos?q='+keyword+'&format=5&max-results=1&v=2&alt=jsonc';
   ReponseYoutube(yt_url);
   // Récupération du champ Search et renvoi du rendu
   $(".search_input").keyup(function()
   {
      var search_input = $(this).val();
      keyword= ($(".search_input").val()=="")?titre:encodeURIComponent(search_input);
      yt_url='http://gdata.youtube.com/feeds/api/videos?q='+keyword+'&format=5&max-results=1&v=2&alt=jsonc';
      ReponseYoutube(yt_url);

   });
});
</script>
<style>
body {
background-color:#3A85BF;
color:#FFFFFF;
font-family:'Georgia', Times New Roman, Times, serif
}

.search_input
{

border:2px solid #333;
font-size:20px;
padding:5px;
width:350px;
font-family:'Georgia', Times New Roman, Times, serif;
-moz-border-radius:5px;-webkit-border-radius:5px;


}
#input_box
{
text-align:left;
width:640px;
}
#result
{
background-color:#000;
margin-top:25px;
min-height:400px;
width:640px;
border:solid 10px #ffffff;

-moz-border-radius:9px;
-webkit-border-radius:9px;

}
#no
{
padding:30px;
font-size:24px;
color:#fff;

}

#title
{
background-color:#fff;
font-size:26px;
text-align:left;
padding-bottom:8px;
color:black;
}
#count
{
background-color:#fff;
text-align:left;
padding-top:8px;
}
</style>

</head>


<body>

<center>(Ps: Pour ne pas pénaliser l'audience de la radio, veuillez svp laisser le player en lecture, puis baisser au minimum le volume avant de lancer la video!)</br></br>

<form id="search">
<input type="text" class='search_input' name="searchI"  /><br/>
</form>
<input type="button" onclick='window.location.reload(false)' value="Rafraichir"/>
<div id="result">

</div></center>




</body>
</html>


Merci encore, car c'est grace a ta modif que j'ai pu réussir! ;)
radiocloclo offline
Message(s) : 46
Inscription : Lun Jan 06, 2014 9:28 am

Re: echo php dans un search input?

Messagepar Dev2D » Mer Mars 11, 2015 5:59 pm

Bonjour,

Je vous en prie, on est là pour ça.
Bon courage pour la suite !
___
Cordialement
Dev2D offline
Message(s) : 19
Inscription : Ven Déc 19, 2014 4:10 pm
Localisation : Oujda, Oriental, Maroc

7 message(s)Page 1 sur 1

Qui est en ligne ?

Utilisateur(s) parcourant ce forum : Aucun utilisateur inscrit et 1 invité

cron