Author Topic: gesamte menge von ganzen artikel anzeigen als abfrage  (Read 10068 times)

Offline death2dadas

  • User
  • *
  • Posts: 8
    • View Profile
gesamte menge von ganzen artikel anzeigen als abfrage
« on: August 19, 2008, 09:42:46 AM »
hi frank,


weißt du wie ich die abfrage gestalten muss damit er mir alle produkte als tabelle mit namen und menge anzeigt...

also nicht nach gewählte produkt aus der dropdownliste, sondern einfach ne abfrage wo er mir alle produkte als tabelle wiedergibt...kannst mir helfen gruss erdal

Offline death2dadas

  • User
  • *
  • Posts: 8
    • View Profile
Re: gesamte menge von ganzen artikel anzeigen als abfrage
« Reply #1 on: August 19, 2008, 01:23:35 PM »
also ich hab so ne function gemacht, das er eben alle produkte anzeigen soll..bei deiner abfrageauswahl muss man ja aus dem selected ein produkt wählen...das ist ja dein code

Code: [Select]
if($abfrage == "menge")
{
$result = mysql_query("SELECT * FROM log INNER JOIN produkte ON (log.produkt = produkte.id) INNER JOIN lieferanten ON (log.lieferant = lieferanten.id) INNER JOIN einheiten ON (produkte.einheit = einheiten.id) WHERE log.produkt='$produkt'");
$menge = "0";
while($row = mysql_fetch_row($result))
{
if($row[8] == "1") $menge = $menge + $row[9];
elseif($row[8] == "0") $menge = $menge - $row[9];



}
$result = mysql_query("SELECT * FROM produkte WHERE id='$produkt'");
$row = mysql_fetch_row($result);
$produkt = $row[1];
$produkt_einheit = $row[4];

$result  = mysql_query("SELECT * FROM einheiten WHERE id='$produkt_einheit'");
$row = mysql_fetch_row($result);
$einheit = $row[1];

echo "Von dem Produkt <b>$produkt</b> sind noch <b>$menge $einheit vorhanden</b>.\n";




und das hab ich gemacht damit er mir alle zeigt...

Code: [Select]
function alleprodukte(){
 
$result = mysql_query("SELECT * FROM log INNER JOIN produkte ON (log.produkt = produkte.id) INNER JOIN lieferanten ON (log.lieferant = lieferanten.id) INNER JOIN einheiten ON (produkte.einheit = einheiten.id) ")or exit(mysql_error());
$menge = "0";
while($row = mysql_fetch_row($result))
{


if($row[8] == "1") $menge = $menge + $row[9];
elseif($row[8] == "0") $menge = $menge - $row[9];

$result = mysql_query("SELECT * FROM produkte");
$row = mysql_fetch_row($result);
$produkt = $row[1];
$produkt_einheit = $row[4];

$result  = mysql_query("SELECT * FROM einheiten WHERE id='$produkt_einheit'");
$row = mysql_fetch_row($result);
$einheit = $row[1];

echo "Von dem Produkt <b>$produkt</b> sind noch <b>$menge $einheit vorhanden</b>.\n";


}






aber er zeigt mir dann nur das hier
Von dem Produkt 1301 Silver 1 GB  sind noch 100 Stück vorhanden.
also er zeigt nur den 2.artikel im lager...ich habe 2 produkte in der produkte tabelle..dieser ist der 2. welchen er anzeigt..was mach ich falsch,

Offline admin

  • Administrator
  • User
  • *****
  • Posts: 688
    • View Profile
    • http://www.lordlamer.de
Re: gesamte menge von ganzen artikel anzeigen als abfrage
« Reply #2 on: August 21, 2008, 09:02:17 PM »
Hi,

also meine Funktion sieht wie folgt aus:

Code: [Select]
function alleprodukte(){
$result = mysql_query("SELECT * FROM log")or exit(mysql_error());
$menge = array();

// count all
while($row = mysql_fetch_row($result)) {
if(!isset($menge[$row[5]])) $menge[$row[5]] = 0; // set default menge for product to zero

if($row[8] == "1") $menge[$row[5]] = $menge[$row[5]] + $row[9]; // add stuff for product
else $menge[$row[5]] = $menge[$row[5]] - $row[9]; // remove stuff from product
}

// getting all products
$produkte = array();
$res = mysql_query("SELECT * FROM produkte");
while($row = mysql_fetch_assoc($res)) {
$produkte[$row['id']] = $row;
}

// getting all einheiten
$einheiten = array();
$res = mysql_query("SELECT * FROM einheiten");
while($row = mysql_fetch_assoc($res)) {
$einheiten[$row['id']] = $row;
}

foreach($menge as $key => $value) {
echo "Von dem Produkt <b>".$produkte[$key]['produktname']."</b> sind noch <b>".$value." ".$einheiten[$produkte[$key]['einheit']]['einheit']." vorhanden</b>.<br />\n";
}
}