8768 sujets

Développement web côté serveur, CMS

Pages :
Bonjour à tous, j'ai 17 ans et je suis président d'une webradio associative.
Pour celle-ci je dois développer un script "Dernier titres diffusés" pour afficher sur notre site web.

J'ai un fichier Javascript (InPlay.js) qui traite le titre, l'artiste et la pochette de la musique qui est diffusé à ce moment sur la radio.

Il faudrait que je récupère mes variables "titre", "artiste", "pochette" du fichier javascript pour les retourner en AJAX sur une page PHP (send-lasttrack.php) afin que celle-ci envoi automatiquement par une requête SQL les données à chaque changement des métadonnées de la radio.

Merci.
SolidSnake a écrit :
Bonjour,

Cela manque un peu de code tout ça... Où en es-tu ?


Bonjour,
J'ai déjà fait mes connexions à la base de données, cela fonctionne, la récupération et l'affichage des données aussi.

Il me reste juste à récupérer mes 3 varibles de mon fichier javascript en PHP (InPlay.js) et envoyer automatiquement au changement de celle-ci à la base de données.
Merci
En gros de l'Ajax avec jQuery, ça donne ça :
$.post( "send-lasttrack.php", {
  variable1: "maVariable1",
  variable2: "maVariable2",
  variable3: "maVariable3"
})

Après comme je te l'ai dit, sans code, pas facile de t'aider plus que ça.
Merci, je t'avais mis le liens du fichier (InPlay.js) il est assez volumineux. Voici le lien: http://www.stauradio.com/InPlay/titrages/InPlay.js

J'avais déjà essayé ce code dans "InPlay.js" :

$.post( "send-lasttrack.php", {
  variable1: "maVariable1",
  variable2: "maVariable2",
  variable3: "maVariable3"
})


Et dans mon fichier php "send-lasttrack.php" :

<?php
$artiste = $_GET["variable1"];
$titre = $_GET["variable2"];
$pochette = $_GET["variable3"];

echo $artiste;
echo $titre;
echo $pochette;


Mais cela n'affiche rien.
dans ta fonction ajax $.post il faut traiter la réponse Ajax... si tu veux afficher quelque chose.
send-lasttrack.php est juste un fichier dédié au traitement, ce qu'il affiche par la commande echo sera récupéré dans la réponse Ajax et c'est à partir de là qu'il faut effectuer des actions pour afficher éventuellement des choses dans la page au sein de laquelle le script javascript a été initié.

Je pense que dans un premier temps tu devrais consulter des tutos sur le fonctionnement d'Ajax et mieux formuler ton problème car là on ne sait pas trop ce que tu veux faire...
Modifié par lionel_css3 (28 Jul 2017 - 14:28)
Je reformule:

J'ai un fichier javascript : "InPlay.js" (lien du fichier javascript)
qui contient un certain nombre de variables notamment "artiste", "titre" et "pochette".

Je voudrais récupérer celle-ci dans un fichier php : "send-lasttrack.php"

Quelqu'un pour m'aider s'il vous plait?
Comme l'a dit Lionel, où pensais-tu que tu allais voir tes trois echo en php ?

Intègre tes trois variables en base et ça devrait fonctionner. Pour avoir un retour en JS, encore une fois comme l'a précisé Lionel, il te faut le récupérer via un callback du post.

NB : dans ton PHP, il s'agit de données en POST et pas en GET Smiley cligne
commence déjà à lire ça entièrement pour te faire une idée du processus

tutoriel $.ajax()

$.post (une "sous-fonction" de $.ajax) est abordée en fin de ce tuto ....
Modifié par lionel_css3 (28 Jul 2017 - 14:34)
Je l'avais déjà lu mais je l'ai quand même relu...
Ma requête est bien effectuée (Statut 200) mais mes variables restent encore vides. Smiley rolleyes
Salut.
Tu dois au préalable définir l'emplacement de l'affichage de tes données en creant un 'div ou 1 section etc.. avec 1 "id" dans le code html, exemple: <div id="retourAjax"></div>
ensuite en jQuery:
$.post( "send-lasttrack.php", {
variable1: "maVariable1",
variable2: "maVariable2",
variable3: "maVariable3"
},function(data){
$(#retourAjax).html(data);
}
)
Bonjour, merci pour la réponse, mais je ne souhaite pas afficher le résultat, mais à l'envoyer dans une base de données.
J'ai quand même essayé le code que tu m'as donné mais rien ne s'affiche.
Voilà mon code de ma page send-lasttrack.php


<?php
header("Content-Type: text/plain");

$VALEUR_hote='localhost';
$VALEUR_nom_bd='****';
$VALEUR_user='****';
$VALEUR_mot_de_passe='****';
$connexion = new PDO('mysql:host='.$VALEUR_hote.';dbname='.$VALEUR_nom_bd, $VALEUR_user, $VALEUR_mot_de_passe);

$artiste = (isset($_POST["variable1"])) ? $_POST["variable1"] : NULL;
$titre = (isset($_POST["variable2"])) ? $_POST["variable2"] : NULL;
$pochette = "InPlay/pochettes/covers/.$titre..jpg";

if ($artiste && $titre) {
    
	$connexion->query("INSERT INTO tracklist(artiste,titre,pochette) VALUES('$artiste','$titre','$pochette')");

	echo "OK";
	
	
} else {
    
	echo "FAIL";
}

?>
Pages :