create your own

Show Javascript Confirmation Warning before deleting the record in MySQL , PHP and Javascript

77
rate or flag this page

By Alpho011

Key References

Build Your Own Database Driven Website Using PHP & MySQL Build Your Own Database Driven Website Using PHP & MySQL
Price: $20.00
List Price: $39.95
Practical JavaScript for the Usable Web Practical JavaScript for the Usable Web
Price: $3.97
List Price: $39.99

Use javascript to warn before record deletion.

We are going to update the address book tutorial in giving you a warning before you delete the record in MySQL. If you missed the address book how to go here.

References are found above

If not we continue on to our example:

Example here.

Same app we just added a little more functionality to it, the one function is a warning using the javascript confirmation box.

All this will do is ask "Do you want to delete this? OK or Cancel.

If you click Ok, the record will delete using the same method as in the address book tutorial.

If you click Cancel the function will stop, NO ACTION at all.

First things first, add the following to the address book file, between the head tags, like so:

<head>

<!--code here-->

<script>
function deleteAlert(name,id){
var conBox = confirm("Are you sure you want to delete: " + name);
if(conBox){
location.href="<?=$_SERVER['PHP_SELF'];?>?id="+ id + "&mode=remove";
}else{
return;
}
}
</script>
</head>

Line by line:

<script>

First you name the function (deleteAlert) and give parameters(name,id)

function deleteAlert(name,id){

Second create a confirmation box and assign it to a variable for easier handling
var conBox = confirm("Are you sure you want to delete: " + name);

Set up the conditional statement that will check for the var conBox
if(conBox){

Next we use the location object to send the var id to a specified url, we use the PHP_SELF to stay on the same page
location.href="<?=$_SERVER['PHP_SELF'];?>?id="+ id + "&mode=remove";

All these next two lines do is kill the function if the user picks Cancel
}else{
return;
}
}
</script>

That's it for the function.

Now to call the javascript function we need to modify this line:

<td><a href="<?=$_SERVER['PHP_SELF'];?>?id=<?=$info['id'];?>&mode=remove">Remove</a></td>

And change it to this:

<td><a href="javascript: deleteAlert('<?=$info['name'];?>','<?=$info['id'];?>');">Remove</a></td>

Notice in bold the connection to the function deleteAlert, inside the parenthesis are the parameters <?=$info['name'];?> <?=$info['id'];?>, we are calling them when we click the link.

Try and mouseover a record in the database, the remove link, at the bottom of the browser window you can see the parameters in action, just mouse over and look at the bottom left corner of the browser window.

When you click the link "remove" the function go into action and ask the question:

Are you sure you want to delete: Whatever the name will go here!

That's all there is to it, I will be posting more articles on how to incorporate javascript into your apps or pages, for now bookmark me and keep an eye open.

Please ask questions or leave comments in regards to this how to.

Help

Did this help you?

  • Yes
  • No
See results without voting

Print   —   Rate it:  up  down  flag this hub

Comments

RSS for comments on this Hub

rajkishor09 profile image

rajkishor09  says:
6 months ago

wow, good tutorial and very useful for me. thanks for sharing.

keagan  says:
6 months ago

Works great, needed this for a PHP/MySQL project. Thanks!!!

Drwibble profile image

Drwibble  says:
6 months ago

Hi Alpho011, first of all I like to say thanks for your very useful hubs on MySQL, javscript and PHP. I am just starting out at using these languages and playing with databases. However, your examples are at just the right level to start learning how all these languages interact together.

I used a bitnami LAMP stack on my local machine to run your examples. After a bit of tweaking I managed to get the MySQL database working. However, in you code example you use <?=$variable

this just returned errors in my case, so I changed these to <?php echo and the example works fine. Did a quick google on <?= to try and figure out why this would not work on my LAMP setup. Any Ideas?

Alpho011 profile image

Alpho011  says:
6 months ago

Drwibble :

reason being is that my server is set for short tags, so I am able to do shortcuts like that, but don't worry about that on a home setup like what you have.

hope that helps

Drwibble profile image

Drwibble  says:
6 months ago

Indeed it does help. googling short tags gave me the information I needed. if you want to use <? tag, the php.ini file needs to have short_opentag variable set to On.

Submit a Comment

Members and Guests

Sign in or sign up and post using a hubpages account.


optional


  • No HTML is allowed in comments, but URLs will be hyperlinked
  • Comments are not for promoting your hubs or other sites

working