online 1
gast (50)

/ Forum / Skripte(PHP,ASP,Perl...)

Skripte(PHP,ASP,Perl...)Skripte(PHP,ASP,Perl...)

Fragevon hasiii vom 03.02.2021, 14:17 Options

Select und Option Proobelm

Hallo liebe leute!!
Habe ein problem mit einem Select option...die kategorie nehme ich aus der Datenbank, dann auf der nächsten Seite sollen alle produkte dieser kategorie angezeigt werden...Weiß nicht, wie ich den den ausgewählten Datensatz bekomme, weil mit einem normalen Post geht das nicht....schauts euch mal an:

Artikel.php

<td><select name="kategorie" id="kategorie">
<?php
$result = mysql_query("SELECT DISTINCT kategorie FROM energie");
while($row = mysql_fetch_assoc($result)){
$kategorie = $row -> kategorie;
echo "<option value=>$row[kategorie]";
}
?>
</select>


Antwort schreiben

Antwort 1 von son_quatsch vom 03.02.2021, 14:35 Options

Nein!

while ($row = mysql_fetch_assoc($result)) {
  echo '<option value="'. $row['kategorie']. '">'. $row['kategorie']. '</option>';
}

Antwort 2 von Theresa123 vom 03.02.2021, 15:55 Options

Naja da ändert sich gar nichts...

Antwort 3 von son_quatsch vom 03.02.2021, 16:20 Options

Doch. Das HTML-Konstrukt dafür ist dann zumindest richtig. Aber was du mir nicht zeigst, kann ich auch nicht auf Fehler analyisieren...

Antwort 4 von hasiii vom 03.02.2021, 16:43 Options

Das ist die admin.php...

<?php
session_start();
if(!isset($_SESSION['user_res']) || $_SESSION['user_res'] == "")
	die("Required<code></code> Session not found!");
	$ses = $_SESSION['user_res'];
	$user_data = explode("_",$ses);
	$uID = $user_data[0];
?>

<form action="/foodcoach/admin/inc/warenkorb/Artikel2.php" method="post">
          <table width="247" height="72" border="1">
            <tr>
              <td width="237">Kategorie</td>
            </tr>
            <tr>
              <td><select name="kategorie" id="kategorie">
              <option value="" selected="selected">Bitte ausw&auml;hlen</option>
              <?php
          $result = mysql_query("SELECT DISTINCT kategorie FROM energie");
while ($row = mysql_fetch_assoc($result)) {
	echo '<option value="'. $row['energieid']. '">'. $row['kategorie']. '</option>';
}  
        ?> 
                </select></td>
            </tr>
          </table>
  <p>
    <input type="submit" name="weiter" id="weiter" value="weiter" />
  </p>
</form>
</body> 
</html> 

<? 
@MYSQL_CLOSE($db); 
?> 


Hier die Seite, auf die weitergeleitet wird, admin2.php

<?php
session_start();
if(!isset($_SESSION['user_res']) || $_SESSION['user_res'] == "")
die("Required<code></code> Session not found!");
$ses = $_SESSION['user_res'];
$user_data = explode("_",$ses);
$uID = $user_data[0];
$db_server = "localhost";
$db_name = "foodcoach";
$db_user = "root";
$db_passwort = "";
$db = @MYSQL_CONNECT($db_server,$db_user,$db_passwort) or die ("Konnte keine Verbindung zur Datenbank herstellen!");
$db_check = @MYSQL_SELECT_DB($db_name);
?>
<html>
<body>

<table><tr><td><?php $kategorie=$_POST['kategorie'];
echo "<h1>$kategorie</h1>";?></td></tr>
<tr><td>Produkt</td><td>Kalorien</td></tr>
<?php
$result=mysql_query("SELECT produkt, kcal FROM energie WHERE kategorie='$kategorie'");
while($row = mysql_fetch_assoc($result)){
echo "<tr><td>'.$row['produkt'].'</td><td>'.$row['kcal'].'</td></tr>";
}
?>
</body>
</html>
<?
@MYSQL_CLOSE($db);
?>

Antwort 5 von son_quatsch vom 03.02.2021, 17:07 Options

Die Seite leitet aber auf Artikel2.php weiter. Was bekommst du denn überhaupt? Die richtige Seite aber keine Datensätze? Gar keine Seite? Was genau bedeutet "funktioniert nicht"? Du musst es so erklären, als ob ich keine deiner Unterlagen kenne...

Antwort 6 von hasiii vom 03.02.2021, 17:25 Options

Die Seite schon, aber ich krieg die daten aus dem POST nicht zurück...

Antwort 7 von son_quatsch vom 04.02.2021, 08:15 Options

...dann überprüfe, ob in dem HTML-Quelltext (also der im Browser, nicht der, den du erstellst) der absendenden Seite so aufgebaut ist:
- enthält den <FORM>-Tag,
- der <SELECT>-Tag innerhalb trägt den Namen "kategorie"
- die einzelnen <OPTION>-Tags haben als VALUE auch einen Wert, der nicht leer ist

Bau in die Zielseite zu Anfang noch folgendes ein:
<?php
  print_r( $_POST );

Antwort 8 von Supermax vom 04.02.2021, 09:01 Options

          $result = mysql_query("SELECT DISTINCT kategorie FROM energie");
while ($row = mysql_fetch_assoc($result)) {
	echo '<option value="'. $row['energieid']. '">'. $row['kategorie']. '</option>';
} 


Da ist der Fehler, dein SELECT liefert die Spalte "energieid" nicht zurück, d.h. $row['energieid'] ist immer null bzw. leer!

Ähnliche Themen

Überprüfung ob erster eintrag eines Array eine Zahl ist
jessica  25.07.2007 - 10 Hits - 4 Antworten

SELECT, DELETE, usw. aus URL filtern
Mel  18.08.2007 - 25 Hits - 1 Antwort

Oracle SELECT Problem
dan_duesseldorf  29.11.2007 - 101 Hits - 1 Antwort

wenn option = ja zeige textfeld 1 sonst textfeld 2
stefanie79  23.04.2008 - 8 Hits - 14 Antworten

MySQL Select Befehl
Deathfun  19.07.2008 - 15 Hits - 1 Antwort

Hinweis

Diese Frage ist schon etwas älter, Sie können daher nicht mehr auf sie antworten. Sollte Ihre Frage noch nicht gelöst sein, stellen Sie einfach eine neue Frage im Forum..

Neue Einträge

Version: supportware 1.9.150 / 10.06.2022, Startzeit:Thu Jan 8 21:07:44 2026