ipPHPadmin Posted November 26, 2010 Share Posted November 26, 2010 Hello everyone, I am attempting to delete a row from my SQL database. I'm using phpMyAdmin for my database manager. I've tried to do this two different ways (which are posted below), but each way is initiated by selecting a delete button on the previous page. I'm not getting any errors, and it is running through and displaying the "Success!" line, but not deleting anything. Thanks in advance for any help. Attempt #1: $max = mysql_query("SELECT MAX(ART_ID) AS maxAID FROM Artisan"); $numrows = mysql_num_rows($max); if($numrows == 0) { echo "Artisan was not deleted."; ?> ---some html filler that doesn't use the php above or below---- <?php } else { while (mysql_fetch_array($max)) { $ART_ID = $row['maxAID']; $deleteArtisan = mysql_query ("DELETE FROM Artisan WHERE ART_ID = '$ART_ID'"); $deleteAnswers = mysql_query ("DELETE FROM ArtisanAnswer WHERE ART_ID = '$ART_ID'"); echo "success!"; if (!$deleteArtisan || !$deleteAnswers) { die ("error: " .mysql_error()); } } } Attempt #2: $id = $_REQUEST['ART_ID']; $max = mysql_query("SELECT * FROM Artisan WHERE ART_ID = '$id'"); while(mysql_fetch_row($max)) { $deleteArtisan = mysql_query ("DELETE FROM Artisan WHERE ART_ID = '$ART_ID'"); $deleteAnswers = mysql_query ("DELETE FROM ArtisanAnswer WHERE ART_ID = '$ART_ID'"); echo "success!"; if (!$deleteArtisan || !$deleteAnswers) { die ("error: " .mysql_error()); } } Quote Link to comment Share on other sites More sharing options...
Rifts Posted November 26, 2010 Share Posted November 26, 2010 if you do this does it work? $id = $_REQUEST['ART_ID']; mysql_query("DELETE FROM Artisan WHERE ART_ID = '$id' "); mysql_query("DELETE FROM ArtisanAnswer WHERE ART_ID = '$id' "); } Quote Link to comment Share on other sites More sharing options...
ipPHPadmin Posted November 26, 2010 Author Share Posted November 26, 2010 Just tried it but it's still not deleting anything. Quote Link to comment Share on other sites More sharing options...
karimali831 Posted November 26, 2010 Share Posted November 26, 2010 something like this... <?php $max = mysql_query("SELECT MAX(ART_ID) AS maxAID FROM Artisan"); if(!mysql_num_rows($max)) { echo "Artisan was not deleted."; } else { while($row=mysql_fetch_array($max)) { $ART_ID = $row['maxAID']; mysql_query ("DELETE FROM Artisan WHERE ART_ID = '$ART_ID'") or die(mysql_error()); mysql_query ("DELETE FROM ArtisanAnswer WHERE ART_ID = '$ART_ID'") or die(mysql_error()); echo "Row(s) successfully deleted!"; } } ?> Quote Link to comment Share on other sites More sharing options...
ipPHPadmin Posted November 26, 2010 Author Share Posted November 26, 2010 Ok, I figured it out. Both of those replies would actually work. My problem was on the page passing the ART_ID into the delete page. I didn't have the correct form surround the ART_ID on the initial page. Thanks for the help Quote Link to comment Share on other sites More sharing options...
Recommended Posts
Join the conversation
You can post now and register later. If you have an account, sign in now to post with your account.