Product etalage naast elkaar

Overzicht Reageren

Sponsored by: Vacatures door Monsterboard

Ventilatiesysteem Productontwikkelaar HBO WO Verwa

Samengevat: Zij bieden flexibele ventilatiematerialen, geluidsdempers, rookgasafvoer producten en industrieslangen. Ben jij een technisch productontwikkelaar? Heb jij ervaring met het ontwikkelen van nieuwe producten? Vaste baan: Technisch Productontwikkelaar HBO WO €3.000 - €4.000 Zij bieden een variëteit aan flexibele ventilatiematerialen, geluiddempers, rookgasafvoer producten, industrieslangen en ventilatieslangen voor de scheepsbouw. Met slimme en innovatieve materialen zorgen wij voor een gezonde en frisse leefomgeving. Deze werkgever is een organisatie die volop in ontwikkeling is met hardwerkende collega's. Dit geeft goede ontwikkelingsmogelijkheden. De branche van dit bedrijf is Techniek en Engineering. Functie: Voor de vacature als Technisch Productontwikkelaar Ede Gld HBO WO ga

Bekijk vacature »

Dennis Keldermans

Dennis Keldermans

07/01/2011 19:59:59
Quote Anchor link
Hallo,

Ik heb een script voor het tonen van de producten in een webwinkel. Enkel is het probleem dat deze allemaal onder elkaar getoond worden, ik ben al een tijd aan het proberen deze naast elkaar te krijgen. Maar dit lukt me maar niet.

Iemand enige suggesties?


Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
<?php
include "connect2.php";


// producten laten zien
$sql = "SELECT productid, productomschrijving, productnaam, productprijs
       FROM product
       ORDER BY productnaam"
;    // dit is dus de query om de producten op te halen
      
       $query = mysql_query($sql) or die (mysql_error()."<br>in file ".__FILE__." on line ".__LINE__); // als de query niet uitgevoerd wordt geeft die een foutmelding met bestandsnaam en regelnummer
$num = mysql_num_rows($query); // Het aantal producten

if(empty($num)) {
  echo "<p>Er zijn geen producten gevonden.</p>\n";
}
else {
  // Laat de producten zien
  while($product = mysql_fetch_object($query)) {
    echo "<form action=\"add.php\" method=\"post\" align='right'>\n";
    echo "<fieldset style='width: 250px;'>";
    echo "<input type=\"hidden\" name=\"productid\" value=\"".$product->productid."\" />\n";
    echo "<p><strong>".$product->productnaam."</strong><br />\n";
    echo "Prijs per stuk: EUR ".$product->productprijs."<br />\n";
    echo "Omschrijving: <br />".$product->productomschrijving."<br />\n";
    echo "Aantal: <input type=\"text\" name=\"hoeveelheid\" size=\"2\" maxlength=\"2\" value=\"1\" />\n";
    echo "<input type=\"image\" src=\"images/cart_add.png\" /></p>\n";
    echo "<img src='images/pay.png' height='125' width='125' align='left'  />";
    echo "</fieldset>";
    echo "<br />";
    echo "</form>\n";

  }
}

      

?>
Gewijzigd op 07/01/2011 20:00:14 door Dennis Keldermans
 
PHP hulp

PHP hulp

12/01/2025 20:13:44
 
Obelix Idefix

Obelix Idefix

07/01/2011 20:06:11
Quote Anchor link
Maak je voor elk product een nieuw formulier aan?

Maak 1 formulier en in de while regel je de opmaak.
Meest simpele, niet door iedereen gewaardeerde, manier is om gebruik te maken van een tabel. Anders zul je moeten kijken naar een opmaak met css.
 
Jens V

Jens V

07/01/2011 20:16:03
Quote Anchor link
Om items in een tabel te krijgen, moet je gebruik maken van de %-operator. Als je een tellertje bijhoudt in welke iteratie je zit (in het hoeveelste product) kan je testen wanneer je aan een volgende rij moet beginnen. Dit doe je zo:
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
6
<?php
if($teller % $aantal_per_rij_min_1 == 0)
{

    // hier je tr-tags
}
?>
Gewijzigd op 07/01/2011 20:16:27 door Jens V
 
Bas Cost Budde

Bas Cost Budde

07/01/2011 20:50:06
Quote Anchor link
Je kunt je items in een container zetten die je in de css laat vloeien:

display: block;
float: left;
 
Dennis Keldermans

Dennis Keldermans

09/01/2011 01:15:47
Quote Anchor link
Hoi,

Ik heb er nu een table van gemaakt, maar ik krijg er nog niet 2x naast elkaar.


Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
<?php
include "connect2.php";



// producten laten zien
$sql = "SELECT productid, productomschrijving, productnaam, productprijs
       FROM product
       ORDER BY productnaam"
;    // dit is dus de query om de producten op te halen
      
       $query = mysql_query($sql) or die (mysql_error()."<br>in file ".__FILE__." on line ".__LINE__); // als de query niet uitgevoerd wordt geeft die een foutmelding met bestandsnaam en regelnummer
$num = mysql_num_rows($query); // Het aantal producten

if(empty($num)) {
  echo "<p>Er zijn geen producten gevonden.</p>\n";
}
else {
    // Laat de producten zien
    while($product = mysql_fetch_object($query)) {
        echo "<form action=\"add.php\" method=\"post\" align='right'>"
        . "<table style='width: 450px;'>"
            . "<input type=\"hidden\" name=\"productid\" value=\"".$product->productid."\" />"
            . "<tr>"
                . "<th>" . $product->productnaam . "</th>"
            . "</tr>"
            . "<tr>"
                . "<td>Prijs</td><td>€".$product->productprijs."</td>"
            . "</tr>"
            . "<tr>"
                . "<td>Omschrijving</td><td style='width: 200px;'>".$product->productomschrijving."</td>"
            . "</tr>"
            . "<tr>"
                . "<td>Aantal</td>"
                . "<td><input type=\"text\" name=\"hoeveelheid\" size=\"2\" maxlength=\"2\" value=\"1\" /></td>"
                . "<td><input type=\"image\" src=\"images/cart_add.png\" /></td>"
                . "<td><img src='images/pay.png' align='left'  /></td>"
            . "</tr>"
        . "</table>"
        . "<hr \>";
    }
}
  
?>
 
- SanThe -

- SanThe -

09/01/2011 01:23:03
 
- Ariën  -
Beheerder

- Ariën -

09/01/2011 08:11:59
Quote Anchor link
Waarom gebruik je geen <li>?
het is immers een opsomming, als je deze op display:block zet, een width meegeeft en float:left doet, komen ze op een semantieke en WEB 2.0 manier naast elkaar.

Kloten met tabellen is nergens voor nodig.
 
Obelix Idefix

Obelix Idefix

09/01/2011 10:33:17
Quote Anchor link
Dennis Keldermans op 09/01/2011 01:15:47:
Ik heb er nu een table van gemaakt, maar ik krijg er nog niet 2x naast elkaar.


Kijk eens naar de broncode van de output. Je zult dan zien dat je telkens een nieuwe table aanmaakt ipv 1 table met kolommen en rijen.

Andere opmerking: je escaped momenteel erg veel. Is het niet handiger om je echo te beginnen/eindigen met een ' ipv ". En waarom elke regel beginnen met . " Kun je toch zonder doen? Wordt dan zoiets:

Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
. '<table style="width: 450px;">
            <input type="hidden" name="productid" value='.$product->productid.' />
             <tr>
                 <th>'. $product->productnaam .'</th>'
Gewijzigd op 09/01/2011 10:38:54 door Obelix Idefix
 



Overzicht Reageren

 
 

Om de gebruiksvriendelijkheid van onze website en diensten te optimaliseren maken wij gebruik van cookies. Deze cookies gebruiken wij voor functionaliteiten, analytische gegevens en marketing doeleinden. U vindt meer informatie in onze privacy statement.