If you want to display all products from the "product" table and show the products that have images in the "product image" table based on their position, you can use a query like this:
```sql
SELECT product.*, product_image.position
FROM product
LEFT JOIN product_image ON product.product_id = product_image.product_id
ORDER BY product.product_id, product_image.position;
```
This query will select all products from the "product" table and include the position from the "product image" table if an image exists for that product. It will also order the results by product_id and position.
In your PHP code, you can loop through the results and display the products along with their respective positions if images exist. For products without images, you can simply skip displaying the position information.
Here's a simplified example of how you can do this in PHP:
```php
<?php
// Your database connection code here
// Execute the SQL query
$sql = "SELECT product.*, product_image.position
FROM product
LEFT JOIN product_image ON product.product_id = product_image.product_id
ORDER BY product.product_id, product_image.position";
$result = mysqli_query($connection, $sql);
// Check if there are results
if (mysqli_num_rows($result) > 0) {
$currentProductId = null;
// Loop through the results
while ($row = mysqli_fetch_assoc($result)) {
$productId = $row["product_id"];
$position = $row["position"];
// Check if it's a new product
if ($productId !== $currentProductId) {
echo "Product ID: " . $productId . "<br>";
$currentProductId = $productId;
}
// Display position if it exists
if (!is_null($position)) {
echo "Position: " . $position . "<br>";
}
// Display other product details here
echo "Product Name: " . $row["product_name"] . "<br>";
// Add more product details as needed
echo "<hr>";
}
} else {
echo "No products found.";
}
// Close the database connection
mysqli_close($connection);
?>
```
This code will display all products and their respective positions from the "product image" table if images exist for those products. Products without images will be displayed without position information.