[GastForen Programmierung/Entwicklung PHP und MySQL Datenbankabfrage

  • Suche
  • Hilfe
  • Lesezeichen
  • Benutzerliste
Themen
Beiträge
Moderatoren
Letzter Beitrag

Datenbankabfrage

acrobat11
Beiträge gesamt: 4

19. Dez 2007, 22:36
Beitrag # 1 von 8
Bewertung:
(3331 mal gelesen)
URL zum Beitrag
Beitrag als Lesezeichen
Hi Leute,
ich habe hier eine Datenbank gefüllt mit Einträgen wie z.B. Auftragsnummer, User, Datum, Code etc. Jetzt habe ich ein Suchformular in dem ich lediglich die Auftragsnummer eingebe um dann per Datenbankabfrage alle Einträge zu dieser Auftragsnummer ausgegeben bekomme. Ich habe aber nach langem Suchen keine Lösung gefunden wie die Abfrage erstellt werden soll. Wie ich eine komplette Datenbank mit allen Einträgen ausgegeben bekomme, habe ich ja schon herausgefunden. Aber das ist auf Dauer zu unübersichtlich.
Kann mir jemand weiterhelfen?
X

Datenbankabfrage

Marc Sidon
Beiträge gesamt: 262

19. Dez 2007, 23:12
Beitrag # 2 von 8
Beitrag ID: #327939
Bewertung:
(3320 mal gelesen)
URL zum Beitrag
Beitrag als Lesezeichen
Mit einer WHERE Klausel....

http://de.wikipedia.org/.../SQL#Abfrage:_SELECT

Gruß,
Doc


als Antwort auf: [#327935]

Datenbankabfrage

SabineP
Beiträge gesamt: 7586

19. Dez 2007, 23:13
Beitrag # 3 von 8
Beitrag ID: #327940
Bewertung:
(3320 mal gelesen)
URL zum Beitrag
Beitrag als Lesezeichen
Hi akrobat,

>> ich habe hier eine Datenbank

Welche Datenbank hast Du denn: Berkeley, XML, CSV, Access, Mysql, Oracle, Postgresql ... (es gibt noch mehr)?
Und dann mußt Du natürlich noch den Aufbau und die Struktur Deiner Datenbank beschreiben.
Und dann solltest Du uns noch verraten, was Dein Ziel ist.

Gruß Sabine


als Antwort auf: [#327935]
(Dieser Beitrag wurde von SabineP am 19. Dez 2007, 23:14 geändert)

Datenbankabfrage

acrobat11
Beiträge gesamt: 4

20. Dez 2007, 07:58
Beitrag # 4 von 8
Beitrag ID: #327949
Bewertung:
(3274 mal gelesen)
URL zum Beitrag
Beitrag als Lesezeichen
Hi, ich glaube ich habe gestern abend nicht zu Ende gedacht. Die Datenbank ist eine Mysql Datenbank.

Hier ist das Eingabefeld der Auftragsnummer:

Code
 <html> 
<body>


<form action="abfrage5.php" method="post">
<title>Datenbankabfrage</title>
Bitte die Auftragsnummer angeben:<p>

<input type="text" name="order" size="7" maxlength="7"/>


<input type ="submit">
</form>
</body>
</html>

Dann folgt die php Datei mit der alle zugehörigen Parameter die in der Datenbank stehen (order, user, datum, uhrzeit, ean1, ean2) ausgegeben werden. Natürlich nur die, die zu der vorher eingegebenen Auftragsnummer gehören.
Der Aufbau der Datei sieht im Moment so aus:

Code
<html> 
<html>
<body>


<?php

mysql_connect("localhost","root","root");
mysql_select_db("ean");

$sqlab = "select * from log";
$res = mysql_query($sqlab);
$num = mysql_num_rows($res);
if ($num==0) echo "keine passenden Datens‰tze gefunden";

// Tabellenbeginn
echo "<table border>";

// ‹berschrift
echo "<tr> <td>Auftragsnummer</td> <td>Operator</td>";
echo "<td>Datum</td> <td>Uhrzeit</td> <td>Code1</td>";
echo "<td>Code2</td> </tr>";

while ($dsatz = mysql_fetch_assoc($res))
{
echo "<tr>";
echo "<td>" . $dsatz["order"] . "</td>";
echo "<td>" . $dsatz["user"] . "</td>";
echo "<td>" . $dsatz["datum"] . "</td>";
echo "<td>" . $dsatz["uhrzeit"] . "</td>";
echo "<td>" . $dsatz["ean1"] . "</td>";
echo "<td>" . $dsatz["ean2"] . "</td>";
echo "</tr>";
}

// Tabellenende
echo "</table>";

?>

</body>
</html>

Hier komme ich nicht weiter. Eine Möglichkeit, das mir der Inhalt der kompletten Datenbank angezeigt habe ich, aber das wird zu unübersichtlich. Der Name der Datenbank ist ean und der Name der zu verwendeten Tabelle ist log.


als Antwort auf: [#327940]

Datenbankabfrage

Intermedia
Beiträge gesamt: 1287

20. Dez 2007, 08:31
Beitrag # 5 von 8
Beitrag ID: #327953
Bewertung:
(3268 mal gelesen)
URL zum Beitrag
Beitrag als Lesezeichen
Moin,

versuchs mal so:

Zitat
$sqlab = "select * from log where order = '".mysql_escape_string($_POST[order])."'";


Gruß Sven


als Antwort auf: [#327949]

Datenbankabfrage

acrobat11
Beiträge gesamt: 4

20. Dez 2007, 10:08
Beitrag # 6 von 8
Beitrag ID: #327970
Bewertung:
(3248 mal gelesen)
URL zum Beitrag
Beitrag als Lesezeichen
Guten Morgen Jens,
danke für die Antwort. Ich habe die Befehlszeile eingebaut. Aber es funzt nicht. Habe ich was vergessen?
Code
<html> 
<body>

<?php

mysql_connect("localhost","root","root");
mysql_select_db("ean");
//$sqlab = "select * from log ";
$sqlab = "select * from log where order = '".mysql_escape_string($_POST[order])."'";
$res = mysql_query($sqlab);
$num = mysql_num_rows($res);
if ($num==0) echo "keine passenden Datens‰tze gefunden";

// Tabellenbeginn
echo "<table border>";

// ‹berschrift
echo "<tr> <td>Auftragsnummer</td> <td>Operator</td>";
echo "<td>Datum</td> <td>Uhrzeit</td> <td>Code1</td>";
echo "<td>Code2</td> </tr>";

while ($dsatz = mysql_fetch_assoc($res))
{
echo "<tr>";
echo "<td>" . $dsatz["order"] . "</td>";
echo "<td>" . $dsatz["user"] . "</td>";
echo "<td>" . $dsatz["datum"] . "</td>";
echo "<td>" . $dsatz["uhrzeit"] . "</td>";
echo "<td>" . $dsatz["ean1"] . "</td>";
echo "<td>" . $dsatz["ean2"] . "</td>";
echo "</tr>";
}

// Tabellenende
echo "</table>";

?>

</body>
</html>

Gruß acrobat11


als Antwort auf: [#327953]

Datenbankabfrage

Intermedia
Beiträge gesamt: 1287

20. Dez 2007, 11:04
Beitrag # 7 von 8
Beitrag ID: #327986
Bewertung:
(3235 mal gelesen)
URL zum Beitrag
Beitrag als Lesezeichen
Hi,

also mit dieser Fehlerbeschreibung kann ich nichts anfangen.

Hast du schonmal anständig debug't? Gib dir die Query mal aus ob die stimmt.
Was ergibt die Variable $num?

Gruß Sven


als Antwort auf: [#327970]

Datenbankabfrage

acrobat11
Beiträge gesamt: 4

20. Dez 2007, 11:11
Beitrag # 8 von 8
Beitrag ID: #327988
Bewertung:
(3232 mal gelesen)
URL zum Beitrag
Beitrag als Lesezeichen
Hi, es funktioniert. Ich habe überall order durch nummer ersetzt. Vielleicht gab es die Probleme durch den Begriff order (Sortierte Ausgabe).

Jedenfalls vielen Dank für die professionelle Hilfe. Ich merke das ich noch einiges lernen muß.

Schöne Feiertage schon mal
acrobat11


als Antwort auf: [#327986]
X