Here is a methodology i use action=update&ID=1
action=insert action=edit on delete if the delete button is pressed that is $_POST['delete'] it will delete the entry i use a switch statement on the action request > -----Original Message----- > From: David Blomstrom [mailto:[EMAIL PROTECTED] > Sent: Tuesday, May 25, 2004 6:44 PM > To: [EMAIL PROTECTED] > Subject: Add/Edit/Delete Form Woes > > > I've been trying to learn how to make a form that > visitors can use to add, delete or modify information > on a MySQL table. I made such a form that worked when > I first jumped into MySQL a few weeks ago, but now I > can't seem to recreate it. > > I'm following a tutorial at > http://hotwired.lycos.com/webmonkey/99/21/index3a_page6.html?tw=pr > ogramming > > However, I'm adapting it to my own table... > > Database = world > Table = Continents > Rows: > CCode > Name1 > Type1 > Group > Hemisphere > ID1 > > The resulting form LOOKS great but doesn't work so > great. My table has just 12 rows, and I can see every > one of them represented: > > Africa continent (DELETE) > Antarctica continent (DELETE) > Australia continent (DELETE) > Eurasia continent (DELETE) > Middle East continent (DELETE) > North America continent (DELETE) > South America continent (DELETE) > Arctic Ocean ocean (DELETE) > Atlantic Ocean ocean (DELETE) > Indian Ocean ocean (DELETE) > Pacific Ocean ocean (DELETE) > Southern Ocean ocean (DELETE) > > ADD A RECORD > > [The following precede form input boxes] > CCode: > Name1: > Type1: > Group: > Hemisphere: > ID1: > > * * * * * * * * * * > > Everything above is linked, except the last six lines, > which merely identify form input boxes. > > If I click the linked word "Africa," it takes me to > this URL: > > http://localhost/geowebworks/php/exp3.php?CCode=caf > > That looks right; caf (for "continent-Africa") is the > value for the CCode field on the Africa row. But if I > type something in the form and press submit, the > change isn't reflected in my MySQL table. > > The weird thing is, in an earlier incarnation, I was > at least able to delete the Southern Ocean row - but > no other rows. Now that I've purged the last of the > error messages, I apparently can't add, delete or > modify anything. > > I've struck out with three different PHP forums, so > I'm wondering if the problem might lie with my MySQL > table. The tutorial made extensive use of a field > named "id," which I replaced with "CCode." Does that > particular field have to be a primary key, foreign > key, etc.? > > I posted the code below. Do you have any idea what's > wrong? > > [PHP] > <?php echo "<?xml version=\"1.0\" > encoding=\"iso-8859-1\"?".">"; ?> > <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 > Transitional//EN" > "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> > <html xmlns="http://www.w3.org/1999/xhtml"> > <head> > <title>Untitled Document</title> > <meta http-equiv="Content-Type" content="text/html; > charset=iso-8859-1" /> > </head> > > <body> > <?php > $db = mysql_connect("localhost", "USERNAME", > "PASSWORD"); > mysql_select_db("world",$db); > if ($submit) { > // here if no ID then adding else we're editing > if ($CCode) { > $sql = "UPDATE Continents SET > CCode='$CCode',Name1='$Name1',Type1='$Type1',Group='$Group',Hemisp > here='$Hemisphere',ID1='$ID1' > WHERE CCode=$CCode"; > } else { > $sql = "INSERT INTO Continents > (CCode,Name1,Type1,Group,Hemisphere,ID1) VALUES > ('$CCode','$Name1','$Type1','$Group','$Hemisphere','$ID1')"; > } > // run SQL against the DB > $result = mysql_query($sql); > echo "Record updated/edited!<p>"; > } elseif ($delete) { > // delete a record > $sql = "DELETE FROM Continents WHERE > CCode=$CCode"; > $result = mysql_query($sql); > echo "$sql Record deleted!<p>"; > } else { > // this part happens if we don't press submit > if (!$CCode) { > // print the list if there is not editing > $result = mysql_query("SELECT * FROM > Continents",$db); > while ($myrow = mysql_fetch_array($result)) { > printf("<a href=\"%s?CCode=%s\">%s %s</a> \n", > $PHP_SELF, $myrow["CCode"], $myrow["Name1"], > $myrow["Type1"], $myrow["Group"], > $myrow["Hemisphere"], $myrow["ID1"]); > printf("<a > href=\"%s?CCode=%s&delete=yes\">(DELETE)</a><br>", > $PHP_SELF, $myrow["CCode"]); > } > } > ?> > <P> > <a href="<?php echo $PHP_SELF?>">ADD A RECORD</a> > <P> > <form method="post" action="<?php echo $PHP_SELF?>"> > <?php > if ($id) { > // editing so select a record > $sql = "SELECT * FROM Continents WHERE > CCode=$CCode"; > $result = mysql_query($sql); > $myrow = mysql_fetch_array($result); > $id = $myrow["CCode"]; > $Name1 = $myrow["Name1"]; > $Type1 = $myrow["Type1"]; > $Group = $myrow["Group"]; > $Hemisphere = $myrow["Hemisphere"]; > $ID1 = $myrow["ID1"]; > // print the id for editing > ?> > <input type=hidden name="CCode" value="<?php echo > $CCode ?>"> > <?php > } > ?> > CCode:<input type="Text" name="CCode" value="<?php > echo $CCode ?>"><br> > Name1:<input type="Text" name="Name1" value="<?php > echo $Name1 ?>"><br> > Type1:<input type="Text" name="Type1" value="<?php > echo $Type1 ?>"><br> > Group:<input type="Text" name="Group" value="<?php > echo $Group ?>"><br> > Hemisphere:<input type="Text" name="Hemisphere" > value="<?php echo $Hemisphere ?>"><br> > ID1:<input type="Text" name="ID1" value="<?php echo > $ID1 ?>"><br> > <input type="Submit" name="submit" value="Enter > information"> > </form> > <?php > } > ?> > </body> > </html> > [/PHP] > > > > > > __________________________________ > Do you Yahoo!? > Friends. Fun. Try the all-new Yahoo! Messenger. > http://messenger.yahoo.com/ > > -- > MySQL General Mailing List > For list archives: http://lists.mysql.com/mysql > To unsubscribe: > http://lists.mysql.com/[EMAIL PROTECTED] -- MySQL General Mailing List For list archives: http://lists.mysql.com/mysql To unsubscribe: http://lists.mysql.com/[EMAIL PROTECTED]