2017-07-03 20 views
1

ajax関数でphpデータを送信する際に問題があります。 私が望むのは、私がmysqli_fetch_arrayからPHPの値を持っているhtmlフォームを送信することです。値は私の主キーである投稿の番号です。 JavaScriptを初めて使う人には、これを行う方法がわかりません。私たちは、 "アップ" というボタンに焦点を当てて、ここで、この配列フェッチを持って、PHPページでajax形式でPHPデータを送信する方法

<script> 
function foo() { 
    $.ajax({ 
    url:"vote.php?no_post=<?php $post ['no_post'] ?>", //what I'd like to do 
    type: "POST", //request type 
    success:function(result) 
    { 
    alert(result); 
    } 
}); 
} 
</script> 

: はここに私のonclick関数のコードである

if(!isset($_POST['more'])) 
    { 
    while($post = mysqli_fetch_array($res)) 
    { 
    echo 
     '<p>'. 
      '<center>'. 
      '<img src="image/'.$post['image_post'].'">'. 
      '</center>'. 
      '<br/>'. 
      '<label>'.$post['desc_post'].'</label>'. 
          '<p>'. 
       '<a id="darkBlue" href="account.php?no_post='.$post['no_post'].'">'.'@'.$post['login'].'</a>'. 
          '<p>'. 
       '<label>'.$post['time'].'</label>'. 
          '<p>'. 
       '<label>'.$post['vote_post'].' points'.'</label>'. 
        '<footer>'; 

    if (isset($_SESSION['login'])) 
    { 
     echo  '<button class="btn btn-success" name="up" id="up" onclick="foo()">+</button>'. 
       '&nbsp'. 
         '<button class="btn btn-danger" name="down" id="down">-</button>'. 
        '&nbsp'. 
          '<a href="commentaire.php?no_post='.$post['no_post'].'" class="btn btn-warning">Comment</a>'. 
        '<hr>'; 
    } 

EDIT ***

SQL要求が実行される

そして最後に私のPHPページ:あなたは助けるために

<?php 
if (isset($_POST['up'])) // 2 buttons on the first html FORM 
{ 
$req="UPDATE post SET vote_post=vote_post+1 
    WHERE no_post=".$_GET['no_post'].""; //picking up the value from my url 
$res=mysqli_query($con,$req); 
} 

else if (isset($_POST['down'])) 
{ 
$req2="UPDATE post SET vote_post=vote_post-1 
    WHERE no_post=".$_GET['no_post'].""; //picking up the value from my URL 
$res2=mysqli_query($con,$req2); 
} 

else 
    echo 'Error'; 
?> 

感謝。

+1

'' url: "vote.php?no_post = <?php echo $ post ['no_post']?>" '、' //私がしたいものdo –

+2

体内にデータを送信していない場合にPOSTを使用する理由は何ですか? – m4grio

+0

このようなデータを送信する場合は:url: "vote.php?no_post = <?php $ post ['no_post']?>"これはURLで表示されるGET投稿を使用してデータを送信する方法ですあなたはPOSTとしてメソッドを使用していますか?どの方法を実際に使用するかをまず決定します。 – Deepa

答えて

1

あなたは下の行にechoが見つかりませんでした。

url:"vote.php?no_post=<?php echo $post['no_post'] ?>", //what I'd like to do 

あなたがPOSTメソッドを使用してきたように、それは同じようdataに渡す必要がありEDIT

<script> 
function foo() { 
    $.ajax({ 
    url:"vote.php", 
    type: "POST", //request type 
    data: {no_post: <?php echo '$post['no_post']'?>} 
    success:function(result) 
    { 
    alert(result); 
    } 
}); 
} 
</script> 

$.ajax({ 
    url:"vote.php", 
    type: "POST", //request type, 
    data: { 
     postCount : <?php echo $post['no_post']; ?> 
    } 
    success:function(result) 
    { 
    alert(result); 
    } 
}); 
+0

答えがうまくいかなかったのですが、Ajaxがどのように機能したかを少し理解するのに役立ちました。私が返事を取った長いこと申し訳ありません – Julien

0

あなたはそのような何かを試すことができますそれは私たちにとってより良いことですURLにパラメータを使用する代わりにdata : [...]を使用してください。

+0

あなたの答えは動作しませんでしたが、もう少しAjaxの仕組みを理解する助けになりました。私が返事を取った長いこと申し訳ありません – Julien

関連する問題