Signaler

Php mysql java script

Posez votre question deep_sea 112Messages postés mardi 10 mai 2016Date d'inscription 2 août 2017 Dernière intervention - Dernière réponse le 20 juin 2017 à 15:36 par jordane45
Bonjour,
j'envie augmenter / diminuer un champs a chaque clique d'un button mais j'arrive pas

HTML
<form method="post" action="">
<button type="button" style=" border-style: solid; border-color: #c6526b;" name="like_btn" id="btn_like"><img src="assets\img\dislike.png"></button>
<button type="button" style=" border-style: solid; border-color: #c6526b;" name="dislike_btn" id= "btn_dislike"><img src="assets\img\like.png" ></button>
</form>



javascript

    <script type="text/javascript">

var element1 = document.getElementById("btn_like");
element1.onclick=function()
{
<?php
$variable = $_GET['variable'] ;

$sql = "UPDATE `annonce` SET `like`=`like`+1 WHERE `id_pub`=$variable";
$resultat = $conn->query($sql) or die ('Erreur '.$sql.' '.$conn->error);

?>
};
</script>


<script type="text/javascript">
var element2 = document.getElementById("btn_dislike");
element2.onclick=function()
{
<?php
$variable = $_GET['variable'] ;

$sql1 = "UPDATE `annonce` SET `like`=`like`-1 WHERE `id_pub`=$variable";
$resultat1 = $conn->query($sql1) or die ('Erreur '.$sql1.' '.$conn->error);
?>
};

</script>
Afficher la suite 
Utile
+0
plus moins
Bonjour,

Le javascript s'exécute côté POSTE UTILISATEUR.
Hors.. pour manipuler ta bdd ... il faut utiliser le PHP (qui lui ne s'exécute QUE côté SERVEUR ).
Tu ne peux donc pas inclure ton PHP dans ton JS comme tu as cru pouvoir le faire.......

Ta seule solution... utiliser de l'AJAX !
(je te conseille de le faire via la librairie JQUERY )


NB: Pour pouvoir le faire en Javascript (Ajax) ... il faut également retirer la balise FORM de ton formulaire
<form method="post" action="">

Celle-ci conditionne l'utilisation d'un SUBMIT et risque de poser problème pour ce que tu veux faire.

NB²: Avant que tu ne poses la question ...... sache que tu trouveras sans mal de TRES nombreux exemples sur le net concernant l'utilisation de l'ajax et comment le coder !

jordane45 18051Messages postés mercredi 22 octobre 2003Date d'inscription ModérateurStatut 16 août 2017 Dernière intervention - 19 juin 2017 à 18:09
... Alors si tu as la réponse (enfin.. c'est ce que tu crois....) ne pose pas la question...
Ce n'est pas comme si c'était mon métier et que je savais un peu de quoi je parle....
enfin bon.. je dis ça je dis rien !

tu essayes de mélanger plusieurs choses dans ton code...
Du php (avec un formulaire SUBMIT ) ... et du Javascript ....
Hors.. soit tu fais l'un ... soit tu fais l'autre (avec de l'ajax).

et ça :
    <script type="text/javascript">

var element1 = document.getElementById("btn_like");
element1.onclick=function()
{
   <?php
$variable = $_GET['variable'] ;

$sql = "UPDATE `annonce` SET `like`=`like`+1 WHERE `id_pub`=$variable";
$resultat = $conn->query($sql) or die ('Erreur '.$sql.' '.$conn->error);

         ?> 
};
</script>


<script type="text/javascript">
var element2 = document.getElementById("btn_dislike");
element2.onclick=function()
{
   <?php
$variable = $_GET['variable'] ;

$sql1 = "UPDATE `annonce` SET `like`=`like`-1 WHERE `id_pub`=$variable";
$resultat1 = $conn->query($sql1) or die ('Erreur '.$sql1.' '.$conn->error);
         ?> 
};

</script>

....

CA NE MARCHERA JAMAIS !!!!

.
Répondre
deep_sea 112Messages postés mardi 10 mai 2016Date d'inscription 2 août 2017 Dernière intervention - 19 juin 2017 à 18:16
Jai essayé avec php sans java script elle ne marche pas
Répondre
jordane45 18051Messages postés mercredi 22 octobre 2003Date d'inscription ModérateurStatut 16 août 2017 Dernière intervention - 19 juin 2017 à 19:19
Et bien montré nous ce que tu avais fait.. on essaiera de te le corriger !

Bien entendu tu appliquera tous les conseils déjà donnés dans tes précédentes questions..
Répondre
deep_sea 112Messages postés mardi 10 mai 2016Date d'inscription 2 août 2017 Dernière intervention - 20 juin 2017 à 15:12
<form action="" method="post">
<button type="submit" style=" border-style: solid; border-color: #c6526b;" name="like_btn" id="btn_like"><img src="assets\img\dislike.png"></button>
<button type="submit" style=" border-style: solid; border-color: #c6526b;" name="dislike_btn" id= "btn_dislike"><img src="assets\img\like.png" ></button>
</form>

<?php

$variable = $_GET['variable'] ;
if (isset($_post['like_btn']))
{
$sql = "UPDATE `annonce` SET `like`=`like`+1 WHERE `id_pub`=$variable";
echo $sql;
$resultat = $conn->query($sql) or die ('Erreur '.$sql.' '.$conn->error);
}

else {
echo 'erreur';
}
?>


Toujours Erreur !!!
Répondre
jordane45 18051Messages postés mercredi 22 octobre 2003Date d'inscription ModérateurStatut 16 août 2017 Dernière intervention - 20 juin 2017 à 15:36
1 - Encore une fois ..... merci de mettre DANS LES BALISES DE CODE .... le LANGAGE pour avoir la coloration syntaxique

2 - Il faut placer ton code PHP AVANT TOUT AUTRE CODE HTML !

3 - Il faut récupérer PROPREMENT tes variables AVANT de les utiliser
par exemple :
$variable = !empty($_GET['variable']) ? $_GET['variable'] : NULL ;


4 - On écrit : $_POST et non $_post !!!!!
if (isset($_post['like_btn']))

A remplacer par :
if (isset($_POST['like_btn']))
Répondre
Donnez votre avis

Les membres obtiennent plus de réponses que les utilisateurs anonymes.

Le fait d'être membre vous permet d'avoir un suivi détaillé de vos demandes.

Le fait d'être membre vous permet d'avoir des options supplémentaires.

Vous n'êtes pas encore membre ?

inscrivez-vous, c'est gratuit et ça prend moins d'une minute !