Saturday 15 March 2014

php - How do I delete a row when multiple rows have the same id -



php - How do I delete a row when multiple rows have the same id -

i have 2 tables, users , short_style.

fields of table users:

id int primary not null auto increment username password firstname lastname

data inserted users table users:

users id username password firstname lastname 1 jsmith md5hash john smith 2 jbrown md5hash jane brownish

data inserted users table short_style:

short_style id style_name style_cost style_time number_of_styles 1 bald 10 30 1 2 wash 5 15 2 1 shave 12 30 3 2 line 8 15 4 1 wash free 15 6 2 color 20 30 7

i can have users add together new style, code works perfect.

i can have users update info well, code works perfect.

i'm stuck @ deleting user info have no thought how target number_of_styles data, unique data.

from have learned (in short time) delete take 2 parameters, table name , table row (i'm assuming).

how can create work?

sorry long html, still haven't figured out how show html in comments. have:

<?php if (isset($_post['delete_servicename'])&& isset($_post['update_category'])) { $delete_servicename = $_post['delete_servicename']; $category = $_post['update_category']; $atta = '_name'; $delete = "$category$atta"; $query = "select $delete $category `id`='".$_session['user_id']."'"; $query_run = mysql_query($query); if(mysql_num_rows($query_run)==1) { $dquery = "delete $category $id = '".$_session['user_id']."'"; } } ?> <form action="services_update.php" method="post"> <div class="a_u_d_sort"> <ul> <li class="a_u_d_sort_left"> <p>category:</p> </li> <li class="a_u_d_sort_right"> <select name="update_category"> <option value="">select</option> <option value="short_style">short style</option> <option value="medium_style">medium style</option> <option value="long_style">long style</option> <option value="other_services">other service</option> </select> </li> </ul> </div> <div class="a_u_d_sort"> <ul> <li class="a_u_d_sort_left"> <p>service name:</p> </li> <li class="a_u_d_sort_right"> <input type="text" name="delete_servicename"></input> </li> </ul> </div> <button class="add" type="submit">delete</button> </form>

you should utilize auto-increment field every table create have unique id utilize when deleting rows.

if that's not alternative you, you'll have modify delete query create sure you're deleting right row:

$dquery = "delete $category $id = '".$_session['user_id']."' , `style_name` = $stylename , style_cost = $stylecost , style_time = $styletime , number_of_styles = $numberofstyles limit 1";

edit

i didn't not realize number_of_styles auto increment. in case can simply:

$dquery = "delete $category number_of_styles = $numberofstyles limit 1";

since it's unique there no need mention other fields.

php mysql delete-row

No comments:

Post a Comment