2010-11-26 3 views
1

私は、mysqlがajaxからphpに変数を送るのを助けたいと思っています。 私はMySQLで[クエリ]相談私はdata: "query=search"を言うとき、私は$ _POSTに文字列として「検索」値を送信したいjQueryを使用して動的データベースの問い合わせを行う方法は?

<script type="text/javascript" src="jquery.js"></script> 
<?php 
include "w_config.php"; //only a local php lib, you can ignore 
//the function query only returns the query result 
print_r(query("select * from artists where artist like '%$_POST[query]%'")); 
?> 
<script language="javascript" type="text/javascript"> 
$.ajax({ 
    type: "POST", 
    data: "query=search" 
}); 
</script> 

自体によってコードがよりよく説明すると思うアーティストのようなアーティストから*を選択'%$ _ POST [クエリ]%'

たとえば、 data: "query = linkin park";

ので、変数$ _POSTあなたは、AJAXを使用している場合のみ、検索結果を返す別のPHPファイルがあるはず、「公園のリンキン」文字列を取得し、クエリ

+0

Soがあなたはそれが大好きです。ほかに何か? – zerkms

+0

あなたがここで何をしようとしているかについて、さらに詳しい情報が必要です。 – wajiw

+0

が編集されました。私は十分にクリアされましたか? :) – Jesse

答えて

0

いくつかの方法があります。良いことは、あなたの要求の答えをXML形式に戻すPHPスクリプトを書くことです。

JavaScriptコードからこれらのスクリプトを呼び出し、必要に応じて受け取ったXMLデータを操作します。そこで、基本的

//Your pseudo PHP Script: 
// pre conditions on inputs (assertion, secure strings, ...) 

// Write the data selected from your database in XML 
// For example: 
SELECT name FROM Artist WHERE id_artist = $_GET['id'] 
// Start your XML output 
<Artists> 
// For each name write: 
    <Artist name="..." /> 
</Artists> 

// post conditions ... 

//Your Javascript Code Example: 
$.get({ 
    url: 'script.php?id=' + id, 
    success: function(xml) { //manipulate your XML } 
}); 
3

ファーストを更新します。

第2に、SQLインジェクションを防ぐために検索文字列をエスケープする必要があります(Googleからすべてのことを伝えます)。

第3に、jsonのようなものを受け入れ、jqueryで構文解析してhtmlを解析するか、phpが既製のHTMLを返してDIVなどに入れることができるかどうかを判断する必要があります(この場合、おそらくjQueryのloadを使用します)。

第4に、HTMLがどのように見えるか、具体的には入力ボックス(検索語句)とある種のボタンがある部分を教えてください。

これらの最初の手順の後で、コードについて話すことができます。

関連する問題