AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Programmierung allgemein Programmieren allgemein [PHP, mySQL] Formular und Query formulieren
Thema durchsuchen
Ansicht
Themen-Optionen

[PHP, mySQL] Formular und Query formulieren

Ein Thema von Ultimator · begonnen am 15. Jul 2006 · letzter Beitrag vom 15. Jul 2006
Antwort Antwort
Benutzerbild von Ultimator
Ultimator

Registriert seit: 17. Feb 2004
Ort: Coburg
1.860 Beiträge
 
FreePascal / Lazarus
 
#1

[PHP, mySQL] Formular und Query formulieren

  Alt 15. Jul 2006, 16:19
Hallo auch

Da mein Kumpel mich gefragt hat, ob ich ihm mal was helfen könnte, und das ausgeartet ist, darf ich mich jetzt mit PHP und mySQL beschäftigen

Folgendes:
Ich hab ein Formular geschrieben, wo man 3 Dinge eingeben kann, aber keines davon muss. Auf Buttonklick werden diese 3 Werte, egal ob leer oder nicht, an ein PHP-Script per GET weitergeleitet. Dort möchte ich nun mit diesen Werten eine DB-Abfrage starten, die etwa so aussehen soll:
SELECT * FROM TestTable WHERE Feld1=$_GET["Spielername"] AND Feld2=$_GET["Allianz"] AND Feld3=$_GET["Koordinaten"]; Das klappt ja auch, aber eben nur, wenn alle 3 Werte von meinem Formular übermittelt werden. Es soll aber eben auch möglich sein, nach nur zwei, einem oder gar keinem Kriterium zu suchen, um die Suche in der DB entsprechend eingrenzen zu können.

Muss ich da wirklich mit X IFs arbeiten, oder geht das auch komfortabler?

Hoffentlich könnt ihr mir helfen, denn ich bin bei der Wärme nicht im Stande, den Überblick zu behalten, wenn ich das mit den vielen IFs machen muss

Soltle noch was unklar sein, einfach fragen

MfG, Ulti
Julian J. Pracht
  Mit Zitat antworten Zitat
Benutzerbild von Ultimator
Ultimator

Registriert seit: 17. Feb 2004
Ort: Coburg
1.860 Beiträge
 
FreePascal / Lazarus
 
#2

Re: [PHP, mySQL] Formular und Query formulieren

  Alt 15. Jul 2006, 16:19
//edit: Ächz, aus versehn den Zitat-Buttan anstelle des Edit-Buttons erwischt...
Julian J. Pracht
  Mit Zitat antworten Zitat
monta

Registriert seit: 18. Okt 2004
Ort: Dresden
141 Beiträge
 
#3

Re: [PHP, mySQL] Formular und Query formulieren

  Alt 15. Jul 2006, 16:40
^^einmal hätte auch gelangt

Du könntest doch mittels If überprüfen, ob deine Variablen leer oder belegt sind, und wenn sie belegt sind, dann erst den entsprechenden Where-String zusammenbauen.

ungefähr so:
Code:
if ($_GET["Spielername"] != '')
{
$where = $_GET["Spielername"];
}
if ($_GET["Allianz"] != '')
{
  if ($where != '')
  {
    $where .= ' AND '.$_GET["Allianz"];
  }
  else
  {
    $where = $_GET["Allianz"];
  }
}
if ($_GET["Koordinaten"] != '')
{
  if ($where != '')
  {
    $where .= ' AND '.$_GET["Koordinaten"];
  }
  else
  {
    $where = $_GET["Koordinaten"];
  }
}
ungetestet, aber ungefähr so müsste es zumindest gehen.
Johannes M.
.
  Mit Zitat antworten Zitat
Benutzerbild von Ultimator
Ultimator

Registriert seit: 17. Feb 2004
Ort: Coburg
1.860 Beiträge
 
FreePascal / Lazarus
 
#4

Re: [PHP, mySQL] Formular und Query formulieren

  Alt 15. Jul 2006, 17:02
Danke, hat wunderbar geklappt
Ich musste halt noch anpassen, dass auch der Feldname mitgeschrieben wird, etwa so:
Code:
if ($_GET["SpielerName"] != "")
 { 
  $where = "Spielername=\"" . $_GET["SpielerName"] . "\"";
 }
Julian J. Pracht
  Mit Zitat antworten Zitat
Benutzerbild von freak4fun
freak4fun

Registriert seit: 22. Sep 2004
Ort: Hannover
1.807 Beiträge
 
Delphi 10.2 Tokyo Starter
 
#5

Re: [PHP, mySQL] Formular und Query formulieren

  Alt 15. Jul 2006, 17:47
Und immer an die Sicherheit denken.

Zitat:
Feld1=$_GET["Spielername"]
GET-Variablen immer erst überprüfen, denn sie sind böse!

MfG
freak
Christian
IT: Schließen Sie bitte das Fenster. User: Die Tür auch?
i++; // zaehler i um 1 erhoehen
  Mit Zitat antworten Zitat
monta

Registriert seit: 18. Okt 2004
Ort: Dresden
141 Beiträge
 
#6

Re: [PHP, mySQL] Formular und Query formulieren

  Alt 15. Jul 2006, 19:42
Zitat von Ultimator:
Danke, hat wunderbar geklappt
Ich musste halt noch anpassen, dass auch der Feldname mitgeschrieben wird, etwa so:
Code:
if ($_GET["SpielerName"] != "")
 { 
  $where = "Spielername=\"" . $_GET["SpielerName"] . "\"";
 }
upps, das hatte ich vergessen, aber klappt ja.
Johannes M.
.
  Mit Zitat antworten Zitat
Antwort Antwort


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 aus

Gehe zu:

Impressum · AGB · Datenschutz · Nach oben
Alle Zeitangaben in WEZ +1. Es ist jetzt 05:55 Uhr.
Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz