Abfragen problem, Werte aus MySQL einlesen

Einklappen
X
 
  • Filter
  • Zeit
  • Anzeigen
Alles löschen
neue Beiträge

  • Abfragen problem, Werte aus MySQL einlesen

    Hallo,
    ich bin neu hier und habe gleich schon ein problem


    ich habe eine Übersichtsseite, auf der alle Bestellungen angezeigt werden.

    Bei offenen Bestellungen, werden alle angeziegt, bei der das feld entscheidung_vorg = leer ist, und da hat manb die Möglichkeit diese Bestellung zu genehmigen.

    Bei bearbeitete Bestellungen, werden alle Einträge angezeigt die = Ja oder = Nein sind.

    PHP-Code:
    <table border="0" width="600" hight="700">
      <tr>
        <td colspan='2'><? echo "<b>Eingeloggt als:</b> "; echo $_SESSION['user_name']; echo " ("; echo $_SESSION['abteilung'];echo ")";   ?></td>
        <td><input type="button" onclick="location='logout.php'" value="ausloggen"></td>
      </tr>
      <tr><td colspan='3'><hr width='100%'></td></tr>
      <tr valign="bottom">
        <td><h3>Offene Bedarfsmeldung</h2></td>
        <td><h3>genehmigen?</h2></td>
      </tr>
      
      <?php
      $vorgesetzter 
    $_SESSION['user_name'];
      if (
    $conn mysql_connect("localhost","user","pw") or die(mysql_error()) )
      {
        
    mysql_select_db(bedarf,$conn) or die(mysql_error()); 
        
    $sql "select distinct bid,vorgesetzter,lieferant,user,entscheidung_vorg from bestellung where vorgesetzter = '$vorgesetzter'";
        
    $rs  mysql_query($sql,$conn);
      }
        
      while (
    $row mysql_fetch_array($rs)) 
      {
        if (
    $row["entscheidung_vorg"] == "")
        {
           echo 
    "<tr><td><a href='javascript:ansehen($row[bid])'> $row[bid] $row[lieferant] $row[user]</a></td>
            <td>
               <form action='genehmiger_send.php' method='GET' enctype='text/plain'>
               <input type='hidden' name='id' value='
    $row[bid]'>
               <input type='submit' name='antwort' value='Ja'>&nbsp;<input type='submit' name='antwort' value='Nein'>
               </form>
           </td></tr>"
    ;
        }
        else {}
      } 

      echo 
    "<tr><td colspan='3'><hr width='100%'></td></tr>
            <tr valign='bottom'>
            <td><h3>Bearbeitete Bedarfsmeldung</h2></td>
            <td><h3>genehmigt?</h2></td>
            </tr>"
    ;

      while (
    $row mysql_fetch_array($rs)) 
      {
         
          if (
    $row["entscheidung_vorg"] == "Ja" || $row["entscheidung_vorg"] == "Nein")
          {
            echo 
    '<tr><td><a href='javascript:ansehen($row[bid])'> $row[bid] $row[lieferant] $row[user]</a></td>
                  <td>'
    .$row[entscheidung_vorg].'</td></tr>';           
          }
          else{}
      }    
      
      
        echo 
    "<tr><td colspan='3'><hr width='100%'></td></tr></table>";

    Bei mir werden nur die angezeigt die = leer sind, keine bearbeiteten (liegen aber 30 stück in der Datenbank vor)

    Ich vermute mal, dass mein Fehler in der zweiten while Schleife liegt.
    Habt ihr da einen Tipp wie ich das verbessern kann?


    Derzeit sieht es so aus:




    Vielen Dank im Vorraus

    Gruß
    Matze

  • #2
    hi,
    deine Frage ist ganz einfach zu beantworten..
    hier
    PHP-Code:
    while ($row mysql_fetch_array($rs)) 
      {
        if (
    $row["entscheidung_vorg"] == "")
        {
           echo 
    "<tr><td><a href='java script:ansehen($row[bid])'> $row[bid] $row[lieferant] $row[user]</a></td>
            <td>
               <form action='genehmiger_send.php' method='GET' enctype='text/plain'>
               <input type='hidden' name='id' value='
    $row[bid]'>
               <input type='submit' name='antwort' value='Ja'>&nbsp;<input type='submit' name='antwort' value='Nein'>
               </form>
           </td></tr>"
    ;
        }
        else {}
      } 
    durchläufst du das gesamte resultset und hast somit in der zweiten while-Schleife keine zu bearbeitenden Einträge mehr im Resultset.
    Des Rätsels lösung hast du auch schon in der ersten whileschleife stehen, nämlich das else{}. In die geschweiften Klammern schreibst du nun einfach deinen Code aus der zweiten while-schleife, wobei du das if weglassen kannst

    Kommentar

    Lädt...
    X