无法制作表格。

问题描述:

我想要做以下事情。我输入值并点击提交。如果该值超出范围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);} 
?> 
+2

使用'$ _ POST [ 'skinid']',而不是'$ _SESSION [ 'skinid']' in'skinid.php' – itachi 2013-04-30 13:24:14

+0

那么什么都行不通? php响应正确和数据库没有做你想要的? php $ _SESSION ['skinid'] = $ _POST ['skinid']; – 2013-04-30 13:24:15

+0

它不起作用?你会得到一个MySQL错误或'皮肤ID必须在0和299的范围内。'? – naththedeveloper 2013-04-30 13:24:16

尝试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> 
+0

你应该提到它上面的html代码只对html5有效 – itachi 2013-04-30 13:38:44

+0

它回应我'ghgj' – user215584 2013-04-30 13:43:28

除非第一个代码示例也从skinid.php,在HTML表单你$_POST['skinid']是空的,因此在skinid.php中你的$_SESSION['skinid']也将是空的。

相反,在skinid.php使用: $newskinid = $_POST['skinid'];

+0

我已经完成了,它仍然没有更新表格。 – user215584 2013-04-30 13:28:30

+0

'mysqli_error()'说了些什么?哦....你没有添加它.... :(( – itachi 2013-04-30 13:30:34

+0

我的表是MySQL,而不是MySQLi,可以这是一个问题? – user215584 2013-04-30 13:32:03