私は作業しているjqmアプリケーションを持っています。私はリンクを作成するためにmysql dbを照会しています、彼らは動作していません。私はあなたがjq mobileでlocation.searchを使えないことを読んで学んだので、私の中に属性データリンクを追加しました。phpがjqueryモバイルで動作しない動的リンクを作成しました
ユーザーIDを持つCookieが設定されています。ユーザーがレシピを検索すると、Cookieが読み取られ、ユーザーIDが取得され、対応するユーザーIDを持つすべてのレシピが照会されます。
作成したリンクの1つをクリックして別のページに移動し、そのリンクIDを使用してクエリを実行し、実際のレシピをプルアップできます。
ここでは、私はPHPファイルをプルアップするために使用しているjsです。
$(document).on("pageshow","#retrieve",function(){
var uid1 = $.cookie('recuid');
var uid = uid1.substr(7);
var data;
var response = '';
$.ajax({ type: "GET",
url: "retrieve_recipes.php?userid=" + uid,
dataType: "html",
async: false,
success : function(response)
{
$("#show_recipe").html(response);
}
});
});
ここにリンクリストを作成するためのPHPコードを示します。ここで
<?php
include_once('../recipe_holder/connect.php');
$uid = $_GET['userid'];
$sql = "SELECT * FROM recipes WHERE userid = '$uid'";
$result = mysqli_query($conn, $sql);
if (mysqli_num_rows($result) > 0) {
while($row = mysqli_fetch_assoc($result)) {
echo "<a href='#showRecipe' class='ui-btn' data-link='".$row['uid']."'>".$row['title']."</a> ";
}
} else {}
?>
は、私は、DBを照会し、データを表示するために特定のレシピのUIDを取得するために使用していますjqueryの/ jsのコードです。私はこれを単純化しました.UIDを表示するためのアラートを表示するだけで、私はそれを多く動かすことができたら、残りの部分を動かすことができます。
$('[data-link]').click(function(){
var uid = $(this).attr('data-link');
alert(uid);
});
いずれのアイデアも高く評価されます。
ありがとうございました。
$を試してみてください( 'UI-BTN ')の代わりに$の('[データリンク]') –
あなたのコードはに対して脆弱である[** SQLインジェクション**](HTTPS ://en.wikipedia.org/wiki/SQL_injection)攻撃。あなたは[** mysqli **](https://secure.php.net/manual/en/mysqli.prepare.php)または[** PDO **](https ://secure.php.net/manual/en/pdo.prepared-statements.php)ドライバ。 [**この記事**](https://stackoverflow.com/questions/60174/how-can-i-prevent-sql-injection-in-php)には、いくつかの良い例があります。 –