Eén project heeft veel schuifregelaars, hiervoor moet je twee tabellen hebben, projecten en projectschuifregelaars met een relatie.
projecten tabel:
CREATE TABLE `projects` (
`id` int(11) NOT NULL AUTO_INCREMENT,
`project_name` varchar(50) NOT NULL
)
projectsliders:
CREATE TABLE `projectsliders` (
`id` int(11) NOT NULL AUTO_INCREMENT,
`solution` varchar(50) NOT NULL,
`image` text NOT NULL,
`alt` text NOT NULL,
`project_id` int(11),
PRIMARY KEY (`id`)
) ENGINE=InnoDB AUTO_INCREMENT=2 DEFAULT CHARSET=latin1
projectSliders ophalen voor één project, hoofdpagina - projectSlider.php
De beste manier om projectsliders voor één project op te halen, is door OOP te gebruiken. U kunt een methode aanroepen en project-ID doorgeven en de methode zou u een array met projectsliders voor dit project moeten retourneren, maar ik ben uw code aan het verbeteren.
error_reporting(E_ALL);
ini_set('display_errors', 1);
$servername = 'localhost';
$username = 'root';
$password = '';
try {
$con = new PDO('mysql:host='.$servername.';dbname=mb', $username,
$password);
$con->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION);
//$page = mysql_real_escape_string($page);
//SQL Call
$sql_project = "SELECT * FROM projectsliders ps inner join projects p
on p.id = ps.project_id
WHERE p.project_name = '. $project_page .'";
if ($project_stmt = $con->prepare($sql_project)) {
$project_stmt->execute();
$count = project_stmt->rowCount();
if( $count != 0 ){
$project_rows = $project_stmt->fetchAll(PDO::FETCH_ASSOC);
foreach ($project_rows as $project_row) {
$project_solution = $project_row['solution'];
$project_img = $project_row['image'];
$project_alt = $project_row['alt'];
$project_img = '<img class="home-comment-profile-pic" src=" '.
$project_img .'" alt="' . $project_alt .'">';
echo '<section id="solProj">';
echo '<div class="projSlide">';
echo $project_img;
echo '</div>';
echo '</div>';
}
}else{
echo 'No projects found.';
}
}
}
catch(PDOException $e) {
echo "Connection failed: " . $e->getMessage();
}
Individuele pagina's:
error_reporting(E_ALL);
ini_set('display_errors', 1);
$project_page = "enclosures";
include_once("projectSlider.php");
Ik hoop dat dit je kan helpen, geniet van coderen.