kostenloser Webspace werbefrei: lima-city


Problem mit HTML-Tabelle im PHP-Script

lima-cityForumProgrammiersprachenPHP, MySQL & .htaccess

  1. Autor dieses Themas

    whiteninja92

    Kostenloser Webspace von whiteninja92, auf Homepage erstellen warten

    whiteninja92 hat kostenlosen Webspace.

    Hallo, in meinem Script kann man ein Formular ausfüllen, um sich ein Gerät auszuleihen. Nach dem Eintrag wird man in eine Tablelle eingetragen, das klappt auch alles Prima! Aber jezt hab ich in das Script ein Dropdown-Menü hinzegefügt damit man bestimmte Geräte raussuchen kann( das Gerät wird dann in der Tabelle angezeigt. Damits einfacher ist hab ich jetzt am anfang beide Tabellen getrennt aufgebaut. Das Dropdown-Meü zum suchen funktioniert auch.
    Aber jetzt mein Problem: ich habe eine if-abfrage eingebaut so, dass nur Geräte angezeigt werden, wenn man auf den Button Absenden geklickt hat und wenn man überhaupt ein Gerät ausgewählt hat. Funktioniert zwar, aber wenn man kein Gerät ausgewählt hat, zeigt er immernoch die leere Tabelle an.
    Ich will aber, dass wenn shcon keine Daten angezeigt werden, die Tabellle auch entfällt.

    HIer mein Code für die zweite Tabelle mit if-abfrage:

    <form action=\"Buchung.php\" method=\"post\" target=\"_self\">
     Sehen sie, ob das gew&uuml;nschte Ger&auml;t frei ist
     <select name=\"Geraet2\" size=\"1\">
         <option>&nbsp;&nbsp;bitte w&auml;hlen Sie ein Ger&auml;t&nbsp;&nbsp;&nbsp;</option>
          <?php
           while($row3 = mysql_fetch_object($ergebnis4))
          {
    	    echo \"<option value=\'$row3->id\'>\"; 
    	    echo $row3->Typ.\" \".$row3->Geraet.\"</option>\";
    	  }
           ?>
    	   <input type=\"submit\" value=\" Ansehen \">
    	   <input type=\"hidden\" name=\"hidden\" value=\"hidden\">
    	   
     </form><br><br><br><br>
    <?php
    $id = $_POST[\"Geraet2\"];
    $hidden = $_POST[\"hidden\"];
    $Geraet2 = $_POST[\"Geraet2\"];
    
    
       if($hidden==\"hidden\") //sind Postdaten vorhanden
       {         
    		if ($Geraet2 == \"bitte wählen Sie ein Gerät\") // ist kein Geraet ausgewählt
    	    {
    		 echo \'Bitte wählen Sie vorher ein Gerät!\';
    	    }
    			else
    			{
    			 $abfrage3 = \"SELECT buchung.Name, buchung.vomts, buchung.bists,                           geraete.Geraet, geraete.Typ
    			 FROM `geraete`
    	         INNER JOIN `buchung`
    	         ON buchung.Geraet=geraete.id
    	         WHERE buchung.Geraet=\'$id\'\";
                 $ergebnis3 = mysql_query($abfrage3) or die (mysql_error());
    			 
    			 echo  \'<table border=\"1\">\';
    			 echo	 \'<tr>\';
    			 echo	  \'<th>Name</th>\'; 
    			 echo	  \'<th>vom</th>\';
    			 echo	  \'<th>um</th>\';
    			 echo	  \'<th>bis</th>\';
    			 echo  	  \'<th>um</th>\';
    			 echo	  \'<th>Ger&auml;t</th>\';
    			 echo	 \'</tr>\';
    			 echo	 \'<tr>\';
    			 echo	  \'<td>\';
    			}
    			
         while($row2 = mysql_fetch_object($ergebnis3))
         {
          echo \"<tr><td>\";
    	  echo $row2->Name.\"</td><td>\";
    	  echo date(\"d.m.Y\",$row2->vomts).\"</td><td>\";
    	  echo date(\"H:i\",$row2->vomts).\"</td><td>\";
    	  echo date(\"d.m.Y\",$row2->bists).\"</td><td>\";
    	  echo date(\"H:i\",$row2->bists).\"</td><td>\";
    	  echo $row2->Geraet.\" \".$row2->Typ;
    	  echo \"</td></tr>\";
    	 } 
       }
    	?>
    </table>


    die Tabelle wird doch laut code auch nur ausgegeben wenn daten vorhanden sind oder nich?
  2. Diskutiere mit und stelle Fragen: Jetzt kostenlos anmelden!

    lima-city: Gratis werbefreier Webspace für deine eigene Homepage

  3. rofl
    löschg das hidden feld und mach es einfacher:

    <form action=\"Buchung.php\" method=\"post\" target=\"_self\">
     Sehen sie, ob das gew&uuml;nschte Ger&auml;t frei ist
     <select name=\"Geraet2\" size=\"1\">
         <option>&nbsp;&nbsp;bitte w&auml;hlen Sie ein Ger&auml;t&nbsp;&nbsp;&nbsp;</option>
          <?php
           while($row3 = mysql_fetch_object($ergebnis4))
          {
            echo \"<option value=\'$row3->id\'>\"; 
            echo $row3->Typ.\" \".$row3->Geraet.\"</option>\";
          }
           ?>
           <input type=\"submit\" value=\" Ansehen \">
           
     </form><br><br><br><br>
    <?php
    if(isset($_POST[\'submit\'])) //sind Postdaten vorhanden
     {
      $id = $_POST[\"Geraet2\"];
      $Geraet2 = $_POST[\"Geraet2\"];
     
      if ($Geraet2 == \"bitte wählen Sie ein Gerät\") // ist kein Geraet ausgewählt
       {
        echo \'Bitte wählen Sie vorher ein Gerät!\';
       }
        else
       {
        $abfrage3 = \"SELECT buchung.Name, buchung.vomts, buchung.bists,                           geraete.Geraet, geraete.Typ
         FROM `geraete`
         INNER JOIN `buchung`
         ON buchung.Geraet=geraete.id
         WHERE buchung.Geraet=\'$id\'\";
    
        ergebnis3 = mysql_query($abfrage3) or die (mysql_error());
    
        if(ergebnis3 != \'\')
         {           
          echo  \'<table border=\"1\">\';
          echo     \'<tr>\';
          echo      \'<th>Name</th>\'; 
          echo      \'<th>vom</th>\';
          echo      \'<th>um</th>\';
          echo      \'<th>bis</th>\';
          echo        \'<th>um</th>\';
          echo      \'<th>Ger&auml;t</th>\';
          echo     \'</tr>\';
          echo     \'<tr>\';
          echo      \'<td>\';
                   
          while($row2 = mysql_fetch_object($ergebnis3))
           {
            echo \"<tr><td>\";
            echo $row2->Name.\"</td><td>\";
            echo date(\"d.m.Y\",$row2->vomts).\"</td><td>\";
            echo date(\"H:i\",$row2->vomts).\"</td><td>\";
            echo date(\"d.m.Y\",$row2->bists).\"</td><td>\";
            echo date(\"H:i\",$row2->bists).\"</td><td>\";
            echo $row2->Geraet.\" \".$row2->Typ;
            echo \"</td></tr>\";
           } 
        }
     }
    ?>
    </table>
  4. Autor dieses Themas

    whiteninja92

    Kostenloser Webspace von whiteninja92, auf Homepage erstellen warten

    whiteninja92 hat kostenlosen Webspace.

    wenn ich das anstatt hidden mache, gibt es keinen Unterschied. ICh machts trotzdem lieber mich hidden, weil ich noch mehrere submit Felder habe und das sonst durcheinander kommen würde.

    hab den Fehler aber gefunden, ich bei
    <option> bitte wauml;hlen Sie ein Gerauml;t ... </option>
    , gleich einen anderen Wert gegeben, weil das irgendwie Probleme mit diesn Umlauten hatte also so:
    <option value\"falsch\"> bitte wauml;hlen Sie ein Gerauml;t ... </option>

    und dann näturlich auch
    if ($Geraet2 == \"falsch\")
    {
    .....
    }


    aber trotzdem danke für deine Hilfe mergener =)


    Beitrag geändert: 18.4.2008 13:17:37 von whiteninja92

  5. wenn ich das anstatt hidden mache, gibt es keinen Unterschied. ICh machts trotzdem lieber mich hidden, weil ich noch mehrere submit Felder habe und das sonst durcheinander kommen würde.

    Tja dann nnnst du die Submitfelder einfach anders.
    Das vorteil ist das du sauberer und strikter arbeitest.Mache mal alle Fehler Warnungen und Errors on und du siehst das er dir mindestens ein duzent fehlermeldungen ausgiebt!


    Ich würd sowieso einiges anders machen als du aber naja ;)
    Jeder das seine...


    Beitrag geändert: 18.4.2008 13:45:07 von mergener
  6. Diskutiere mit und stelle Fragen: Jetzt kostenlos anmelden!

    lima-city: Gratis werbefreier Webspace für deine eigene Homepage

Dir gefällt dieses Thema?

Über lima-city

Login zum Webhosting ohne Werbung!