Don't know how much code is actually needed so let me know!
I have this project I'm developing and I'm doing the admin-end on PHP. It uses SQL and the admin can pretty much update, remove and promote to administrator normal users(what I can't do).
SQL
CREATE TABLE User (
UserID int NOT NULL,
Username varchar(50) NOT NULL,
Email varchar(255) NOT NULL,
Password varchar(255) NOT NULL,
Image varchar(255) NOT NULL,
Type varchar(255) NOT NULL
)ENGINE=InnoDB DEFAULT CHARSET=latin1;
The field type
is either admin/user. What I want to do is on a button click I change the value from user
to admin
.
I was thinking of using the onclick
JS function but I have no idea how this can be achieved. Like follows:
<a onclick='.$row["Tipo"].'= admin" class="btn btn-promote">Promote</a>
Thanks for the read, any help is welcome!
To help your endeavours given that you "don't have the slightest clue on how JS works"
I put together a quick and simple demo of how you might use a hyperlink ( not a button as per the question though a similar approach can be used for buttons! ) and dataset
attributes might be combined to toggle between 2 states. That toggling between states allows you to then choose between he stated admin/user roles when implemented with other logic correctly. As there is no HTML form nor a desired method you can use this with either a regular form ( as shown ) or with Ajax ( not shown )
The demo only changes the value of a form element and also the text within the hyperlink
document.querySelector('a.btntgl').addEventListener('click',function(e){ let role=document.forms.adduser.role; this.dataset.tmp=this.textContent; this.textContent=this.dataset.alt; role.value=this.dataset.alt; this.dataset.alt=this.dataset.tmp; this.removeAttribute('data-tmp'); });
.btntgl{ text-transform:capitalize }
<form name='adduser' method='post'> <?-- loads of other fields --> <input type='text' name='role' value='admin' /><!-- should be hidden maybe? --> <input type='submit' /> </form> <a class='btntgl' href='#' data-alt='user'>admin</a>
$(document).on('click', '#btntgl', function(e){ e.preventDefault(); let typeValue = $(this).date('id'); $.ajax({ method: "POST", url: "update.php", data: {type:typeValue}, success: function (msg) { if(msg === "ok") { alert("success"); } else { alert("error"); } } }); });
<a id="btntgl" data-id="<?php echo $row['Tipo'];?>" class="btn btn-promote">Promote</a>
the update.php will contain your update statement to update the table.
The technical post webpages of this site follow the CC BY-SA 4.0 protocol. If you need to reprint, please indicate the site URL or the original address.Any question please contact:yoyou2525@163.com.