さて、次のことを試してみてください。
JSファイルは、ユーザーがオプションをクリックしたときに検出し、val
の変数$_POST
を使用してupdateRow.phpファイルにajaxリクエストを送信します。
updateRow.php
は、変数をとり、整数にキャストします。クエリは、その変数で更新されます。クエリを処理し、echo
、print
などのデータを目的のHTML形式で処理します。そうでなければ、データは「失敗」をエコーします。
エコーされ、印刷された出力は、変数data
でJSファイルに送り返されます。データが「失敗」に等しい場合、エラーメッセージが出力されます。それ以外の場合は、HTMLを#row
要素に挿入します。
// ------ Your JS file ---------
$(function() {
$row = $("#row");
$("#update-row").on("change", function() {
var val = $("select option:selected", this).val();
$.post('updateRow.php', {
val: val
}, function(data) {
if (data == 'failure') {
$row.text("Sorry, the row does not exist");
} else {
$row.html(data);
}
});
});
});
//------- updateRow.php ---------
//Make sure path/to/updateRow.php in the JS file is updated to here
$V = (int) $_POST['val'];
$getrow = "SELECT ProdID,
ProdCatID, ID_AC_seperate, ProdImage,
ProdName, ProdPrice, ProdShippingPrice,
ProdShortDesc, ProdMediumDesc, suitable,
cart_thumb FROM accessories WHERE ProdID =" . $V;
if (QUERY_IS_SUCCESSFUL()) {
echo 'The <b>HTML</b> you want to display the data in';
} else {
echo 'failure';
}
<!----- HTML file ---->
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<script src="path/to/js/file.js"></script>
<form method="post" action="a34.php" id="update-row">
<select name="category">
<option value="6008">15</option>
<option value="6018">25</option>
<option value="6034">30</option>
<option value="6038">40</option>
</select>
</form>
<div id="row"></div>
[リトルボビー](http://bobby-tables.com/は)[スクリプトがSQLインジェクション攻撃の危険性がある]と言う(のhttp:// /image/gif/paws/6704/how-can-i-prevent-sql-injection-in-php)。 [MySQLi](http://php.net/manual/en/mysqli.quickstart.prepared-statements.php)の[prepared](http://en.wikipedia.org/wiki/Prepared_statement)のステートメントについて学んでください。 [文字列をエスケープする](http://stackoverflow.com/questions/5741187/sql-injection-that-gets-around-mysql-real-escape-string)でも安全ではありません! - [Jay Blanchard](http://stackoverflow.com/users/1011527/jay-blanchard) –
フォームを送信しますか? 1つのスクリプト内のすべてのコードですか? – Jeff
@リトルボビー私は今のところ仕事をしようとしていることを知っています。助言がありますか? – user8237728