php.de

Zurück   php.de > Webentwicklung > PHP Einsteiger > PHP Tipps 2008

 
 
LinkBack Themen-Optionen Thema bewerten
Alt 17.12.2008, 13:41  
Benutzer
 
Registriert seit: 17.12.2008
Beiträge: 63
matze-pe befindet sich auf einem aufstrebenden Ast
Standard [Erledigt] 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>";
  
?>

</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
matze-pe ist offline  
Sponsor Mitteilung
PHP Code Flüsterer

Registriert seit: 21.08.2005
Beiträge: 4682
PHP-Kenntnisse:
Fortgeschritten

Alt 17.12.2008, 13:48  
Erfahrener Benutzer
 
Benutzerbild von taurus
 
Registriert seit: 01.11.2008
Beiträge: 821
PHP-Kenntnisse:
Anfänger
taurus ist zur Zeit noch ein unbeschriebenes Blatt
Standard

sinnvoll wäre erst ein mal alle Fehler auszugeben...
PHP-Code:
<?php
error_reporting
(E_ALL);
ini_set('display_errors'1);
?>
dann wirst du auch merken das das heir nicht korrekt sein kann:
PHP-Code:
echo "<tr><td><a href='javascript:ansehen($row[bid])'> $row[bid] $row[lieferant] $row[user]</a></td>
              <td>$row[entscheidung_vorg]</td></tr>"

taurus ist offline  
Alt 17.12.2008, 13:57  
Benutzer
 
Registriert seit: 17.12.2008
Beiträge: 63
matze-pe befindet sich auf einem aufstrebenden Ast
Standard

Ich hab das jetzt mal geändert, dass er mir da überhaupt was ausgibt, aber es geht noch nicht


PHP-Code:
while ($row mysql_fetch_array($rs)) 
  {
     
      if (
$row["entscheidung_vorg"] == "Ja" || $row["entscheidung_vorg"] == "Nein")
      {
        echo 
"<tr><td>$row[entscheidung_vorg]</td></tr>";           
      }
      else{}
  } 

Mit dem fehlerabfang, merkert er meinen Anmeldenamen an:

Notice: Use of undefined constant user - assumed 'user' in D:\WEB\Home\dateien\antrag\bedarf\uebersicht-leitung.php on line 78


gruß
Matze
matze-pe ist offline  
Alt 17.12.2008, 14:15  
Moderator
 
Registriert seit: 06.06.2008
Beiträge: 4.849
PHP-Kenntnisse:
Fortgeschritten
Wolla ist ein wunderbarer AnblickWolla ist ein wunderbarer AnblickWolla ist ein wunderbarer AnblickWolla ist ein wunderbarer AnblickWolla ist ein wunderbarer AnblickWolla ist ein wunderbarer AnblickWolla ist ein wunderbarer Anblick
Wolla eine Nachricht über ICQ schicken
Standard

Falsch: $row[entscheidung_vorg]
Richtig: $row['entscheidung_vorg']

Die zeile sollte so lauten:
PHP-Code:
echo '<tr><td>' $row['entscheidung_vorg'] . '</td></tr>'
__________________
Warum denkt mein Hund eigentlich immer dann, wenn es an der Tür klingelt, es sei für ihn?
Wolla ist offline  
Alt 17.12.2008, 14:29  
Benutzer
 
Registriert seit: 17.12.2008
Beiträge: 63
matze-pe befindet sich auf einem aufstrebenden Ast
Standard

Ok, hab es jetzt so geändert wie Wolla es beschrieben hat. Danke



Klappt aber immernoch nicht




Sieht jetzt so aus:

PHP-Code:
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>' $row['entscheidung_vorg'] . '</td></tr>';             
      }
      else{}
  } 
Gruß
Matze
matze-pe ist offline  
Alt 17.12.2008, 14:55  
Erfahrener Benutzer
 
Benutzerbild von litterauspirna
 
Registriert seit: 24.04.2008
Beiträge: 3.072
PHP-Kenntnisse:
Anfänger
litterauspirna befindet sich auf einem aufstrebenden Ast
litterauspirna eine Nachricht über ICQ schicken
Standard

Dein Code ergibt überhaupt keinen Sinn. Warum zwei while Schleifen? Die har genau das selbe tun?

Überdenke noch mal langsam und genau was du machen willst. Denn das da ist Bullshit.

mfg der litter
__________________
Aus dem Dynamo Lande kommen wir. Trinken immer reichlich kühles Bier. Und dann sind wir alle voll, die Stimmung ist so toll. Aus dem Dynamo Lande kommen wir.
http://www.lit-web.de
litterauspirna ist offline  
Alt 17.12.2008, 15:00  
Benutzer
 
Registriert seit: 17.12.2008
Beiträge: 63
matze-pe befindet sich auf einem aufstrebenden Ast
Standard

Ich hatte erst alles in einer while Schleife.

PHP-Code:
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>"
;
      echo 
'<tr><td><a href='javascript:ansehen($row[bid])'>'$row[bid].' '.$row[lieferant].' '.$row[user].'</a></td><td>'$row['entscheidung_vorg'].'</td></tr>';  
    } 
Nur es sollte ja auch der Abschnitt "Bearbeitete Bedarfsmeldungen" als zwischen Überschirft da sein, sonst wäre diese Spalte in der Schleife drin, und man würde es 30x sehen.

Deswegen hab ich eine 2 while Schleife genommen.



Oder gibs da eine andere Möglichkeit?



mfg
matze-pe ist offline  
Alt 17.12.2008, 15:12  
Erfahrener Benutzer
 
Benutzerbild von litterauspirna
 
Registriert seit: 24.04.2008
Beiträge: 3.072
PHP-Kenntnisse:
Anfänger
litterauspirna befindet sich auf einem aufstrebenden Ast
litterauspirna eine Nachricht über ICQ schicken
Standard

Da musst du nicht zwei while Schleifen sondern zwei Abfragen. Die eine ermittelt die unbearbeiteten und die andere die bearbeiteten. Das heist mache dir ein Flag in der Tabelle was von mir aus heist edit. Hat es den Wert 0 dann ist es unbearbeitet und hat es den Wert 1 dann ist es bearbeitet.

Dann machst die erste Abfrage für die unbearbeiteten und liest die mit der while Schleife aus
PHP-Code:
Where edit =
Und dann die andere Abfrage
PHP-Code:
Where edit =
So hast du das was du brachst. Wenn du nun einen Datensatz bearbeitest udn einen Submit Button klickst musst du natürlich auch den Wert von Standartmäßig 0 auf 1 ändern.

Das ist alles was du tun musst.
__________________
Aus dem Dynamo Lande kommen wir. Trinken immer reichlich kühles Bier. Und dann sind wir alle voll, die Stimmung ist so toll. Aus dem Dynamo Lande kommen wir.
http://www.lit-web.de
litterauspirna ist offline  
Alt 17.12.2008, 15:23  
Benutzer
 
Registriert seit: 17.12.2008
Beiträge: 63
matze-pe befindet sich auf einem aufstrebenden Ast
Standard

Kannst du mir einemal genau zeigen, wo ich das genau im Quelltext einsetzen muss?

Das wäre ganz große Klasse
matze-pe ist offline  
Alt 17.12.2008, 15:27  
Erfahrener Benutzer
 
Benutzerbild von litterauspirna
 
Registriert seit: 24.04.2008
Beiträge: 3.072
PHP-Kenntnisse:
Anfänger
litterauspirna befindet sich auf einem aufstrebenden Ast
litterauspirna eine Nachricht über ICQ schicken
Standard

Soll ich dir das jetzt komplett vorprogrammieren?

Du weist wie eine Abfrage gemacht wird,du weist wie Html funktioniert,also woran hapert es noch?
__________________
Aus dem Dynamo Lande kommen wir. Trinken immer reichlich kühles Bier. Und dann sind wir alle voll, die Stimmung ist so toll. Aus dem Dynamo Lande kommen wir.
http://www.lit-web.de
litterauspirna ist offline  
 


Themen-Optionen
Thema bewerten
Thema bewerten:

Forumregeln
Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are an
Gehe zu

Ähnliche Themen
Thema Autor Forum Antworten Letzter Beitrag
[Erledigt] Textarea: Einlesen - Problem.. Softyx PHP Tipps 2008 2 05.07.2008 12:49
mysql problem mit LIKE und AND kazuya Datenbanken 10 29.10.2007 21:36
datensätze defekt oder problem mit dem einlesen? Ministry Datenbanken 4 06.07.2006 18:42
[Erledigt] Jahr und Monat aus DATE spalte in MySQL abfragen. Datenbanken 7 24.09.2005 02:40
MySQL Problem b++ PHP Tipps 2005-2 3 20.09.2005 17:53
MySQL &amp;amp; PHP: Problem mit Password() Datenbanken 10 19.09.2005 11:00
[Erledigt] Mysql + PHP und Datum Problem Datenbanken 11 31.08.2005 12:08
MySQL, PHP und ein großes Problem! Datenbanken 2 27.08.2005 10:51
Suche Tipps für Persormance-Steigerung (Geld für Nützliches) Beitragsarchiv 18 16.08.2005 10:57
Dynamische Werte übergabe? Logik Problem jesus666 PHP Tipps 2005-2 21 03.08.2005 17:30
[Erledigt] Problem MySQL 3 und 4 PHP-Fortgeschrittene 9 02.08.2005 16:45
Problem mit IIS6 und PHPMyAdmin PHP Tipps 2005-2 4 18.07.2005 21:58
[Erledigt] Mysql Abfrage Problem! PHP-Fortgeschrittene 5 27.11.2004 10:22
über PHP Daten in MySQL Tabellen updaten -- Problem PHP Tipps 2004 4 27.09.2004 21:34
Problem mit 2 gleichzeitigen MySQL abfragen PHP Tipps 2004 2 08.07.2004 13:57


Alle Zeitangaben in WEZ +1. Es ist jetzt 19:12 Uhr.




Powered by vBulletin® Version 3.7.2 (Deutsch)
Copyright ©2000 - 2012, Jelsoft Enterprises Ltd.
Search Engine Optimization by vBSEO 3.2.0
Aprilia-Forum, Aquaristik-Forum, Liebeskummer-Forum, Zierfisch-Forum, Geizkragen-Forum