0

ここで達成しようとしている目標は、コンテンツと呼ばれる div のページにある mysql テーブルからの情報のリストを取得することです。ページを更新せずに jquery を使用してコンテンツを開くハイパーリンクに値を設定したいと考えています。送信したい値は、ページに送信されたときに SQL を実行して顧客情報を表示できる顧客 ID 番号です。

たとえば、顧客が John Smith で、顧客 ID 番号が 20 であるとします。

<a href="" id="$row['customer_id']">Smith, John</a>

他のリンクで使用しているjqueryは次のとおりです。

$("#WhateverTheCustomerIDis").click(function(){
   $("#container").load("company/view-customer.php");
})

次に、私のSQLで、「SELECT * FROM Customers WHERE CustomerID = 'リンクから送信された値'」のようにしたい

リンクがクリックされると、ページを更新せずに div のビューの顧客ページを開くように、jquery とリンクを設定する方法を理解するのを手伝ってくれる人はいますか。

4

2 に答える 2

3
<a href="" id="$row['customer_id']" class="userLink">Smith, John</a>

$(".userLink").click(function(){
   $("#container").load("company/view-customer.php?id=" + $(this).attr('id'));
})

view-customer.php の php で

$id = $_GET['id'];
$result = mysql_query("SELECT * FROM Customers WHERE CustomerID = $id");

動作するはずです。

MassivePenguins (明らかな笑) のアドバイスを受けるように更新されました。上記により、リンクごとに個別に呼び出しを作成するのではなく、すべてのリンクにクラスを追加できます。

于 2013-02-08T16:07:22.047 に答える
0

ajax で関数を使用する必要がある場合があります。

function getcontent(var1){
 $.post("company/view-customer.php",{customerid:var1},function(data){
  $("#container").html(data);
 });
}

次に、すべてのリンクで:

<a href="" onclick="getcontent(".$row['customer_id'].");">Smith, John</a>

view-customer.php では、リクエストを次のように解決できます。

$id = $_POST["customerid"];
if(isset($id)){
 //ID is set and ready to use, Do other stuff here...
 //The Queries and anything else...
$result = mysql_query("SELECT * FROM Customers WHERE CustomerID = $id");
} 

関数を使用する方が簡単で、その php ファイル内のすべての html データを、ajax 呼び出しに使用される「id」に従ってプルすることができます。ここでのケースには Ajax が最適なオプションであり、 function を使用すると使いやすくなります。CSSはPHPファイルで簡単に使用できますが、.load()はパディングとマージンの問題を引き起こすと思います...

于 2013-02-08T16:08:36.420 に答える