こんにちは私はこれを投稿する前に検索を使いました。ストリップ。テキストボックスから
私はphp/mysqlに新しいがsoooo多くの読書をしています。いくつかの友達が遊んでいるゲームを作ることができました。そのようなpvpゲーム。
とにかくプレイしている人のうちの1人が、購入単位を購入し売りに行く方法を見つけました。値の前に私は違法な文字を取り除くための保護機能を持っています
function protect($string) {
return mysql_real_escape_string(strip_tags(addslashes($string)));
}
これは他の文字には有効ですが、ではありません。私のためにそれをする人を頼むのではなく、ちょうど正しい方向を指し示したいと思っていました。
ちょうど包む誰かがここで尋ね、誰もが私の手を与えることができる場合、私は非常に感謝します
if(isset($_POST['buy'])){
$sword = protect($_POST['sword']);
$shield = protect($_POST['shield']);
$gold_needed = (10 * $sword) + (10 * $shield);
if($sword < 0 || $shield < 0){
output("You must buy a positive number of weapons!");
}elseif($stats['gold'] < $gold_needed){
output("You do not have enough gold!");
}else{
$weapon['sword'] += $sword;
$weapon['shield'] += $shield;
$update_weapons = mysql_query("UPDATE `weapon` SET
`sword`='".$weapon['sword']."',
`shield`='".$weapon['shield']."'
WHERE `id`='".$_SESSION['uid']."'") or die(mysql_error());
$stats['gold'] -= $gold_needed;
$update_gold = mysql_query("UPDATE `stats` SET `gold`='".$stats['gold']."'
WHERE `id`='".$_SESSION['uid']."'") or die(mysql_error());
include("update_stats.php");
output("You have bought weapons!");
}
使用してコードイムある
私は何か、「文字列関数を見つけ、SUBSTR置き換えるとstrました「
を置き換えますが、1つのクエリで2つの関数を使用できますか?申し訳ありません新しい
EDITイム***
ここupdate_stats置くことによって単位を売買グリッチする方法を発見遊んで人々の
$update_stats = mysql_query("UPDATE `stats` SET
`income`='".$income."',`farming`='".$farming."',
`attack`='".$attack."',`defense`='".$defense."'
WHERE `id`='".$_SESSION['uid']."'") or die(mysql_error());
あなたは '.'がクエリにどのように影響するかを説明することができます(たとえば、どのような問題になり、クエリで、それが何を更新しませんか)?私が知る限り、mysqlには特別な意味はありません。また、 'addslashes' +' mysql_real_escape_string'はあなたにいくつかの奇妙なクエリを与えると思います。 PDOまたはmysqliの更新とパラメータ化されたクエリの使用を検討する必要があります。 – chris85
このコードは使用しないでください。時間を無駄にしています。 –