MYSQLI - hjælp med udtræk fra databasen på en bestemt måde?
Hej.Jeg skal igang med at lave to forskellige udtræk fra min database med mysqli prepare statement.
Ud fra disse 4 tabeller:
`posts` (
`post_id` int(8) NOT NULL auto_increment,
`post_content` text collate utf8_danish_ci NOT NULL,
`post_date` datetime NOT NULL,
`post_topic` int(8) NOT NULL,
`post_by` int(8) NOT NULL,
`posts_cat` int(11) NOT NULL,
`posts_cat_page` int(11) NOT NULL,
PRIMARY KEY (`post_id`),
KEY `post_topic` (`post_topic`),
KEY `post_by` (`post_by`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_danish_ci AUTO_INCREMENT=121 ;¨
`topics` (
`topic_id` int(8) NOT NULL auto_increment,
`topic_subject` varchar(255) collate utf8_danish_ci NOT NULL,
`topic_date` datetime NOT NULL,
`topic_cat` int(8) NOT NULL,
`topic_by` int(8) NOT NULL,
`topic_page_cat` int(11) NOT NULL,
`images` varchar(10000) collate utf8_danish_ci NOT NULL,
PRIMARY KEY (`topic_id`),
KEY `topic_cat` (`topic_cat`),
KEY `topic_by` (`topic_by`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_danish_ci AUTO_INCREMENT=88 ;
CREATE TABLE IF NOT EXISTS `brugere` (
`id` int(11) NOT NULL auto_increment,
`name` varchar(40) collate utf8_danish_ci NOT NULL,
`email` varchar(80) collate utf8_danish_ci NOT NULL,
`password` varchar(100) collate utf8_danish_ci NOT NULL,
`name_level` int(3) NOT NULL,
`blog_over` text collate utf8_danish_ci NOT NULL,
`blog_left` text collate utf8_danish_ci NOT NULL,
`blog_right` text collate utf8_danish_ci NOT NULL,
PRIMARY KEY (`id`),
UNIQUE KEY `name_unique` (`name`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_danish_ci AUTO_INCREMENT=51 ;
`categories` (
`cat_id` int(8) NOT NULL auto_increment,
`cat_name` varchar(255) collate utf8_danish_ci NOT NULL,
`cat_description` varchar(255) collate utf8_danish_ci NOT NULL,
`page_cat` int(3) NOT NULL,
`images` varchar(1000) collate utf8_danish_ci NOT NULL,
PRIMARY KEY (`cat_id`),
UNIQUE KEY `cat_name_unique` (`cat_name`),
KEY `page_cat` (`page_cat`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_danish_ci AUTO_INCREMENT=15 ;
Som sagt bruges der mysqli prepare statement. Det jeg gerne vil er, først:
Udskrive en fra post, altså så den samme post ikke bliver vist igen og igen, men samtidig skal Limit til sidst i sætningen være ?, ?, da der skal være plads til mit pagination-system.
- Så der skal udhentes følgende, men kun én gang for tråd:
- topics.topic_id
- brugere.name
- brugere.id
- posts.post_content
- posts.post_date
- topics.topic_date
- antal rows i den specifikke tråd - altså ud fra posts.
Nummer to, skal jeg igen have limit ?,?, så mit pagination-system virker. Her skal jeg have følgende, så igen, at tråden vises én gang - denne gang er det dog topics, som bestemmer rækkefølgen og ikke posts. Følgende skal ud:
- topics.topic_id
- topics.image
- topics.topic_cat
- topics.topic_name
- topics.topic_date
- posts.post_content(den første)
- categories.cat_name
Jeg har sat 200 point til hjælp.
På forhånd tak for hjælpen.