0

I'm doing an admin panel and I'm doing a form for adding users. My code below:

        <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";}

And I Get:

Fatal error: Cannot use isset() on the result of an expression (you can use "null !== expression" instead) in C:\xampp\htdocs\lumino\usermanagement.php on line 95

I couldn't fix it anyhow, playing with this for like 5 hours. It's doing $_GET method, so I get the url like:

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

2 Answers2

1

Using isset, you can't have multiple items inside it:

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

Needs to become:

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

Or:

if(isset($newuser, $userpw, $permission)) {
Funk Forty Niner
  • 74,450
  • 15
  • 68
  • 141
Farkie
  • 3,307
  • 2
  • 22
  • 33
1

You just miss a ) and a set of ,:

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

    mysql_query($sql);
}
Clorichel
  • 1,940
  • 1
  • 13
  • 24