ここに更新されたコアがあります。それを行うには適切な方法ですか? 私はWebからチュートリアルに従ってPrepared Statementsを実行しようとしますが、うまく機能しません。それはPHPの更新を行う適切な方法ですか?
$Enrolsql = "Select * FROM Enrol WHERE ActivityID=$activityid AND UserPhone=$userPhone AND UseUp=1";
$Enrolresult = $conn->query($Enrolsql);
if ($Enrolresult->num_rows > 0) {
$ssql = "UPDATE Enrol SET UseUp=0 WHERE ActivityID=$activityid";
if (mysqli_query($conn, $ssql)) {
echo "+1+"; //successfully Used.
} else {
echo "+2+"; // System Error.
}
} else {
echo "+0+"; // Coupon is not Vaild
}
$conn->close();
データベースのテーブル情報:http://php.net/manual/en/mysqli.query.phpによると
。影響を受けた行の数を確認して、何が起こったのかを確認します。そして、あなたはSQLインジェクションを読むべきです。 – jeroen
ifループは、クエリの実行と有効/無効値では関係ありません。 – pr1nc3
問題に取りかかる前に、http://bobby-tables.comにアクセスし、SQLインジェクションについて学ぶ必要があります。実際にあなたのコードは本当に脆弱で、全く保存しません。システム全体についての深い知識がなくても、データベース全体を数秒でハッキングすることができます。決して直接クエリーにユーザー入力を入れないでください。代わりにprepared statementsを使用してください。準備されたステートメントと、bobby-tables.comでそれらを使用する方法について何かを学ぶことができます。本当に簡単なトピックであり、コードは2分で変更されます。私はこれを行うことを強くお勧めします。 – Twinfriends