Jump to content

Better method for using checkboxes with mysql?


j.smith1981

Recommended Posts

I was fiddling around with php and concerning data in a mysql database.

 

All I was wanting to understand was being able to remove values with cheking multiple items in outputted html list.

 

One that reads a set of values from a database, then displays a check box allowing the user to delete such values, that's it basically, here is my script I used to do it:

 

<?php

function deleteRow($value)
{
  $sql = "DELETE FROM checkbox WHERE value LIKE '$value'";
  $result = mysql_query($sql);
}

if(array_key_exists('delete', $_POST)){

  if(isset($_POST['value']))
  {
    $count = count($_POST['value']);

$connect = mysql_connect('localhost', 'jeremy', 's56pj989');
if($connect)
{
  $select_db = mysql_select_db('test');
  if($select_db)
  {
        for($i=0; $i<$count; $i++){
  
          // print 'This is item = '.$_POST['value'][$i]; // outputs fine
      if(strlen($_POST['value'][$i]) > 0)
      {
            deleteRow($_POST['value'][$i]);
      }
    }
  }
}
  }
}
?>
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" 
  "http://www.w3.org/TR/html4/loose.dtd">
<html lang="en">

  <head>
    <title></title>
  </head>
  <body>
  <form id="myform" name="myform" action="<?=$_SERVER['PHP_SELF']; ?>" method="post">
<?php
if($_SERVER['REMOTE_ADDR'] == '192.168.0.2') {

  // printf("<p>Yes you have connected to this script successfully!</p>");
  
  $connect = mysql_connect('localhost', 'mydbuser', 'mydatabasepassword');
  
  if($connect) {
  
    // printf("<p>You have now connected to the database, well done!</p>");

$select_db = mysql_select_db('test');

if($select_db) {
  // printf("<p>Selected database now</p>");
  
  $sql = 'SELECT * FROM checkbox';
  
  $result = mysql_query($sql);
  if($result) {
    
	if(mysql_num_rows($result)>0){
	  while($row = mysql_fetch_assoc($result)) {
	    printf("%s <input type=\"checkbox\" name=\"value[]\" value=\"%s\">\n<br />\n", $row['value'], $row['value']);
	  }
	} else {
	  printf("<p>No rows in system!</p>");
	}
  }
}
  }
}
?>
  <input type="submit" id="delete" name="delete" value="Delete" />
  </form>
  </body>
</html>

 

There must be a better way shouldn't there? I am not too concerned with error checking, ie if result of removing the values doesnt work, since I will just use this as an example of how to do this.

 

Going on from that, how would I allow it to update a set of say changed values, just purely out of interest, pretty happy since it works though this script.

 

But I was also wondering if there's some easy way of updating a set of values perhaps?

 

Hmm good though and I look forward to any replies,

Jeremy.

Archived

This topic is now archived and is closed to further replies.

×
×
  • Create New...

Important Information

We have placed cookies on your device to help make this website better. You can adjust your cookie settings, otherwise we'll assume you're okay to continue.