View Full Version : Major Problems with including retrieving data from two tables.

08-21-2007, 10:44 AM
Greetings All,
I am currently writing an application that has two tables.


CONTENT FIELDS = id, title, description, theme_id
THEME_IMAGE FIELDS = theme_id, title, filename

I have already written a script to output information from both tables. However, I am now working on a script to UPDATE the database from the web browser.

The CONTENT table is used to store information about an article. Each article has a theme image, but many articles can use the same theme image, hence the need for separate THEME_IMAGE table.
Now, when I go to edit the CONTENT article, there is a <select> field which should display ALL the contents from THEME_IMAGE table. This is so that when a user is editing the CONTENT article, they can select a new THEME IMAGE if one hasn't been selected already.

Now, the problem I am getting is I don't know how to interlink two tables (CONTENT + IMAGE_THEME) so that the user can see the IMAGE_THEME Image Title in the <select> <option> tags, and when they choose it, the "id" is written to the CONTENT theme_id table so that it can be referenced later.

Also, if there is a theme image already choosen, it should display that.

<td>Theme Image:</td>
<td><select name='Theme_Image'>
<? if($onecontent->Theme_Image!="") { ?>
<option SELECTED value='<?php echo($Theme_Image); ?>'> <?php echo($Theme_Image); ?> </option>
<? } else {?>
<option value=''> No Theme_Image </option>
<? }?>
$sql = "select * from theme_image order by Theme_Title";
$images = mysql_query($sql, $db);
while($oneimage = mysql_fetch_object($images))
echo ("<option value='$oneimage->File'>$oneimage->Theme_Title</option>");

08-21-2007, 05:22 PM
I believe all you need to do is use the theme_id for the value of each option. When the form is submitted the theme_id the user selected will be available via $_POST (or $_GET if you are using method="get") and you can then run an UPDATE query to plop the selected theme_id into the appropriate row in your content table.

echo "<option value=\"$oneimage->theme_id\">$oneimage->Theme_Title</option>";