Hi I am not an expert but could XML be an answer?
The author(s) gets a screen designed by you, looking like the screen you will publish, with type in text boxes (name="short_text1", name="short_text2" etc )where the text will be. When you store the input from the form you end up with <article> <pic1>pic1.jpg</pic1> <short_text1>Short paragraph of text under pic1 </short_text> <pic2>pic2.jpg</pic2> <short_text2>Short paragraph of text under pic2</short_text2> <long_text>lots of stuff, lots of stuff, lots of stuff, lots of stuff, lots of stuff, </long_text> </article> which allows you to add any structure to the data, but store all the article in a single searchable text field. Otherwise maybe you could use two tables. CREATE TABLE Article ( ArticleID int(11), Title char(50), Start_date date default NULL, End_date date default NULL, End_actionID int(11) NOT NULL default '0', Template_file varchar(50) , ) CREATE TABLE Article_components ( ArticleID int(11), Component_name char(50), Content text ) Article_components might contain :- +----------+----------------+--------------------------------+ |ArticleID | Component_name | Content | +----------+----------------+--------------------------------+ |123 | pic1 | pic1.jpg | +----------+----------------+--------------------------------+ |123 | short_text1 | Short text etc etc | +----------+----------------+--------------------------------+ |123 | pic2 | pic2.jpg | +----------+----------------+--------------------------------+ |123 | short_text2 | Short text etc etc | +----------+----------------+--------------------------------+ Which you could search and return the articleID, which you could then use to retive the article in full. To display, loop thro the result <tr><td>$row["pic1"]</td><td>$row["pic2"]</td><td>$row["pic3"]</td></tr> <tr><td>$row["short_text1"]</td><td>$row["short_text2"]</td><td>$row["short_ text3"]</td></tr> Just a few thoughts Be interested to know how you do this in the end. Peter ----------------------------------------------- Excellence in internet and open source software ----------------------------------------------- Sunmaia www.sunmaia.net [EMAIL PROTECTED] tel. 0121-242-1473 ----------------------------------------------- > -----Original Message----- > From: Monty [mailto:[EMAIL PROTECTED]] > Sent: 07 March 2002 20:51 > To: [EMAIL PROTECTED] > Subject: Re: [PHP-DB] Best way to store/retrieve content?? > > > Hi Peter, thanks a lot for your advice. I think where I'm stuck is how to > best store certain types of articles in a data table. Interviews would be > easy, because it's just paragraphs of text with an inline photo here and > there. The more structured articles are trickier and I can't > figure out how > to use the same Article table for all articles. Using the example > I gave in > a previous message, here's a rough page layout of one of these structured > articles: > > +-----------+ +-----------+ +-----------+ > | image 1 | | image 2 | | image 3 | > +-----------+ +-----------+ +-----------+ > > Short paragraph Short paragraph Short paragraph > of text under of text under of text under > the image. the image. the image. > > +-----------+ +-----------+ +-----------+ > | image 4 | | image 5 | | image 6 | > +-----------+ +-----------+ +-----------+ > > Short paragraph Short paragraph Short paragraph > of text under of text under of text under > the image. the image. the image. > > > If I have one field in the Article table for full_content (which > works just > fine for interviews), how could I enter the above type of article > into this > table so that the template will know to separate each element > text block and > match it up with the associated image? Is this a matter of > writing a special > parsing function that would take the following from the full_content > field... > > > <img src="image1.jpg"> > > Short paragraph of text under the image. > > <img src="image2.jpg"> > > Short paragraph of text under the image. > > ...and format break it down into an array so it can then be > formatted on the > page as illustrated above? > > My real block is how the set up the database more than the templates. As I > mentioned, I'm trying to keep all articles in one data table so > searches can > be easily done on all articles. > > Thanks! > > Monty > > > > > > From: [EMAIL PROTECTED] (Peter Lovatt) > > Newsgroups: php.db > > Date: Thu, 7 Mar 2002 20:11:00 -0000 > > To: "Monty" <[EMAIL PROTECTED]>, <[EMAIL PROTECTED]> > > Subject: RE: [PHP-DB] Best way to store/retrieve content?? > > > > Hi > > > > I have done a similar thing, and found that you can store just > the text in > > the database. > > > > I added 'Short_content' which was a leader, and some other fields for > > management. > > > > I designed a few templates in Dreamweaver and embeded a > function to display > > the content in the page > > > > eg <tr><td><?php print_content($ContentID) ?></td></tr> > > > > The function basically pulls the content from the database and > prints it. > > You can just print the text, or you can add HTML in the > function to give a > > particular layout. You can use the same principal to link > images, or you can > > hard code them into the page. > > > > If you want to be more sophisticated you can use a number of > templates and > > store the one to use in the record, giving. > > > > display.php?contentID=1234 > > > > ->query db to get template for 'Article 1234' > > > > ->output 'template_1.htm' which has the correct layout, and the > function for > > this article embedded in it > > > > > > CREATE TABLE S_content ( > > ContentID int(11) NOT NULL auto_increment, > > Title varchar(100) NOT NULL default '', > > Description varchar(250) default NULL, > > Short_content text, > > Full_content text, > > UserID int(11) default NULL, > > Start_date date default NULL, > > End_date date default NULL, > > End_actionID int(11) NOT NULL default '0', > > Template_file varchar(50) , > > > > PRIMARY KEY (ContentID), > > KEY ContentID(ContentID), > > ) > > > > HTH > > > > Peter > > > > ----------------------------------------------- > > Excellence in internet and open source software > > ----------------------------------------------- > > Sunmaia > > www.sunmaia.net > > [EMAIL PROTECTED] > > tel. 0121-242-1473 > > ----------------------------------------------- > > > > > -- > PHP Database Mailing List (http://www.php.net/) > To unsubscribe, visit: http://www.php.net/unsub.php > -- PHP Database Mailing List (http://www.php.net/) To unsubscribe, visit: http://www.php.net/unsub.php