Auswertung

BiepoN

Mitglied
Hallo zusammen,

ich hab zur Zeit keine Ahnung wie ich das realisieren soll. Und zwar hab ich eine Art bestell Formular erstellt das sich alle Artikel aus der Datebank sucht und mit einer while-schleife in das Form einbindet. Dabei bekommt jedes Feld einen namen z.B.: name='menge$i' und $i wird bei jedem durch lauf hoch gezählt.

Nun will ich auf der nächsten Seiten diese wieder in einer Schleife ausgeben lassen (wieder angezeigt bekommen, ohne immer echo $menge1, echo $menge2 uws...) nur wie mach ich das? Hab schon paar sachen probiert.

PHP:
$i = 0;
              while ($l = mysql_fetch_assoc($erg_id))
              {
                echo "<tr>";
                $i++;
                foreach ($l as $var)
                {
                  echo "<td width='200' valign='middle'><font size='2'><input value='$var' type='hidden' name='id$i'></input>";
                }
                $m = mysql_fetch_assoc($erg_bez);
                foreach ($m as $var2)
                {
                  echo "$var2</td><td><input name='menge$i' size='2' type='Text'></input>&nbsp;<font size='1'>Stück</font></td>";
                }
                echo "</tr>";
              }

So sieht die schleife aus, der die Aritkel auflistet und mit einem input feld versieht.

Hoffe ihr könnt mir helfen, gruß BiepoN
 
Gehe die übermittelten Variablen in einer Schleife durch-->
Prüfe den Namen-->fängt er mit "menge" an, dann gebe die Variable aus.(falls es das war, was du meintest)
 
So ähnlich. Ich weiss wieviele Artikel es gibt, das Formular aber nicht. So holt sich das Formular die Artikel aus der DB und schreibt sie in das Formular (ohne Feste eincodierung der Artikel). Es kann ja sein das ein Artikel hinzu kommt und bekommt eine neue nummer $menge34 oder so. Wie ich oben schon erklärt habe vergebe ich pro Formular Feld eine neue Zahl.

Wenn das Formular abgeschickt wird, soll der Kunde nocheinmal seine Daten überprüfen und dann bestätigen bei dieser Überprüfung. Sollen alle angegeben Artikel aufgelistet sein die der Kunde Bestellt hat. Nur wie bekomme ich das hin das diese Seite automatisch überpüft , wieviele 'menge' Felder gibt es und soll diese untereinander Auflisten.

Hoffe es wurde nun deutlicher. Find das schon kompliziert :D

gruß Biep
 
Naja... das sollte doch mit der Methode aus meinem vorangegangenen Posting gehen....
damit gehst du alle diese Felder, so sie vom Formular übermittelt wurden, durch....egal wieviele und egal welche Nummer hinter "menge" steht.
 
danke, nur wie bekomme ich das hin das er mir die $menge1 hochzählt? sorry arbeite noch nicht so lange mit php.
 
z.B. so
PHP:
<?php
foreach($_GET as $schluessel => $wert)
    {
    if(strpos($schluessel,'menge')==0)
        {
        echo $schluessel.' ist '.$wert.'<br>';
        }
    }
?>

mit foreach($_GET as $schluessel => $wert)
gehst du alle per GET übermittelten Variablen durch.
Dabei hast du in dieser Schleife mit "$schluessel" den Namen der jeweiligen Variable, und mit "$wert" ihren Wert verfügbar.

Mit if(strpos($schluessel,'menge')==0)
...wird jetzt nur ermittelt, ob der Name der jeweiligen Variablen mit "menge" beginnt...wenn ja, wird was ausgegeben.
 
Ok hab das verstanden. Nur gibt es mir nichts aus :( find das komisch. Sobald ich wieder nach der schleife aus Test

PHP:
<?
foreach($_GET as $schluessel => $wert)
  {
    if(strpos($schluessel,'menge')==0)
      {
        echo $schluessel.' ist '.$wert.'<br>';
      }
  }
echo $menge0;
?>

Dann gibt er mir nur ein Wert aus nähmlich den von meinem $menge0. Entferne ich diesen wieder bleibt das Dokument leer.
 
PHP:
<?
foreach($_GET as $schluessel => $wert)
  {
    if(strpos($schluessel,'menge')==0)
      {
        echo $schluessel.' ist '.$wert.'<br>';
      }
  }
echo $menge0;
?>

Schreibt dir das in ein Array daher musst du es so abfragen:
PHP:
<?
foreach($_GET as $schluessel => $wert)
  {
    if(strpos($schluessel,'menge')==0)
      {
        echo $schluessel['$wert'];
      }
  }
echo $menge0;
?>

Horffe habe mich nicht Vertan.
*keine Zeit keine Zeit* :)
 
Zuletzt bearbeitet:
Das man per echo etwas in einen Array schreibt, war mir bisher neu:)

@BiepOn
Mit welcher Methode wird das Formular versendet?

Falls es POST ist, musst du im Code natürlich das $_GET durch $_POST ersetzen. Ansonsten wüsst ich jetzt nicht, worans hapert:-(
 
Zurück