>source

PHP code에서 큰 문제가 있습니다. 나는 소셜 네트워크를 만듭니다. 그 소셜 네트워킹 사이트에서 사람들은 물건을 게시 할 수 있고 다른 사람들은 그들을 좋아할 수 있습니다. 그러나 내 문제는 '좋아요'부분과 관련이 있습니다. 다음은 데이터베이스에서 게시물 데이터를 가져 오는 데 사용하는 PHP code입니다.

<?php
$select1= mysqli_query($con, "SELECT * FROM `newtons` WHERE by_user='$user_name' ORDER BY `newtoned_at` DESC ") ;
while ($row1= mysqli_fetch_array($select1)) {
  $newton_id= $row1['id'];
  $text= $row1['text'];
  $picture= $row1['picture'];
  $link= $row1['link'];
  $hashtag= $row1['hashtag'];
  $newtoned_at= $row1['newtoned_at'];
  echo "
<div class='m-1 border p-2' id='newton_display_box'><div class='d-flex flex-row'><div><img src='profile_pictures/$profilepic' class='rounded border' style='height:50px;width:50px;'></div><div class='ml-1'><p class='h6 text-secondary'>@$user_name

<p class='h6' id='newton_display_box_text'>$text

</a></div></div>**<form method='post' action=''><input type='hidden' id='by_user' value='$username'><input type='hidden' id='to_newton' value='$newton_id'><input type='hidden' id='to_user' value='$user_name'><div class='row text-center mt-1' style='font-size:20px;'><div class='col-4'> <button class='far fa-heart reactions' id='likebtn'></button> </div><div class='col-4'> <button class='far fa-comment-alt reactions'></button> </div><div class='col-4'> <button class='fas fa-grin-hearts reactions'></button> </div></div></form>** </div>

이 Ajax code를 사용하여 데이터베이스에 데이터를 보내는 데 사용 된 양식 인 마지막 부분을 명확하게 볼 수 있기를 바랍니다.

<script>  $(document).ready(function(){
    $('#likebtn').click(function(event){
      event.preventDefault();
      var by_user= $('#by_user').val();
      var to_newton= $('#to_newton').val();
      var to_user= $('#to_user').val();
      $.ajax({
          type: "POST",
          url: "process_like.php",
          data: { by_user:by_user, to_newton:to_newton, to_user:to_user},
          dataType: "json",
      });
    });
  });
</script>

그러나 친구 내 문제는 1 번째 게시물의 데이터 만 보낼 수 있습니다! 나는 다른 게시물을 데이터베이스에 보낼 수 없습니다! 제발 도와주세요. 나는 이것이 내가 PHP를 사용했을 때 이것이 문제라고 생각한다. 제발 도와주세요

process_like.php 위에 양식이있는 것과 동일한 페이지입니까?

Emre Karakuz2021-07-22 16:16:07

JavaScript 오류가 없도록 브라우저의 콘솔을 확인하십시오.

Paul T.2021-07-22 16:16:07

경고 : SQL 주입에 넓게 열려 있으며 수동으로 쿼리를 구축하는 대신 매개 변수화 된 준비 문을 사용해야합니다. 그들은 PDO 또는 MySQLI가 제공합니다. 어떤 종류의 입력을 신뢰하지 마십시오! 신뢰할 수있는 사용자가 쿼리를 실행하는 경우에도 데이터가 손상 될 위험이 있습니다. 탈출은 충분하지 않습니다!

Dharman2021-07-22 16:16:07
  • 이전 c++의 멀티 스레드 데이터베이스 쿼리
  • 다음 r : Plotting 전에 데이터를 필터링하지 않고 GGPlot2에서 X 축 항목의 하위 집합을 플롯하는 방법은 무엇입니까?