2010-03-02 4 views
0

나는 jquery로 버튼의 이드 (이 경우에는 링크)를 얻고 id 나 클래스 이름을 PHP 스크립트로 보내려고했기 때문에 그 id 나 클래스 이름을 SQL 쿼리에 입력 할 수있다. 나는 이것이 가장 쉬운 일이라고 생각했지만 아무것도 작동하지 않는 것으로부터 가장 어려운 것으로 밝혀졌습니다.jquery와 아이디 이름을 얻고 PHP 스크립트에 전달하는 방법?

나는 한 페이지에 링크가 :

pagination.php :

<a href="#" class="category" id="marketing">Marketing</a> 

다음 (버튼 클릭) JQuery와 또 다른 스크립트를

jquery_pagination. ph :

$("#pagination a#marketing").click(function() { 


    Display_Load(); 

     var pageNum = $('#content').attr('data-page'); 

     $("#content").load("filter_marketing.php?page=" + pageNum, Hide_Load()); 

     }); 

그리고 마지막으로, 나는 '마케팅'ID가 가고 싶은 PHP 페이지 :

filter_marketing.php :

<?php 
include('config.php'); 
$per_page = 3; 
if($_GET) 
{ 
$page=$_GET['page']; 
} 
$start = ($page-1)*$per_page; 
//$sql = "select * from explore order by id limit $start,$per_page"; 
$sql = "SELECT * FROM explore WHERE category='marketing' ORDER BY category LIMIT $start,$per_page"; 
$result = mysql_query($sql); 
?> 
<table width="800px"> 
<?php 
while($row = mysql_fetch_array($result)) 
{ 
$msg_id=$row['id']; 
$message=$row['site_description']; 
$site_price=$row['site_price']; 

?> 
<tr> 
<td><?php echo $msg_id; ?></td> 
<td><?php echo $message; ?></td> 
<td><?php echo $site_price; ?></td> 
</tr> 

<?php 
} 
?> 
</table> 

그래서 내가 원하는 모든 자동으로 '마케팅'의 ID를 배치하는 것입니다 여기에 보이는 것처럼 하드 코딩 된 대신 SQL 쿼리에서 :

$sql = "SELECT * FROM explore WHERE category='marketing' ORDER BY category LIMIT $start,$per_page"; 

놀라운 점이 있다면 누구든지 도움이 될 수 있다면.

감사합니다.

답변

0

"아무것도 작동하지 않는다"는 것보다 더 구체적이어야합니다. 아약스 전화가 작동합니까? 그렇지 않다면 아마도 파일 경로 일 것입니다. 지옥, jquery를 올바르게 포함하는지 물어볼 수도 있습니다.

어쨌든 서버 측 스크립트는 오류가 발생하지 않으므로주의해야합니다.

원하는 경우 ID를 스크립트로 보내면됩니다 (아약스 코드가 작동한다고 가정).

$("#pagination a").click(function() { 


    Display_Load(); 
    var this_id = $(this).attr('id'); 
    var pageNum = $('#content').attr('data-page'); 
    $("#content").load("filter_marketing.php?page=" + pageNum +'&id='+this_id, Hide_Load()); 
}); 

는 그런 다음 서버 측 스크립트를

<?php 
include('config.php'); 
$per_page = 3; 

$page= ($_GET['page']!='') ? $_GET['page']: false; 
$id= ($_GET['id']!='') ? $_GET['id']: false; 

$start = ($page-1)*$per_page; 


if($page && $id){ 
    $sql = "SELECT * FROM explore WHERE category='$id' ORDER BY category LIMIT $start,$per_page"; 
} 
else 
{ 
    die('Error: missing parameters. Id= '.$id.' and page= '.$page); 
} 


$result = mysql_query($sql); 
?> 
<table width="800px"> 
<?php 
while($row = mysql_fetch_array($result)) 
{ 
$msg_id=$row['id']; 
$message=$row['site_description']; 
$site_price=$row['site_price']; 

?> 
<tr> 
<td><?php echo $msg_id; ?></td> 
<td><?php echo $message; ?></td> 
<td><?php echo $site_price; ?></td> 
</tr> 

<?php 
} 
?> 
</table> 
+0

덕분에, 그 일을! 도움에 정말 감사드립니다. – SOFuser

0
$("#pagination a#marketing").click(function() { 

var $linkElement = $(this); 
Display_Load(); 

    var pageNum = $('#content').attr('data-page'); 

    $("#content").load(
     "filter_marketing.php?page=" + pageNum + '&id='+$linkElement.attr('id'), 
     Hide_Load()); 
    }); 

이제는 클릭 된 링크의 ID가 id 매개 변수에 제공됩니다.

관련 문제