Op dit moment kan ik 1 afbeelding uploaden en die laten zien op mijn product pagina zie afbeelding:
Hier upload ik de images en product

Mijn code voor het uploaden van de formulier:
<?php
//parse
if (isset($_POST["product_name"])){
    $product_name = mysql_real_escape_string($_POST["product_name"]);
    $price = mysql_real_escape_string($_POST["price"]);
    $category = mysql_real_escape_string($_POST["category"]);
    $subcategory = mysql_real_escape_string($_POST["subcategory"]);
    $details = mysql_real_escape_string($_POST["details"]);
	    $details_simple = mysql_real_escape_string($_POST["details_simple"]);
    //Check for dupes
    $sql = mysql_query("SELECT id FROM products WHERE product_name='$product_name' LIMIT 1");
    $productMatch = mysql_num_rows($sql);
    if ($productMatch > 0){
        echo 'Sorry, this product already exists! <a href="inventory_list.php">Click Here To Return</a>';
        exit();    
    }
    //add product to db
    $sql = mysql_query("INSERT INTO products (product_name,price,category,subcategory,details,details_simple,date_added)
        VALUES('$product_name','$price','$category','$subcategory','$details','$details_simple',now())") or die(mysql_error());
    $pid = mysql_insert_id();
    $newname = "$pid.png";
    move_uploaded_file($_FILES['fileField']['tmp_name'],"../inventory_images/$newname");
	header("location: inventory_list.php");
	exit();
}
?>


Dit is de productpagina met 1 afbeelding

Mijn code op de producten pagina:
 <a href="inventory_images/<?php echo $id; ?>.png"><img src="inventory_images/<?php echo $id; ?>.png" width="190" height="150" border="0" /></a>




Maar ik wil in totaal 4 afbeeldingen kunnen uploaden en deze op de productpagina kunnen laten zien:

Zo wil ik het hebben:
Een veelgebruikte oplossing is het toevoegen van een "achtervoegsel" of "postfix" in de bestandsnaam, bijvoorbeeld _1, _2 en _3 voor drie afbeeldingen. In jouw opzet is dat ook het makkelijkst, want je kunt een deel van je code kopiëren en daarin strings zoals '_1' _2 en '_3' toevoegen voor extra bestandsnamen.
Zou u het iets specifieker kunnen uitleggen, ik ben namelijk een beginner met PHP.

[size=xsmall]Toevoeging op 28/03/2013 13:55:14:[/size]

Het is me gelukt! tnx Ward!

deze code heb ik aangepast op de product pagina:

 		</a><a href="inventory_images/<?php echo $id; ?>_3.png"><img src="inventory_images/<?php echo $id; ?>_3.png" width="190" height="150" border="0" /></a>
Dan blijf ik even zo dicht mogelijk bij wat je al hebt. Je kunt het deel van het HTML-formulier voor de uploadknop "Bestand kiezen" enkele keren herhalen en dan dit fragment hergebruiken:

<?php
$pid = mysql_insert_id();
$newname = "$pid.png";
move_uploaded_file($_FILES['fileField']['tmp_name'],"../inventory_images/$newname");
?>

Het formulier bevat nu bijvoorbeeld ergens zoiets:


<input type="file" name="fileField">


Voor drie afbeeldingen kun je daarvan bijvoorbeeld dit maken:


<input type="file" name="fileFieldOne">
<input type="file" name="fileFieldTwo">
<input type="file" name="fileFieldThree">


De aangepaste kopie van je PHP-code wordt dan bijvoorbeeld:

<?php
$pid = mysql_insert_id();
$newname = $pid . '_1.png'; // Wordt het bestand id_1.png
move_uploaded_file($_FILES['fileFieldOne']['tmp_name'],"../inventory_images/$newname");
$newname = $pid . '_2.png'; // Wordt het bestand id_2.png
move_uploaded_file($_FILES['fileFieldTwo']['tmp_name'],"../inventory_images/$newname");
$newname = $pid . '_3.png'; // Wordt het bestand id_3.png
move_uploaded_file($_FILES['fileFieldThree']['tmp_name'],"../inventory_images/$newname");
?>

Zonder de hulpvariabele $newname is het misschien ook duidelijker te zien wat je doet:

<?php
$pid = mysql_insert_id();
move_uploaded_file($_FILES['fileFieldOne']['tmp_name'], '../inventory_images/' . $pid . '_1.png');
move_uploaded_file($_FILES['fileFieldTwo']['tmp_name'], '../inventory_images/' . $pid . '_2.png');
move_uploaded_file($_FILES['fileFieldThree']['tmp_name'], '../inventory_images/' . $pid . '_3.png');
?>
ik was nog niet uitgekomen met het uploaden van de bestanden en dat de script de namen aanpassen maar nu wel dus alweer tnx!!

Reageren