Berechnung in PHP

ich habe mir was anderes überlegt:
ich habe eine andere tabelle wo ich die werte speichere:

MTBF | Komponentenbezeichung
100 drucker
23 LCD
11 mouse
2 Antenne
. .....
. .......
. .........
. ..........

dann überprüfe ich jede ausgegebene Komponente und gebe dann die entschprende werte aus in input felder aus

hier mal Code:
PHP:
<?php include("includes/connect.php"); ?>
<p style="font-family:Arial,sans-serif; font-size:18px; color:blue">System: <?php echo $_POST['System'];?></p>
<hr size="1" noshade>

<?php $phpself=$_SERVER["PHP_SELF"]; ?>
<form action="<?php print "$phpself"; ?>" method="GET">
<input type="submit" name="ausrechnen">

<hr size="1" noshade>
<br>

<?php

if (isset($_GET['System']))
{
      $System = $_GET['System'];
}
elseif (isset($_POST['System']))
{
      $System = $_POST['System'];
}
$query_string = mysql_query("SELECT DISTINCT Komponentenbezeichnung FROM haupttabelle where Systembezeichnung ='$System'",$connection);
$column_count = mysql_num_fields($query_string);


		print ("<input type='hidden' value='$System' name='System'>");
		
        print("<TABLE BORDER=2>\n");
        print("<TR ALIGN=LEFT VALIGN=TOP >");
        print("<TD><p><STRONG>KOMPONENTEN</STRONG></p></TD>\n");
        print("<TD><p><STRONG>MTBF</STRONG></p></TD>\n");
        print("<TD><p><STRONG>MTBIF</STRONG></p></TD>\n");
        print("<TD><p><STRONG>MTBSC</STRONG></p></TD>\n");
        print("<TD><p><STRONG>MENGE</STRONG></p></TD>\n");
        print("<TD><p><STRONG>MTBF_New</STRONG></p></TD>\n");
        print("<TD><p><STRONG>MTBIF_New</STRONG></p></TD>\n");
        print("<TD><p><STRONG>MTBSC_New</STRONG></p></TD>\n");
        print("</TR>\n");
        print("<TR ALIGN=LEFT VALIGN=TOP >");
        print("</TR>\n");
        
        while ($row = mysql_fetch_array($query_string)){
            print("<TR ALIGN=LEFT VALIGN=TOP>");
            for ($column_num = 0;$column_num < $column_count;$column_num++)
            print ("<TD>$row[$column_num]</td>");
           
            $query_stringA = mysql_query("SELECT MTBFWERT FROM mtbfwerte where komponentenbezeichnung ='$row[$column_num]'",$connection);
            $MeineAusgabe = mysql_fetch_array($query_stringA);
            print ("<TD><input type='text' name='MTBF' value='$MeineAusgabe[$column_num]'></td>");			
			
            print ("<TD><p></p></TD>");
            print ("<TD><p></p></TD>");
            print ("<TD><input type=’text’ name=’eingabe$column_num’ size=’22’ maxlength=’14’></TD>");
 
            if(isset($_GET['ausrechnen']))
           {
                $feld="eingabe" . $column_num;
               $ergebnis= $row['column_num']*$_GET[$feld];

            print ("<TD><input type='text' name='ergebnis$column_num'     value='$ergebnis'></TD>");
            }
            else
            {
            print ("<TD><input type='text' name='ergebnis$column_num' value=''></TD>");
            }

            print ("<TD><p></p></TD>");
            print ("<TD><p></p></TD>");
            print("</TR>\n");
        }
        
        print("</TABLE>\n");
                
?>

<?php include("includes/disconnect.php"); ?>
</form>

leider bleiben die MTBF felder leer ?
was ist da falsch
 
Zuletzt bearbeitet:
$row['feldname'] So musst du keine Schleife druchlaufen lassen
und du weißt was für ein Feld du willst.


PHP:
print ("<input type='hidden' value='System' name='System'>");

         print("<TABLE BORDER=2>\n");
        print("<TR ALIGN=LEFT VALIGN=TOP >");
        print("<TD><p><STRONG>KOMPONENTEN</STRONG></p></TD>\n");
        print("<TD><p><STRONG>MTBF</STRONG></p></TD>\n");
        print("<TD><p><STRONG>MTBIF</STRONG></p></TD>\n");
        print("<TD><p><STRONG>MTBSC</STRONG></p></TD>\n");
        print("<TD><p><STRONG>MENGE</STRONG></p></TD>\n");
        print("<TD><p><STRONG>MTBF_New</STRONG></p></TD>\n");
        print("<TD><p><STRONG>MTBIF_New</STRONG></p></TD>\n");
        print("<TD><p><STRONG>MTBSC_New</STRONG></p></TD>\n");
        print("</TR>\n");
        print("<TR ALIGN=LEFT VALIGN=TOP >");
        print("</TR>\n");
        
        while ($row = mysql_fetch_array($query_string)){
            print("<TR ALIGN=LEFT VALIGN=TOP>");
            $komponent=$row['Komponentenbezeichnung'];
            $anzahl=$row['Komponenentenanzahl'];
            print ("<TD>$komponent</td>");
            print ("<TD><p></p></TD>");
            print ("<TD><p></p></TD>");
            print ("<TD><input type=’text’ name=’eingabe$anzahl’ size=’22’ maxlength=’14’></TD>");
 
            if(isset($_GET['ausrechnen']))
           {
                $feld="eingabe" . $anzahl;
               $ergebnis= $anzahl]*$_GET[$feld];

            print ("<TD><input type='text' name='ergebnis$anzahl'     value='$ergebnis'></TD>");
            }
            else
            {
            print ("<TD><input type='text' name='ergebnis$anzahl' value='eingabe'></TD>");
            }

            print ("<TD><p></p></TD>");
            print ("<TD><p></p></TD>");
            print("</TR>\n");
        }
        
        print("</TABLE>\n");
                
?>

<?php include("includes/disconnect.php"); ?>
</form>
 
Warning: mysql_fetch_array(): supplied argument is not a valid MySQL result resource in C:\inetpub\wwwroot\Systemeergebnis.php on line 49

Warning: mysql_num_fields(): supplied argument is not a valid MySQL result resource in C:\inetpub\wwwroot\Systemeergebnis.php on line 30

folgende Fehler habe ich
 
1.) Schau mal ob die Abfrage richtig formuliert ist,
2.) Ob die Spalten existieren
3.) Sollte es noch immer nicht gehen
füge mysql_error() ein wie unten ...

PHP:
<?php include("includes/connect.php"); ?>
<p style="font-family:Arial,sans-serif; font-size:18px; color:blue">System: <?php echo $_POST['System'];?></p>
<hr size="1" noshade>

<?php $phpself=$_SERVER["PHP_SELF"]; ?>
<form action="<?php print "$phpself"; ?>" method="GET">
<input type="submit" name="ausrechnen">

<hr size="1" noshade>
<br>

<?php

if (isset($_GET['System']))
{
      $System = $_GET['System'];
}
elseif (isset($_POST['System']))
{
      $System = $_POST['System'];
}
$query_string = mysql_query("SELECT DISTINCT Komponentenbezeichnung FROM haupttabelle where Systembezeichnung ='$System'",$connection) or die(mysql_error());
        print ("<input type='hidden' value='$System' name='System'>");
        
        print("<TABLE BORDER=2>\n");
        print("<TR ALIGN=LEFT VALIGN=TOP >");
        print("<TD><p><STRONG>KOMPONENTEN</STRONG></p></TD>\n");
        print("<TD><p><STRONG>MTBF</STRONG></p></TD>\n");
        print("<TD><p><STRONG>MTBIF</STRONG></p></TD>\n");
        print("<TD><p><STRONG>MTBSC</STRONG></p></TD>\n");
        print("<TD><p><STRONG>MENGE</STRONG></p></TD>\n");
        print("<TD><p><STRONG>MTBF_New</STRONG></p></TD>\n");
        print("<TD><p><STRONG>MTBIF_New</STRONG></p></TD>\n");
        print("<TD><p><STRONG>MTBSC_New</STRONG></p></TD>\n");
        print("</TR>\n");
        print("<TR ALIGN=LEFT VALIGN=TOP >");
        print("</TR>\n");
 
wie ist das denn mit der javascript Lösung?
ich hab mir ein paar beispiele angeckut und es scheint einfacher zu sein!
geht das denn javascript in einem PHP script !
ich hab um ehrlich zu sein die Schnauze voll und die seite muss bis nächste woche laufen
ich wäre dankbar für jeden Vorschlag:)
 
Warning: mysql_fetch_array(): supplied argument is not a valid MySQL result resource in C:\inetpub\wwwroot\Systemeergebnis.php on line 49

Warning: mysql_num_fields(): supplied argument is not a valid MySQL result resource in C:\inetpub\wwwroot\Systemeergebnis.php on line 30

Wenn das kommt dann bekommt mysql_fetch_array eine Falsche
anfrage ...

Also gib mal mysql_error() und als dir die Fehlermeldung ausgeben!
 
Zurück