| PHP Developer Forum Hier habt ihr die Möglichkeit, eure Skriptprobleme mit anderen Anwendern zu diskutieren. Seid so fair und beantwortet auch Fragen von anderen Anwendern. Dieses Forum ist sowohl für ANFÄNGER als auch für PHP-Profis! Post your PHP questions here! |
 |

07-12-2011, 13:23
|
|
darklord9579
Registrierter Benutzer
|
|
Registriert seit: Dec 2011
Beiträge: 20
|
|
Suche in einer Datenbank über ein fomular mit 2 eingabefeldern
hallo,
ich steh grad völlig auf dem schlauch. folgendes ziel:
ich möchte anhand von zwei kriterien in einer datenbank suchen und mir das ergebnis anzeigen lassen. die zwei kriterien sollen aus zwei formularfeldern genommen werden.
im kern ja eigentlich nichts anderes als eine einfache abfrage mit zwei werten, aber ich komm da grad gar nicht weiter.
kann jemand mir vielleicht ein beispiel posten, an dem ich verfolgen kann wie ich das anstellen könnte?
vielen dank im voraus.
|

07-12-2011, 13:31
|
Kropff
  Administrator
|
|
Registriert seit: Mar 2002
Ort: Köln
Beiträge: 11.308
|
|
Hast du schon eigene Ansätze?
Peter
__________________
Nukular, das Wort ist N-u-k-u-l-a-r (Homer Simpson)
Meine Seite
|

07-12-2011, 13:37
|
|
darklord9579
Registrierter Benutzer
|
|
Registriert seit: Dec 2011
Beiträge: 20
|
|
Naja, hab einiges versucht, auch aus unterschiedlichen tutz. aber bsiher ohne Erfolg. Iche denke mir fehlt der richtige Ansatz oder Anfang. Aber z. Z. sehe den wald vor lauter Bäumen nicht glaub ich. Was ich jetzt bisher habe (ist mehr als nicht viel)
<?php
$host = "localhost"; // Adresse des Datenbankservers, meistens localhost
$user = "xxxx"; // Ihr MySQL Benutzername
$pass = "xxx"; // Ihr MySQL Passwort
$db = "xxx"; // Name der Datenbank
$link = mysql_connect($host, $user, $pass) or die ("Keine Verbindung zu der Datenbank möglich.");
mysql_select_db($db, $link);
?>
</p><form id="form1" name="form1" method="post" action="auswertung.php">
<table width="390" border="0">
<tr>
<td width="122">Postleitzahl </td>
<td width="148"><input name="PLZ" type="text" id="plz" /></td>
<td width="98"> </td>
</tr>
<tr>
<td>Verbrauch in kW/h</td>
<td><input name="verbrauch" type="text" id="verbrauch" /></td>
<td> </td>
</tr>
<tr>
<td>Preis aktueller Anb. </td>
<td><input name="anbpreis" type="text" id="anbpreis" /></td>
<td><input name="suchen" type="submit" id="suchen" value="Suchen" /></td>
</tr>
<tr>
<td> </td>
<td> </td>
<td> </td>
</tr>
<tr>
<td>Ersparnis</td>
<td> </td>
<td> </td>
</tr>
</table>
<p> </p>
<p> </p>
<p> </p>
<p>
<?php
$result = mysql_query("SELECT PLZ, Ort, Tarifbezeichnung, Grundpreis, Arbeitspreis FROM daten");
if (!$result) {
echo 'Abfrage konnte nicht ausgeführt werden: ' . mysql_error();
exit;
}
$row = mysql_fetch_row($result);
echo $row[0];
echo $row[1];
echo $row[2];
echo $row[3];
echo $row[4];
echo $row[5];
mysql_close($link);
?>
</form>
Geändert von Berni (07-12-2011 um 14:34 Uhr)
Grund: Password gelöscht
|

07-12-2011, 13:49
|
Kropff
  Administrator
|
|
Registriert seit: Mar 2002
Ort: Köln
Beiträge: 11.308
|
|
PHP-Code:
$query = 'SELECT
PLZ,
Ort,
Tarifbezeichnung,
Grundpreis,
Arbeitspreis
FROM
daten
WHERE PLZ = \''.$_POST['PLZ'].'\'
AND verbrauch= \''.$_POST['verbrauch'].'\'';
So zum Beispiel. Achte aber später auf SQL-Injections.
Peter
__________________
Nukular, das Wort ist N-u-k-u-l-a-r (Homer Simpson)
Meine Seite
|

07-12-2011, 13:52
|
Wotan
Master  
|
|
Registriert seit: Sep 2001
Ort: Berlin
Beiträge: 5.348
|
|
Was soll den nachher angezeigt werden, entweder PLZ oder Verbrauch?
|

07-12-2011, 14:37
|
|
darklord9579
Registrierter Benutzer
|
|
Registriert seit: Dec 2011
Beiträge: 20
|
|
nun, die postleitzahl brauche ich um den entsprechenden datensatz zu finden. dieser soll dann zur kontrolle angezeigt werden, also z.B.
01067 Dresden "Tarifbezeichnung" "Grundpreis" "Arbeitspreis"
den wert verbrauch brauche u.a. um ggf. werte rauszusuchen, die größer oder kleiner als der eigegebene wert sind. aber auch später für eine berechnung.
|

07-12-2011, 14:55
|
|
darklord9579
Registrierter Benutzer
|
|
Registriert seit: Dec 2011
Beiträge: 20
|
|
was mir grade auffällt, das ergebnis ist doch sehr zusammengezogen und z. T. sehr gekürzt, so dass es kaum lesbar ist. wie kann ich das ändern und anpassen?
|

07-12-2011, 15:27
|
|
darklord9579
Registrierter Benutzer
|
|
Registriert seit: Dec 2011
Beiträge: 20
|
|
ok, ich sag ja der wald und die bäume.
so, nun hab ich aber ein anderes problem, ich musste für die suche das feld ort hinzufügen, statt dem verbrauch. nun zeigt er mir aber keine ergebnisse oder eine fehlermeldung mehr an.
weiß jemand rat?
<?php
$host = "localhost"; // Adresse des Datenbankservers, meistens localhost
$user = "web15"; // Ihr MySQL Benutzername
$pass = "be-11224"; // Ihr MySQL Passwort
$db = "usr_web15_3"; // Name der Datenbank
$link = mysql_connect($host, $user, $pass) or die ("Keine Verbindung zu der Datenbank möglich.");
mysql_select_db($db, $link);
?>
</p><form id="form1" name="form1" method="post" action="auswertung.php">
<table width="772" border="0">
<tr>
<td width="188">Postleitzahl </td>
<td width="165"><input name="PLZ" type="text" id="plz" /></td>
<td width="79">Ort</td>
<td width="322"><input name="ort" type="text" id="ort" /></td>
</tr>
<tr>
<td>Verbrauch in kW/h</td>
<td><input name="verbrauch" type="text" id="verbrauch" /></td>
<td> </td>
<td> </td>
</tr>
<tr>
<td>Preis aktueller Anb. </td>
<td><input name="anbpreis" type="text" id="anbpreis" /></td>
<td> </td>
<td> </td>
</tr>
<tr>
<td> </td>
<td> </td>
<td><input name="suchen" type="submit" id="suchen" value="Suchen" /></td>
<td> </td>
</tr>
<tr>
<td>Ersparnis</td>
<td> </td>
<td> </td>
<td> </td>
</tr>
</table>
<p> </p>
<table width="877" border="0">
<tr>
<th width="115" scope="col"><?php
$query = 'SELECT PLZ, Ort, Tarifbezeichnung, Grundpreis, Arbeitspreis FROM daten WHERE PLZ = \''.$_POST['PLZ'].'\' AND Ort= \''.$_POST['Ort'].'\'';
$result = mysql_query($query);
if (!$result) {
echo 'Abfrage konnte nicht ausgeführt werden: ' . mysql_error();
exit;
}
$row = mysql_fetch_row($result);
echo $row[5];
mysql_close($link);
?>
</th>
<th width="221" scope="col"> </th>
<th width="168" scope="col"> </th>
<th width="168" scope="col"> </th>
<th width="171" scope="col"> </th>
</tr>
<tr>
<td><?php echo $row[0];?> </td>
<td><?php echo $row[1];?> </td>
<td><?php echo $row[2];?> </td>
<td><?php echo $row[3];?> </td>
<td><?php echo $row[4];?> </td>
<td><?php echo $row[5];?> </td>
</tr>
<tr>
<td> </td>
<td> </td>
<td> </td>
<td> </td>
<td> </td>
</tr>
<tr>
<td> </td>
<td> </td>
<td> </td>
<td> </td>
<td> </td>
</tr>
<tr>
<td> </td>
<td> </td>
<td> </td>
<td> </td>
<td> </td>
</tr>
</table
><p> </p>
<p> </p>
<p>
</form>
|

07-12-2011, 15:29
|
|
darklord9579
Registrierter Benutzer
|
|
Registriert seit: Dec 2011
Beiträge: 20
|
|
icg glaub ich mach feierabend. fehler gefunden. man sollte schon auf die groß und kleinschreibung achten. sorry
|
|
Aktive Benutzer in diesem Thema: 1 (Registrierte Benutzer: 0, Gäste: 1)
|
|
|
| Themen-Optionen |
|
|
| Thema bewerten |
|
|
Forumregeln
|
Es ist Ihnen nicht erlaubt, neue Themen zu verfassen.
Es ist Ihnen nicht erlaubt, auf Beiträge zu antworten.
Es ist Ihnen nicht erlaubt, Anhänge hochzuladen.
Es ist Ihnen nicht erlaubt, Ihre Beiträge zu bearbeiten.
HTML-Code ist aus.
|
|
|
|
PHP News
|