Re: Parsing Data, Table to Form - Mailing list pgsql-php
From | Paul Lynch |
---|---|
Subject | Re: Parsing Data, Table to Form |
Date | |
Msg-id | 40A057F6.4040503@exemail.com.au Whole thread Raw |
In response to | Parsing Data, Table to Form ("Yasmine Kedoo" <yazkedoo@hotmail.com>) |
List | pgsql-php |
Hi Yasmine, Using your example as much as I can and assuming a single row is being selected for updating. Your patid will be used in place of my keyoftabledata (key of table data) variable. In admininfo.php: <?php for ($rw = 0; $rw < $maxrows; $rw++) { for ($fld = 0; $fld < $maxfields ; $fld++) { echo pg_Result($result,$rw,$fld); } // I will assume that the key field is the first field in your table result pg_result($result,0,$patid); // add this line - you could combine in one line echo "<form method=post action=updaad.php>\n"; echo "<input type=\"hidden\" name=\"patid\"value=\"$patid\" >" // add this line echo "<input type=\"submit\" value=\"Update\" >" // add this line as well echo "</form>"; } // this will give an update button for each row of data from your result table // I have left out the html table so as to simplify and avoid html issues between tables and forms // The only information being passed to updaat.php is the name patid and its value ?> So updaat.php will have the following: <?php $patid = $_POST["patid']; // now use $patid to query the db for the row to update $rowtoupdate = pg_exec($dbcon, "select patid, name, surname, phone, email from your_table_name where patid=$patid" ); // patid is int ? // where your_table_name is the name in postgresql // and patid, name, surname, phone, email are the column names in the table // // add error checking etc here // next lines assumes single row is available in $rowtoupdate list($formatid,$formname,$formsurname,$formphone,$formemail) = pg_fetch_row($rowtoupdate, 0 ); // need to start new form echo "<form method=post action=writeat.php>\n"; // name the next php program here echo "Admin ID Number: <input type=text name=\"formadid\" value=\"$formatid\"><br />\n"; echo "Name: <input type=text name=\"formname\" value=\"$formname\"><br />\n"; echo "Surname: <input type=text name=\"formsurname\" value=\"$formsurname\"><br />\n"; echo "Phone: <input type=text name=\"formphone\" value=\"$fornphone\"><br />\n"; echo "Email: <input type=text name=\"formemail\" value=\"$formemail\"><br />\n"; // and so on for all your data // need an update or accept button before writing back data changes echo "<input type=\"submit\" value=\"Make Changes\" >" echo "</form>"; ?> So finally we have the program that puts the data back to the database. I have used writeat.php in this example, but use whatever name fits into your naming convention. The essence of writeat.php: <?php $patid = $_POST["formatid"]; $name = $_POST["formname"]; $surname = $_POST["formsurname"] $phone = $_POST["formphone"]; $email = $+POST["formemail"]; $dbcon = pg_connect("dbname=your_db_name user=your_user"); pg_exec( $dbcon, "update your_table_name set patid=$patid, // allowing the key to be changed !!!! name='$name', surname='$surname', phone='$phone', email='$email' where patid=$patid" ); ?> This is only one way of doing the required steps and it leaves all error checking out . One thing I don't like is allowing key fields to be changed so easily by operator input, but you may have valid reasons for this. Generally I hide the key fields from update screens unless required or useful to see. My real programs have a lot of additional stuff but I will try and find the simplest one to send to you off line. Paul Yasmine Kedoo wrote: > Hi Paul. > > I think u do understand what i'm trying to do :-) , but i'm not too > sure i understand what u've told me ;-) > > Do i need to repeat the following line for each bit of data in the table: > > echo "<input type=\"hidden\" name=\"patid\"value=\"$keyoftabledata\" >"; > > where 'patid' is the ID field in the database. But I am unsure what to > do with $keyoftabledata. What does this relate to? > > What does $keyforrow relate to here: > > $keyforrow = $_POST["yourkeyid"]; > > Do i need to do this line a number of times for all data in the html > table? > > If u dont mind, it would be nice if u could send me some sample > programs relating to this topic. > > Thanx Again, > > Yasmine >