2013-04-23 4 views
0

새 웹 사이트를 만드는 데 많은 시간이 걸리지 만 오늘은 약간의 문제가있었습니다.버튼을 누른 후 데이터베이스에 잘못된 레코드가 업데이트되었습니다.

나는 그것을 가능한 한 잘 설명하려고 노력할 것이다.

내 웹 사이트는 페이지를 새로 고침 할 때마다 임의의 메시지를 표시하고 해당 메시지가 마음에 드는 버튼을 클릭 할 수 있습니다.

이제 문제는 메시지를 좋아하려는 버튼을 클릭하면 (양식 태그로 인해) 페이지가 다시로드되고 표시되는 다음 메시지로 이동한다는 것입니다.

나는 이것을 해결하는 방법을 모릅니다. 그래서 여러분들이 저를 도울 수 있기를 바랍니다.

나는 아래 여기에 코드를 게시 할 예정입니다 :

당신은 같은 버튼을 누른 후 데이터베이스를 업데이트 비트를 :

if(!empty($_POST["submit"])) 
{ 
    $id = $random['id']; 
    $query = "UPDATE `quotes` SET `likes` = likes + 1 WHERE `id` = $id"; 
    $result = mysql_query($query); 
     if ((mysql_error()!="")) 
     { 
      $ANTW = mysql_error(); 
      echo ("Cause of the error: " . $ANTW); 
     } 
     else 
     { 
      echo "It worked!"; 
     } 
} 

등 버튼 :

<form name='' method='post' action=''> 
<input class='like' type='submit' name='submit' /> 
</form> 

나는 희망 이 문제를 해결하기에 충분할 경우, 알려주지 않으면 더 많은 코드를 게시 할 것입니다.

데니스

UPDATE :

안녕들, 빠르고 좋은 조언 모두를위한 감사는 당신이 얘기하는 방법을했다.

<form name='' method='post' action=''> 
    <input type="hidden" value="<?php echo $random[$id]; ?>" name="like" /> 
    <input class='like' type='submit' name='submit' /> 
</form> 

그리고 당신의 PHP 코드 할당에 : : 감사

+0

왜'$ id = $ random [ 'id'];'왜 임의의 ID를 사용하겠습니까? – edwardmp

답변

1

숨겨진 입력에 ID를 저장

$id = $_POST['like']; // your like id you passed by the form (input type hidden) 
1

가의 ID를 보내기

<input type="hidden" name="myid" value="YOURID"> 
처럼 숨겨진 필드를 사용하여 양식을 제출

다음 페이지에서 이전 ID를

012를 사용하여 가져옵니다.
$_POST['myid'] 
관련 문제