【问题标题】:Fatal error of PHP [duplicate]PHP的致命错误[重复]
【发布时间】:2017-02-03 15:22:21
【问题描述】:

我正在做一个管理面板,我正在做一个用于添加用户的表单。我的代码如下:

        <form class="form-horizontal">
<fieldset>

<!-- Form Name -->
<legend>Add user</legend>

<!-- Prepended text-->
<div class="form-group">
  <label class="col-md-4 control-label" for="newuser">Username</label>
  <div class="col-md-4">
    <div class="input-group">
      <span class="input-group-addon">@</span>
      <input id="newuser" name="newuser" class="form-control" placeholder="Username" type="text" required="">
    </div>
    <p class="help-block">Put the new users username here</p>
  </div>
</div>

<!-- Password input-->
<div class="form-group">
  <label class="col-md-4 control-label" for="userpw">New user password</label>
  <div class="col-md-4">
    <input id="userpw" name="userpw" type="password" placeholder="Password" class="form-control input-md" required="">
    <span class="help-block">Enter new user's password here!</span>
  </div>
</div>

<!-- Select Basic -->
<div class="form-group">
  <label class="col-md-4 control-label" for="permissions">Choose permissions</label>
  <div class="col-md-4">
    <select id="permissions" name="permissions" class="form-control">
      <option value="1">System administrator</option>
      <option value="2">Editor</option>
      <option value="3">Developer</option>
      <option value="4">Normal user</option>
    </select>
  </div>
</div>

<!-- Button -->
<div class="form-group">
  <label class="col-md-4 control-label" for="btn_send">Send request to server</label>
  <div class="col-md-4">
    <button id="btn_send" name="btn_send" class="btn btn-primary">Send it!</button>
  </div>
</div>

</fieldset>
</form>
<?php
$newuser = $_GET['newuser']; 
$userpw = $_GET['userpw'];
$permission = $_GET['permissions'];


if(isset($newuser and $userpw and $permission) {
    $sql = "INSERT INTO users(username,userpw,permission)VALUES('$newuser', '$userpw','$permission')";

    mysql_query($sql);
}
else {
echo "error";}

我明白了:

致命错误:无法在 C:\xampp\htdocs\lumino\usermanagement.php 第 95 行的表达式结果上使用 isset()(您可以使用“null !== expression”代替)

无论如何我都无法修复它,玩了大约 5 个小时。 它正在执行 $_GET 方法,所以我得到如下网址:

mysite.com/usermanagement.php?newuser=Berkay&userpw=18042003&permissions=3&btn_send=

【问题讨论】:

  • if(isset($newuser and $userpw and $permission)猜猜缺少什么?
  • @Fred -ii- 8-] 没有别的了?
  • 感谢您的回答,已修复。
  • @JustOnUnderMillions Prolly。但是我没有在代码中走得更远;叫我懒惰;-)

标签: php html mysql forms element


【解决方案1】:

使用isset,里面不能有多个项目:

if(isset($newuser and $userpw and $permission) {

需要成为:

if(isset($newuser) && isset($userpw) && isset($permission)) {

或者:

if(isset($newuser, $userpw, $permission)) {

【讨论】:

  • 实际上,一个 isset 中可以有多个值。 isset($a, $b, c)php.net/manual/en/function.isset.php
  • 谢谢。现在如何将其上传到 mysql 表?
  • @BerkayGündüz - 这是另一个问题。在此处标记您认为最好的答案,并创建另一个问题来解释您在使用数据库查询时遇到的问题。
【解决方案2】:

你只是错过了一个)和一组,

if(isset($newuser, $userpw, $permission)) {
    $sql = "INSERT INTO users(username,userpw,permission)VALUES('$newuser', '$userpw','$permission')";

    mysql_query($sql);
}

【讨论】:

  • 您是否阅读了错误信息?
  • 他确实有一个有效的观点,虽然
  • 首先看到了失踪的)(跳到我的眼前!)。刚刚编辑了我的答案。
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2018-02-10
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2017-05-22
  • 1970-01-01
相关资源
最近更新 更多