FUDforum
Fast Uncompromising Discussions. FUDforum will get your users talking.

Home » Imported messages » comp.lang.php » Edit a record?
Show: Today's Messages :: Polls :: Message Navigator
Switch to threaded view of this topic Create a new topic Submit Reply
Edit a record? [message #176199] Sat, 03 December 2011 13:28 Go to next message
Charles is currently offline  Charles
Messages: 13
Registered: February 2011
Karma: 0
Junior Member
I'm working on an application. I'm trying to implement an update
process that pulls a record out of a MySQL database, updates it, and
puts it back.

Broken down, let's assume I have a database made up of the fields:
First_name
Last_name
Month_of_birth
Day_of_birth
Year_of_birth

The steps I'm finding so far are:

1) Present a data entry form to enter the values on which the record
selection is based (an HTML form with 5 input fields...this I have).
1) Query the database for the record (Submit for processing to a PHP
script that opensn the database and submits the values for a SELECT
query).

=========={this is where I am stuck]==============

3) Somehow import those returned values into a form for editting.
4) Indicate somehow (in the form) which records (if more than one)
need to be returned as updated to the MySQL database.
5) Somehow post to database

Anyone have any ideas they'd care to share?
Re: Edit a record? [message #176200 is a reply to message #176199] Sat, 03 December 2011 13:45 Go to previous messageGo to next message
Luuk is currently offline  Luuk
Messages: 329
Registered: September 2010
Karma: 0
Senior Member
On 03-12-2011 14:28, Charles wrote:
> I'm working on an application. I'm trying to implement an update
> process that pulls a record out of a MySQL database, updates it, and
> puts it back.
>
> Broken down, let's assume I have a database made up of the fields:
> First_name
> Last_name
> Month_of_birth
> Day_of_birth
> Year_of_birth
>
> The steps I'm finding so far are:
>
> 1) Present a data entry form to enter the values on which the record
> selection is based (an HTML form with 5 input fields...this I have).
> 1) Query the database for the record (Submit for processing to a PHP
> script that opensn the database and submits the values for a SELECT
> query).
>
> =========={this is where I am stuck]==============
>
> 3) Somehow import those returned values into a form for editting.
> 4) Indicate somehow (in the form) which records (if more than one)
> need to be returned as updated to the MySQL database.
> 5) Somehow post to database
>
> Anyone have any ideas they'd care to share?

show the code you have so far,

and specify more exact why 'you are stuck'....

--
Luuk
Re: Edit a record? [message #176201 is a reply to message #176199] Sat, 03 December 2011 14:15 Go to previous messageGo to next message
Denis McMahon is currently offline  Denis McMahon
Messages: 634
Registered: September 2010
Karma: 0
Senior Member
On Sat, 03 Dec 2011 05:28:42 -0800, Charles wrote:

> 1) Present a data entry form to enter the values on which the record
> selection is based (an HTML form with 5 input fields...this I have). 1)
> Query the database for the record (Submit for processing to a PHP script
> that opensn the database and submits the values for a SELECT query).
>
> =========={this is where I am stuck]==============
>
> 3) Somehow import those returned values into a form for editting. 4)
> Indicate somehow (in the form) which records (if more than one) need to
> be returned as updated to the MySQL database. 5) Somehow post to
> database
>
> Anyone have any ideas they'd care to share?

A select query assembled using the data submitted in your form (perhaps
the name data) and selecting the date of birth data from the table

don't forget to escape any parameters from the form that you use in a
query, also you might want to validate names (alphabetics, spaces,
hyphens, possibly ' characters eg O'Leary) and dates (numerics only).

You might use an html "select" and option list for the month?

Anyway, use mysql / myslqli / pdo functions (your choice, it's up to you
at this point) to open and interrogate the db to read the record you want
to edit, then display that record in a form using the value attribute or
the selectedindex of the various html form elements to display the data
you want to edit.

Then, once the data is edited and submitted, the next script will update
the records in the table.

If you look in the php documentation for the relevant database functions
there are a lot of examples.

Rgds

Denis McMahon
Re: Edit a record? [message #176204 is a reply to message #176199] Sat, 03 December 2011 18:57 Go to previous messageGo to next message
Beauregard T. Shagnas is currently offline  Beauregard T. Shagnas
Messages: 154
Registered: September 2010
Karma: 0
Senior Member
Charles wrote:

> I'm working on an application. I'm trying to implement an update
> [snip]
> Month_of_birth
> Day_of_birth
> Year_of_birth
>
> Anyone have any ideas they'd care to share?

Why the three separate fields? Just use a single DATE field (name it DOB
or similar) and if/when you need to report on it, simply pull out the
month or day or year parts in your SELECT query. Much easier to maintain.

Trying to arrange, say, a sort by birthdate with your method is much more
difficult.

--
-bts
-This space for rent, but the price is high
Re: Edit a record? [message #176207 is a reply to message #176199] Sun, 04 December 2011 13:54 Go to previous messageGo to next message
Arno Welzel is currently offline  Arno Welzel
Messages: 317
Registered: October 2011
Karma: 0
Senior Member
Charles, 2011-12-03 14:28:

> I'm working on an application. I'm trying to implement an update
> process that pulls a record out of a MySQL database, updates it, and
> puts it back.
>
> Broken down, let's assume I have a database made up of the fields:
> First_name
> Last_name
> Month_of_birth
> Day_of_birth
> Year_of_birth

Why not a simple DATE field for birth date?

> The steps I'm finding so far are:
>
> 1) Present a data entry form to enter the values on which the record
> selection is based (an HTML form with 5 input fields...this I have).
> 1) Query the database for the record (Submit for processing to a PHP
> script that opensn the database and submits the values for a SELECT
> query).
>
> =========={this is where I am stuck]==============
>
> 3) Somehow import those returned values into a form for editting.

Why are you stuck? It's simple to output the values just using echo or
similar. E.g. if the first name fetched from the db is in $db_firstname:

<input
name="firstname"
type="text"
value="<?php echo htmlspecialchars($db_firstname); ?>" />

And if you want to present multiple records, just create names with an
index, starting with 0 and increased by 1 with every record:

<input
name="firstname[<?php echo $db_rownum; ?>]"
type="text"
value="<?php echo htmlspecialchars($db_firstname); ?>" />

> 4) Indicate somehow (in the form) which records (if more than one)
> need to be returned as updated to the MySQL database.

One possible way:

Pass the original values as hidden fields in the form, so you can
compare the modified fields with the original values.

OR:

Store the current values as session variables, so you can compare them
with the modified fields.

> 5) Somehow post to database

Just use an UPDATE statement in MySQL.

Maybe you should start by learnig the basics about SQL databases,
session handling and form handling in PHP.


--
Arno Welzel
http://arnowelzel.de
http://de-rec-fahrrad.de
Re: Edit a record? [message #176208 is a reply to message #176207] Sun, 04 December 2011 14:14 Go to previous messageGo to next message
Dennis is currently offline  Dennis
Messages: 17
Registered: February 2004
Karma: 0
Junior Member
On Sun, 04 Dec 2011 14:54:58 +0100, Arno Welzel <usenet(at)arnowelzel(dot)de>
wrote:

> Maybe you should start by learnig the basics about SQL databases,
> session handling and form handling in PHP.

It sounds like someone's homework to me.

--

Dennis
Re: Edit a record? [message #176248 is a reply to message #176207] Sat, 10 December 2011 13:02 Go to previous messageGo to next message
Charles is currently offline  Charles
Messages: 13
Registered: February 2011
Karma: 0
Junior Member
I have the process down to a fine science in getting data to the
database from the user interface, and I have it down for generating
basidc reports to a printer. I've also designed closed database
applications in the past, so they are not new to me.

Designing a web interface is what's new. Care to recommend any good
references for this part of the project?

On Dec 4, 6:54 am, Arno Welzel <use...@arnowelzel.de> wrote:
> Charles, 2011-12-03 14:28:
>
>> I'm working on an application.  I'm trying to implement an update
>> process that pulls a record out of a MySQL database, updates it, and
>> puts it back.
>
>> Broken down, let's assume I have a database made up of the fields:
>> First_name
>> Last_name
>> Month_of_birth
>> Day_of_birth
>> Year_of_birth
>
> Why not a simple DATE field for birth date?
>
>> The steps I'm finding so far are:
>
>> 1)  Present a data entry form to enter the values on which the record
>> selection is based (an HTML form with 5 input fields...this I have).
>> 1)  Query the database for the record (Submit for processing to a PHP
>> script that opensn the database and submits the values for a SELECT
>> query).
>
>> =========={this is where I am stuck]==============
>
>> 3)  Somehow import those returned values into a form for editting.
>
> Why are you stuck? It's simple to output the values just using echo or
> similar. E.g. if the first name fetched from the db is in $db_firstname:
>
> <input
>    name="firstname"
>    type="text"
>    value="<?php echo htmlspecialchars($db_firstname); ?>" />
>
> And if you want to present multiple records, just create names with an
> index, starting with 0 and increased by 1 with every record:
>
> <input
>    name="firstname[<?php echo $db_rownum; ?>]"
>    type="text"
>    value="<?php echo htmlspecialchars($db_firstname); ?>" />
>
>> 4)  Indicate somehow (in the form) which records (if more than one)
>> need to be returned as updated to the MySQL database.
>
> One possible way:
>
> Pass the original values as hidden fields in the form, so you can
> compare the modified fields with the original values.
>
> OR:
>
> Store the current values as session variables, so you can compare them
> with the modified fields.
>
>> 5)  Somehow post to database
>
> Just use an UPDATE statement in MySQL.
>
> Maybe you should start by learnig the basics about SQL databases,
> session handling and form handling in PHP.
>
> --
> Arno Welzelhttp://arnowelzel.dehttp://de-rec-fahrrad.de
>
>
Re: Edit a record? [message #176252 is a reply to message #176248] Sat, 10 December 2011 19:22 Go to previous message
The Natural Philosoph is currently offline  The Natural Philosoph
Messages: 993
Registered: September 2010
Karma: 0
Senior Member
Charles wrote:
> I have the process down to a fine science in getting data to the
> database from the user interface, and I have it down for generating
> basidc reports to a printer. I've also designed closed database
> applications in the past, so they are not new to me.
>
> Designing a web interface is what's new. Care to recommend any good
> references for this part of the project?
>

Seriously you don't need them.

Just understand a bit about how the browser form and server side code
interact, and then get coding.

Expect top rewrite the first app when you learn a little more, but don't
stop doing it. Its probably best to hack first learn later until you
have got the fundamental features sorted, then go back to the manuals to
find out where you really should have been more careful.

I.e. hacking a script is a fast way to learn, then expect to rewrite it
PROPERLY later AFTER you have read a few manuals.
..
  Switch to threaded view of this topic Create a new topic Submit Reply
Previous Topic: regex help
Next Topic: Upload xlsx /xls and save to DB using minimum memory?
Goto Forum:
  

-=] Back to Top [=-
[ Syndicate this forum (XML) ] [ RSS ]

Current Time: Sun Nov 10 14:43:30 GMT 2024

Total time taken to generate the page: 0.02325 seconds