1

私は次のことをしたいです。値を入力して送信をクリックします。値が 0 ~ 299 の範囲外の場合、テキスト「blabla」を変数 $error に保存します。0 から 299 の範囲にある場合、値を MySQL テーブル (行 - SkinID) に更新します。これが私が試してうまくいかなかったことです。これは私のHTMLフォームです:

<form action="skinid.php" method="POST">
                            <!--<fieldset class="textarea-field">
                                <textarea title="Message">Message</textarea>
                            </fieldset>-->
<br>
                            <fieldset>
                                <span class="ico user-ico"></span>
                                <input name="skinid" onkeypress="return isNumberKey(event)" type="text" class="field" value="Enter new Skin ID. (-2000$)" title="Enter new Skin ID. (-2000$)" />
                            </fieldset>
                            <center><input type="submit" class="submit btn blue-btn" value="Update" /></center>
                        </form>
  <?php $_SESSION['skinid'] = $_POST['skinid']; ?>

これは skinid.php ファイルです。

<?php
session_start();
$newskinid = $_SESSION['skinid'];
if($newskinid < '0' || $newskinid > '299'){$error = 'The Skin ID must be in the range of 0 and 299.';}
else {
$con=mysqli_connect("localhost","USERNAME","PASSWORD","DB-NAME");
// Check connection
if (mysqli_connect_errno())
  {
  echo "Failed to connect to MySQL: " . mysqli_connect_error();
  }
mysqli_query($con,"UPDATE users SET SkinID=$newskinid
WHERE Username='$_SESSION[user]'");
mysqli_close($con);}
?>
4

2 に答える 2

4

skinid.php を試してください:

<?php
session_start();
$_SESSION['skinid'] = $_POST['skinid']; 
$newskinid = $_SESSION['skinid'];
if($newskinid < '0' || $newskinid > '299') {
    echo 'The Skin ID must be in the range of 0 and 299.';
}
else {
    echo 'dhgj';
}
?>
<form method="post">

<br>
<fieldset>
    <span class="ico user-ico"></span>
    <input name="skinid" onkeypress="return isNumberKey(event)" type="text" class="field" value="Enter new Skin ID. (-2000$)" title="Enter new Skin ID. (-2000$)" />
</fieldset>
<center><input type="submit" class="submit btn blue-btn" value="Update" /></center>
</form>
于 2013-04-30T13:33:03.063 に答える
3

最初のコード サンプルも skinid.php からのものでない限り、HTML フォームの your$_POST['skinid']は空であり、その結果、skinid.php の your$_SESSION['skinid']も空になります。

代わりに、skinid.php で以下を使用します。 $newskinid = $_POST['skinid'];

于 2013-04-30T13:23:11.577 に答える